From: Thiruvadi rajaraman <trajara...@mvista.com> Updated the xfrm state update process to update the Authendication and Encryption keys.
Signed-off-by: Thiruvadi rajaraman <trajara...@mvista.com> --- net/xfrm/xfrm_state.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c index 419bf5d..6b15447 100644 --- a/net/xfrm/xfrm_state.c +++ b/net/xfrm/xfrm_state.c @@ -1388,6 +1388,12 @@ int xfrm_state_update(struct xfrm_state *x) memcpy(&x1->lft, &x->lft, sizeof(x1->lft)); x1->km.dying = 0; + /* To update Authendication and Encryption keys */ + x1->aalg = kmemdup(x->aalg, xfrm_alg_auth_len(x->aalg), + GFP_KERNEL); + x1->ealg = kmemdup(x->ealg, xfrm_alg_len(x->ealg), + GFP_KERNEL); + tasklet_hrtimer_start(&x1->mtimer, ktime_set(1, 0), HRTIMER_MODE_REL); if (x1->curlft.use_time) xfrm_state_check_expire(x1); -- 1.9.1