Message ID | 159854374644.1432629.4927711289531557914.stgit@warthog.procyon.org.uk |
---|---|
State | Accepted |
Delegated to: | David Miller |
Headers | show |
Series | [net] rxrpc: Fix memory leak in rxkad_verify_response() | expand |
From: David Howells <dhowells@redhat.com> Date: Thu, 27 Aug 2020 16:55:46 +0100 > From: Dinghao Liu <dinghao.liu@zju.edu.cn> > > Fix a memory leak in rxkad_verify_response() whereby the response buffer > doesn't get freed if we fail to allocate a ticket buffer. > > Fixes: ef68622da9cc ("rxrpc: Handle temporary errors better in rxkad security") > Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> > Signed-off-by: David Howells <dhowells@redhat.com> Applied, thank you.
diff --git a/net/rxrpc/rxkad.c b/net/rxrpc/rxkad.c index 52a24d4ef5d8..e08130e5746b 100644 --- a/net/rxrpc/rxkad.c +++ b/net/rxrpc/rxkad.c @@ -1137,7 +1137,7 @@ static int rxkad_verify_response(struct rxrpc_connection *conn, ret = -ENOMEM; ticket = kmalloc(ticket_len, GFP_NOFS); if (!ticket) - goto temporary_error; + goto temporary_error_free_resp; eproto = tracepoint_string("rxkad_tkt_short"); abort_code = RXKADPACKETSHORT; @@ -1230,6 +1230,7 @@ static int rxkad_verify_response(struct rxrpc_connection *conn, temporary_error_free_ticket: kfree(ticket); +temporary_error_free_resp: kfree(response); temporary_error: /* Ignore the response packet if we got a temporary error such as