diff options
author | Jakub Kicinski <kuba@kernel.org> | 2024-02-06 17:18:24 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-02-23 09:12:31 +0100 |
commit | 727cdd2f3dca2dd0528e7b2b711cb8529b1bea20 (patch) | |
tree | e9cea4925f0f3c6bbfd0aa1182f2c97004bd2651 /net | |
parent | 20b4ed034872b4d024b26e2bc1092c3f80e5db96 (diff) | |
download | linux-727cdd2f3dca2dd0528e7b2b711cb8529b1bea20.tar.gz |
net: tls: fix returned read length with async decrypt
[ Upstream commit ac437a51ce662364062f704e321227f6728e6adc ]
We double count async, non-zc rx data. The previous fix was
lucky because if we fully zc async_copy_bytes is 0 so we add 0.
Decrypted already has all the bytes we handled, in all cases.
We don't have to adjust anything, delete the erroneous line.
Fixes: 4d42cd6bc2ac ("tls: rx: fix return value for async crypto")
Co-developed-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/tls/tls_sw.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/net/tls/tls_sw.c b/net/tls/tls_sw.c index d651c50746a8bb..09d258bb2df751 100644 --- a/net/tls/tls_sw.c +++ b/net/tls/tls_sw.c @@ -2202,7 +2202,6 @@ recv_end: else err = process_rx_list(ctx, msg, &control, 0, async_copy_bytes, is_peek); - decrypted += max(err, 0); } copied += decrypted; |