aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2014-06-23 10:26:04 +0200
committerTobias Brunner <tobias@strongswan.org>2014-10-10 09:32:41 +0200
commitf1aa18b2e841e065eacb0d2c4f17c3546912c358 (patch)
tree6cfc5ccff5c9cef09bc4d55533890f34c77866bd /src
parentb678d9e14fd63e3012eaf40f45d3a67ee3d4830f (diff)
downloadstrongswan-f1aa18b2e841e065eacb0d2c4f17c3546912c358.tar.bz2
strongswan-f1aa18b2e841e065eacb0d2c4f17c3546912c358.tar.xz
ikev2: Send retransmits using the latest known addresses
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.
Diffstat (limited to 'src')
-rw-r--r--src/libcharon/sa/ikev2/task_manager_v2.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libcharon/sa/ikev2/task_manager_v2.c b/src/libcharon/sa/ikev2/task_manager_v2.c
index 9b57d2ced..eb7df3516 100644
--- a/src/libcharon/sa/ikev2/task_manager_v2.c
+++ b/src/libcharon/sa/ikev2/task_manager_v2.c
@@ -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
{