diff options
author | Sabrina Dubroca <sd@queasysnail.net> | 2025-04-09 15:59:56 +0200 |
---|---|---|
committer | Steffen Klassert <steffen.klassert@secunet.com> | 2025-04-14 11:58:50 +0200 |
commit | 63c1f19a3be3169e51a5812d22a6d0c879414076 (patch) | |
tree | 066e3caa06dad8a706f7a1e4652710422f68fcde /net/xfrm | |
parent | cfe82469a00f0c0983bf4652de3a2972637dfc56 (diff) |
espintcp: fix skb leaks
A few error paths are missing a kfree_skb.
Fixes: e27cca96cd68 ("xfrm: add espintcp (RFC 8229)")
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Diffstat (limited to 'net/xfrm')
-rw-r--r-- | net/xfrm/espintcp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/xfrm/espintcp.c b/net/xfrm/espintcp.c index fe82e2d07300..fc7a603b04f1 100644 --- a/net/xfrm/espintcp.c +++ b/net/xfrm/espintcp.c @@ -171,8 +171,10 @@ int espintcp_queue_out(struct sock *sk, struct sk_buff *skb) struct espintcp_ctx *ctx = espintcp_getctx(sk); if (skb_queue_len(&ctx->out_queue) >= - READ_ONCE(net_hotdata.max_backlog)) + READ_ONCE(net_hotdata.max_backlog)) { + kfree_skb(skb); return -ENOBUFS; + } __skb_queue_tail(&ctx->out_queue, skb); |