diff options
author | Martin Willi <martin@revosec.ch> | 2013-03-11 11:30:47 +0100 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2013-03-11 11:30:47 +0100 |
commit | 8f727d8007510839a17796b53afe090a8955e23d (patch) | |
tree | ec25cc27eeb9a398a8e6369d0f3f1cbf7e00250e /src | |
parent | 0235914d2fa6896120ca084ef0df241e9ad7798c (diff) | |
download | strongswan-8f727d8007510839a17796b53afe090a8955e23d.tar.bz2 strongswan-8f727d8007510839a17796b53afe090a8955e23d.tar.xz |
Clean up IKE_SA state if IKE_SA_INIT request does not have message ID 0
Diffstat (limited to 'src')
-rw-r--r-- | src/libcharon/sa/ikev2/task_manager_v2.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libcharon/sa/ikev2/task_manager_v2.c b/src/libcharon/sa/ikev2/task_manager_v2.c index 29d8d830e..a53c06bf7 100644 --- a/src/libcharon/sa/ikev2/task_manager_v2.c +++ b/src/libcharon/sa/ikev2/task_manager_v2.c @@ -1175,6 +1175,10 @@ METHOD(task_manager_t, process_message, status_t, { DBG1(DBG_IKE, "received message ID %d, expected %d. Ignored", mid, this->responding.mid); + if (msg->get_exchange_type(msg) == IKE_SA_INIT) + { /* clean up IKE_SA state if IKE_SA_INIT has invalid msg ID */ + return DESTROY_ME; + } } } else |