ipv4: ip_gre: fix return value check in erspan_fb_xmit()
authorYuanjun Gong <ruc_gongyuanjun@163.com>
Mon, 17 Jul 2023 14:49:02 +0000 (22:49 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Jul 2023 11:27:09 +0000 (12:27 +0100)
goto err_free_skb if an unexpected result is returned by pskb_tirm()
in erspan_fb_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 81a1cce..914cc94 100644 (file)
@@ -548,7 +548,8 @@ static void erspan_fb_xmit(struct sk_buff *skb, struct net_device *dev)
                goto err_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 err_free_skb;
                truncate = true;
        }