ikev2: Send retransmits using the latest known addresses
authorTobias Brunner <tobias@strongswan.org>
Mon, 23 Jun 2014 08:26:04 +0000 (10:26 +0200)
committerTobias Brunner <tobias@strongswan.org>
Fri, 10 Oct 2014 07:32:41 +0000 (09:32 +0200)
For instance, if a DPD exchange is initiated by the gateway when a
mobile client is roaming and it then gets a new IP address and sends
an address update via MOBIKE, the DPD retransmits would still be sent
to the old address and the SA would eventually get closed.

src/libcharon/sa/ikev2/task_manager_v2.c

index 9b57d2c..eb7df35 100644 (file)
@@ -348,7 +348,9 @@ METHOD(task_manager_t, retransmit, status_t,
                        }
                        if (!mobike)
                        {
-                               send_packets(this, this->initiating.packets, NULL, NULL);
+                               send_packets(this, this->initiating.packets,
+                                                        this->ike_sa->get_my_host(this->ike_sa),
+                                                        this->ike_sa->get_other_host(this->ike_sa));
                        }
                        else
                        {