]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: sctp: sctp_setsockopt_auth_key: use kzfree instead of kfree
authorDaniel Borkmann <dborkman@redhat.com>
Fri, 8 Feb 2013 03:04:34 +0000 (03:04 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 14 Feb 2013 18:48:33 +0000 (10:48 -0800)
[ Upstream commit 6ba542a291a5e558603ac51cda9bded347ce7627 ]

In sctp_setsockopt_auth_key, we create a temporary copy of the user
passed shared auth key for the endpoint or association and after
internal setup, we free it right away. Since it's sensitive data, we
should zero out the key before returning the memory back to the
allocator. Thus, use kzfree instead of kfree, just as we do in
sctp_auth_key_put().

Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/sctp/socket.c

index 406d957d08fbcb7d9cb532a8143d363c277c3ec8..9261d9a16d54cfcc4f24f171cecd33d91c6c1158 100644 (file)
@@ -3388,7 +3388,7 @@ static int sctp_setsockopt_auth_key(struct sock *sk,
 
        ret = sctp_auth_set_key(sctp_sk(sk)->ep, asoc, authkey);
 out:
-       kfree(authkey);
+       kzfree(authkey);
        return ret;
 }