]> git.dujemihanovic.xyz Git - linux.git/commitdiff
ipv4: ip_gre: fix return value check in erspan_xmit()
authorYuanjun Gong <ruc_gongyuanjun@163.com>
Mon, 17 Jul 2023 14:49:18 +0000 (22:49 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Jul 2023 11:27:09 +0000 (12:27 +0100)
goto free_skb if an unexpected result is returned by pskb_tirm()
in erspan_xmit().

Signed-off-by: Yuanjun Gong <ruc_gongyuanjun@163.com>
Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ip_gre.c

index 914cc941af551e09b8b730b3a21f0466d2f65bea..22a26d1d29a09d234f18ce3b0f329e5047c0c046 100644 (file)
@@ -690,7 +690,8 @@ static netdev_tx_t erspan_xmit(struct sk_buff *skb,
                goto free_skb;
 
        if (skb->len > dev->mtu + dev->hard_header_len) {
-               pskb_trim(skb, dev->mtu + dev->hard_header_len);
+               if (pskb_trim(skb, dev->mtu + dev->hard_header_len))
+                       goto free_skb;
                truncate = true;
        }