diff options
author | Qiushi Wu <wu000273@umn.edu> | 2020-05-22 20:45:18 +0200 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2020-05-23 01:35:46 +0200 |
commit | f45d01f4f30b53c3a0a1c6c1c154acb7ff74ab9f (patch) | |
tree | ef99f5b618065716ff017a5ced9f8402721d0737 /net | |
parent | rxrpc: Fix a warning (diff) | |
download | linux-f45d01f4f30b53c3a0a1c6c1c154acb7ff74ab9f.tar.xz linux-f45d01f4f30b53c3a0a1c6c1c154acb7ff74ab9f.zip |
rxrpc: Fix a memory leak in rxkad_verify_response()
A ticket was not released after a call of the function
"rxkad_decrypt_ticket" failed. Thus replace the jump target
"temporary_error_free_resp" by "temporary_error_free_ticket".
Fixes: 8c2f826dc3631 ("rxrpc: Don't put crypto buffers on the stack")
Signed-off-by: Qiushi Wu <wu000273@umn.edu>
Signed-off-by: David Howells <dhowells@redhat.com>
cc: Markus Elfring <Markus.Elfring@web.de>
Diffstat (limited to 'net')
-rw-r--r-- | net/rxrpc/rxkad.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/net/rxrpc/rxkad.c b/net/rxrpc/rxkad.c index 098f1f9ec53b..52a24d4ef5d8 100644 --- a/net/rxrpc/rxkad.c +++ b/net/rxrpc/rxkad.c @@ -1148,7 +1148,7 @@ static int rxkad_verify_response(struct rxrpc_connection *conn, ret = rxkad_decrypt_ticket(conn, skb, ticket, ticket_len, &session_key, &expiry, _abort_code); if (ret < 0) - goto temporary_error_free_resp; + goto temporary_error_free_ticket; /* use the session key from inside the ticket to decrypt the * response */ @@ -1230,7 +1230,6 @@ protocol_error: 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 |