ike-init: Ignore COOKIE payloads during rekeying
This ensures that process_i() only returns NEED_MORE due to multiple key exchanges or an INVALID_KE_PAYLOAD notify.
This commit is contained in:
@@ -1008,6 +1008,12 @@ METHOD(task_t, process_i, status_t,
|
|||||||
break;
|
break;
|
||||||
case COOKIE:
|
case COOKIE:
|
||||||
{
|
{
|
||||||
|
if (this->old_sa)
|
||||||
|
{
|
||||||
|
DBG1(DBG_IKE, "received COOKIE notify during rekeying"
|
||||||
|
", ignored");
|
||||||
|
break;
|
||||||
|
}
|
||||||
chunk_free(&this->cookie);
|
chunk_free(&this->cookie);
|
||||||
this->cookie = chunk_clone(notify->get_notification_data(notify));
|
this->cookie = chunk_clone(notify->get_notification_data(notify));
|
||||||
this->ike_sa->reset(this->ike_sa, FALSE);
|
this->ike_sa->reset(this->ike_sa, FALSE);
|
||||||
|
|||||||
Reference in New Issue
Block a user