summaryrefslogtreecommitdiff
path: root/net/tls
diff options
context:
space:
mode:
authorBoris Pismenny <borisp@mellanox.com>2018-02-14 10:46:06 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-05-30 07:51:56 +0200
commit94203f213c1938aec35f063c411bc5a73a9b814b (patch)
treeb2607d48ae38ab0af01b19f405f2c8bea6d4bbbe /net/tls
parentcec7d77a1db83c6b9dfdac5b6963cd1cdaaacb77 (diff)
tls: retrun the correct IV in getsockopt
[ Upstream commit a1dfa6812b682eef750412dd5a90e7d38d7af068 ] Current code returns four bytes of salt followed by four bytes of IV. This patch returns all eight bytes of IV. fixes: 3c4d7559159b ("tls: kernel TLS support") Signed-off-by: Boris Pismenny <borisp@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/tls')
-rw-r--r--net/tls/tls_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/tls/tls_main.c b/net/tls/tls_main.c
index dfef930d1e50..ffb1a3a69bdd 100644
--- a/net/tls/tls_main.c
+++ b/net/tls/tls_main.c
@@ -299,7 +299,8 @@ static int do_tls_getsockopt_tx(struct sock *sk, char __user *optval,
goto out;
}
lock_sock(sk);
- memcpy(crypto_info_aes_gcm_128->iv, ctx->iv,
+ memcpy(crypto_info_aes_gcm_128->iv,
+ ctx->iv + TLS_CIPHER_AES_GCM_128_SALT_SIZE,
TLS_CIPHER_AES_GCM_128_IV_SIZE);
release_sock(sk);
if (copy_to_user(optval,