From: Sowmini Varadhan Date: Mon, 3 Sep 2018 11:36:53 +0000 (-0700) Subject: xfrm: reset crypto_done when iterating over multiple input xfrms X-Git-Tag: v4.19-rc7~28^2~22^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=782710e333a526780d65918d669cb96646983ba2;p=thirdparty%2Flinux.git xfrm: reset crypto_done when iterating over multiple input xfrms We only support one offloaded xfrm (we do not have devices that can handle more than one offload), so reset crypto_done in xfrm_input() when iterating over multiple transforms in xfrm_input, so that we can invoke the appropriate x->type->input for the non-offloaded transforms Fixes: d77e38e612a0 ("xfrm: Add an IPsec hardware offloading API") Signed-off-by: Sowmini Varadhan Signed-off-by: Steffen Klassert --- diff --git a/net/xfrm/xfrm_input.c b/net/xfrm/xfrm_input.c index 352abca2605f6..86f5afbd0a0c8 100644 --- a/net/xfrm/xfrm_input.c +++ b/net/xfrm/xfrm_input.c @@ -453,6 +453,7 @@ resume: XFRM_INC_STATS(net, LINUX_MIB_XFRMINHDRERROR); goto drop; } + crypto_done = false; } while (!err); err = xfrm_rcv_cb(skb, family, x->type->proto, 0);