[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20221114110519.514538-1-weiyongjun@huaweicloud.com>
Date: Mon, 14 Nov 2022 11:05:19 +0000
From: Wei Yongjun <weiyongjun@...weicloud.com>
To: Martin Schiller <ms@....tdt.de>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Andrew Hendry <andrew.hendry@...il.com>,
Matthew Daley <mattjd@...il.com>
Cc: Wei Yongjun <weiyongjun1@...wei.com>, linux-x25@...r.kernel.org,
netdev@...r.kernel.org
Subject: [PATCH net] net/x25: Fix skb leak in x25_lapb_receive_frame()
From: Wei Yongjun <weiyongjun1@...wei.com>
x25_lapb_receive_frame() using skb_copy() to get a private copy of
skb, the new skb should be freed in the undersized/fragmented skb
error handling path. Otherwise there is a memory leak.
Fixes: cb101ed2c3c7 ("x25: Handle undersized/fragmented skbs")
Signed-off-by: Wei Yongjun <weiyongjun1@...wei.com>
---
net/x25/x25_dev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/x25/x25_dev.c b/net/x25/x25_dev.c
index 5259ef8f5242..748d8630ab58 100644
--- a/net/x25/x25_dev.c
+++ b/net/x25/x25_dev.c
@@ -117,7 +117,7 @@ int x25_lapb_receive_frame(struct sk_buff *skb, struct net_device *dev,
if (!pskb_may_pull(skb, 1)) {
x25_neigh_put(nb);
- return 0;
+ goto drop;
}
switch (skb->data[0]) {
--
2.34.1
Powered by blists - more mailing lists