ikev2: Add a new state to track rekeyed IKE_SAs
This makes handling such IKE_SAs more specifically compared to keeping them in state IKE_CONNECTING or IKE_ESTABLISHED (which we did when we lost a collision - even triggering the ike_updown event), or using IKE_REKEYING for them, which would also be ambiguous. For instance, we can now reject anything but DELETES for such SAs.
This commit is contained in:
@@ -1415,7 +1415,8 @@ METHOD(ike_sa_manager_t, checkout_by_config, ike_sa_t*,
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (entry->ike_sa->get_state(entry->ike_sa) == IKE_DELETING)
|
||||
if (entry->ike_sa->get_state(entry->ike_sa) == IKE_DELETING ||
|
||||
entry->ike_sa->get_state(entry->ike_sa) == IKE_REKEYED)
|
||||
{ /* skip IKE_SAs which are not usable, wake other waiting threads */
|
||||
entry->condvar->signal(entry->condvar);
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user