tls: clear key material from kernel memory when do_tls_setsockopt_conf fails
authorSabrina Dubroca <sd@queasysnail.net>
Wed, 12 Sep 2018 15:44:43 +0000 (17:44 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 13 Sep 2018 19:03:47 +0000 (12:03 -0700)
Fixes: 3c4d7559159b ("tls: kernel TLS support")
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/tls/tls_main.c

index 737b3865be1b329303e35e7d413da20822d77922..523622dc74f8b969113b0435b39f5d0f3d070304 100644 (file)
@@ -509,7 +509,7 @@ static int do_tls_setsockopt_conf(struct sock *sk, char __user *optval,
        goto out;
 
 err_crypto_info:
-       memset(crypto_info, 0, sizeof(*crypto_info));
+       memzero_explicit(crypto_info, sizeof(union tls_crypto_context));
 out:
        return rc;
 }