From: Antony Antony Date: Thu, 7 Dec 2017 20:54:27 +0000 (+0100) Subject: xfrm: fix xfrm_do_migrate() with AEAD e.g(AES-GCM) X-Git-Tag: v5.15~9741^2~7^2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=75bf50f4aaa1c78d769d854ab3d975884909e4fb;p=platform%2Fkernel%2Flinux-starfive.git xfrm: fix xfrm_do_migrate() with AEAD e.g(AES-GCM) copy geniv when cloning the xfrm state. x->geniv was not copied to the new state and migration would fail. xfrm_do_migrate .. xfrm_state_clone() .. .. esp_init_aead() crypto_alloc_aead() crypto_alloc_tfm() crypto_find_alg() return EAGAIN and failed Signed-off-by: Antony Antony Signed-off-by: Steffen Klassert --- diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c index 1f5cee2..88d0a563 100644 --- a/net/xfrm/xfrm_state.c +++ b/net/xfrm/xfrm_state.c @@ -1344,6 +1344,7 @@ static struct xfrm_state *xfrm_state_clone(struct xfrm_state *orig, if (orig->aead) { x->aead = xfrm_algo_aead_clone(orig->aead); + x->geniv = orig->geniv; if (!x->aead) goto error; }