From: Hangyu Hua Date: Wed, 29 Jun 2022 06:34:18 +0000 (+0800) Subject: net: tipc: fix possible refcount leak in tipc_sk_create() X-Git-Tag: v4.9.324~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=638fa20b618b2bbcf86da71231624cc82121a036;p=thirdparty%2Fkernel%2Fstable.git net: tipc: fix possible refcount leak in tipc_sk_create() [ Upstream commit 00aff3590fc0a73bddd3b743863c14e76fd35c0c ] Free sk in case tipc_sk_insert() fails. Signed-off-by: Hangyu Hua Reviewed-by: Tung Nguyen Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- diff --git a/net/tipc/socket.c b/net/tipc/socket.c index 9f39276e5d4e2..1b35163680576 100644 --- a/net/tipc/socket.c +++ b/net/tipc/socket.c @@ -341,6 +341,7 @@ static int tipc_sk_create(struct net *net, struct socket *sock, sock->state = state; sock_init_data(sock, sk); if (tipc_sk_insert(tsk)) { + sk_free(sk); pr_warn("Socket create failed; port number exhausted\n"); return -EINVAL; }