diff options
author | Tobias Brunner <tobias@strongswan.org> | 2012-12-12 18:23:11 +0100 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2012-12-24 12:29:26 +0100 |
commit | 7d85f94165c73031e2567da762183fc28c3bbcce (patch) | |
tree | a2b7b2095e738de44977a8718ca94c226d499f91 /src/libcharon | |
parent | 30216000d3752026127c2f91470ce165ab3d3926 (diff) | |
download | strongswan-7d85f94165c73031e2567da762183fc28c3bbcce.tar.bz2 strongswan-7d85f94165c73031e2567da762183fc28c3bbcce.tar.xz |
Don't update an IKE_SA-entry's cached message ID when handling fragments
Diffstat (limited to 'src/libcharon')
-rw-r--r-- | src/libcharon/sa/ike_sa_manager.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libcharon/sa/ike_sa_manager.c b/src/libcharon/sa/ike_sa_manager.c index 031c632eb..962787647 100644 --- a/src/libcharon/sa/ike_sa_manager.c +++ b/src/libcharon/sa/ike_sa_manager.c @@ -1280,7 +1280,10 @@ METHOD(ike_sa_manager_t, checkout_by_message, ike_sa_t*, ike_id = entry->ike_sa->get_id(entry->ike_sa); entry->checked_out = TRUE; - entry->message_id = message->get_message_id(message); + if (message->get_first_payload_type(message) != FRAGMENT_V1) + { + entry->message_id = message->get_message_id(message); + } if (ike_id->get_responder_spi(ike_id) == 0) { ike_id->set_responder_spi(ike_id, id->get_responder_spi(id)); |