]> git.baikalelectronics.ru Git - kernel.git/commit
net: tls: Save iv in tls_rec for async crypto requests
authorDave Watson <davejwatson@fb.com>
Sun, 27 Jan 2019 00:57:38 +0000 (00:57 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 Jan 2019 07:05:55 +0000 (23:05 -0800)
commitc9523c2c08b60cdc4e1592473b7e3dac92c4f419
tree1d74f0e18976fc62c46d74b775a2a96b153dfc80
parent5e303d5e1b1eba3978112feafaf3f5fd214b4ed7
net: tls: Save iv in tls_rec for async crypto requests

aead_request_set_crypt takes an iv pointer, and we change the iv
soon after setting it.  Some async crypto algorithms don't save the iv,
so we need to save it in the tls_rec for async requests.

Found by hardcoding x64 aesni to use async crypto manager (to test the async
codepath), however I don't think this combination can happen in the wild.
Presumably other hardware offloads will need this fix, but there have been
no user reports.

Fixes: b574142da9d53 ("Add support for async encryption of records...")
Signed-off-by: Dave Watson <davejwatson@fb.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/tls.h
net/tls/tls_sw.c