Re: [PATCH] ecryptfs: Fix memory leakage in keystore.c

From: Tyler Hicks
Date: Wed Oct 16 2013 - 21:11:13 EST


On 2013-10-11 16:49:16, Geyslan G. Bem wrote:
> In 'decrypt_pki_encrypted_session_key' function:
>
> Initializes 'payload' pointer and releases it on exit.
>
> Signed-off-by: Geyslan G. Bem <geyslan@xxxxxxxxx>
> ---

Thanks! This one was easy to verify by auditing the code, but I was also
able to verify the leak with kmemleak.

I've targeted it for stable and pushed it to the eCryptfs next branch.

Tyler

> fs/ecryptfs/keystore.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ecryptfs/keystore.c b/fs/ecryptfs/keystore.c
> index 7d52806..4725a07 100644
> --- a/fs/ecryptfs/keystore.c
> +++ b/fs/ecryptfs/keystore.c
> @@ -1149,7 +1149,7 @@ decrypt_pki_encrypted_session_key(struct ecryptfs_auth_tok *auth_tok,
> struct ecryptfs_msg_ctx *msg_ctx;
> struct ecryptfs_message *msg = NULL;
> char *auth_tok_sig;
> - char *payload;
> + char *payload = NULL;
> size_t payload_len = 0;
> int rc;
>
> @@ -1203,6 +1203,7 @@ decrypt_pki_encrypted_session_key(struct ecryptfs_auth_tok *auth_tok,
> }
> out:
> kfree(msg);
> + kfree(payload);
> return rc;
> }
>
> --
> 1.8.4
>

Attachment: signature.asc
Description: Digital signature