ikev2: fix session re-initiate after SA expires 80/28080/1
authorFilip Tehlar <ftehlar@cisco.com>
Tue, 28 Jul 2020 07:25:08 +0000 (07:25 +0000)
committerFilip Tehlar <ftehlar@cisco.com>
Tue, 28 Jul 2020 07:25:08 +0000 (07:25 +0000)
Type: fix

Change-Id: Ie3d24b3df02d08fbb74d97f4e5ab0d79c35b0c0d
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
src/plugins/ikev2/ikev2.c
src/plugins/ikev2/ikev2_priv.h

index d8c94ff..a9e78a3 100644 (file)
@@ -537,6 +537,7 @@ ikev2_calc_keys (ikev2_sa_t * sa)
   pos += tr_prf->key_len;
 
   vec_free (keymat);
+  sa->keys_generated = 1;
 }
 
 static void
@@ -4313,7 +4314,7 @@ ikev2_mngr_process_responder_sas (ikev2_sa_t * sa)
   ikev2_main_t *km = &ikev2_main;
   vlib_main_t *vm = km->vlib_main;
 
-  if (!sa->sk_ai || !sa->sk_ar)
+  if (!sa->keys_generated)
     return 0;
 
   if (sa->liveness_retries >= km->liveness_max_retries)
index 7e40ed3..f8b0458 100644 (file)
@@ -441,6 +441,7 @@ typedef struct
 
   /* is NAT traversal mode */
   u8 natt;
+  u8 keys_generated;
 } ikev2_sa_t;