mirror of
https://github.com/strongswan/strongswan.git
synced 2025-10-10 00:00:19 -04:00
ikev1: Queue INFORMATIONAL request if AM is not complete yet
This commit is contained in:
parent
3805880c8a
commit
1c8dfa30d0
@ -1387,14 +1387,21 @@ METHOD(task_manager_t, process_message, status_t,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* drop XAuth/Mode Config/Quick Mode messages until we received the last
|
/* drop XAuth/Mode Config/Quick Mode messages until we received the last
|
||||||
* Aggressive Mode message */
|
* Aggressive Mode message. since Informational messages are not
|
||||||
if (have_aggressive_mode_task(this) &&
|
* retransmitted we queue them. */
|
||||||
msg->get_exchange_type(msg) != AGGRESSIVE)
|
if (have_aggressive_mode_task(this))
|
||||||
|
{
|
||||||
|
if (msg->get_exchange_type(msg) == INFORMATIONAL_V1)
|
||||||
|
{
|
||||||
|
return queue_message(this, msg);
|
||||||
|
}
|
||||||
|
else if (msg->get_exchange_type(msg) != AGGRESSIVE)
|
||||||
{
|
{
|
||||||
DBG1(DBG_IKE, "ignoring %N request while phase 1 is incomplete",
|
DBG1(DBG_IKE, "ignoring %N request while phase 1 is incomplete",
|
||||||
exchange_type_names, msg->get_exchange_type(msg));
|
exchange_type_names, msg->get_exchange_type(msg));
|
||||||
return FAILED;
|
return FAILED;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* queue XAuth/Mode Config messages unless the Main Mode exchange we
|
/* queue XAuth/Mode Config messages unless the Main Mode exchange we
|
||||||
* initiated is complete */
|
* initiated is complete */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user