diff options
author | Tobias Brunner <tobias@strongswan.org> | 2013-08-12 12:06:25 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2013-08-12 12:08:23 +0200 |
commit | 11f468533f9917128d747abe889e75cf554cd6ba (patch) | |
tree | cab508a37c9a28b2207d75903f77c945232ed6db /src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c | |
parent | 55da01f348fcc695b931a2c5061939a583e06c00 (diff) | |
download | strongswan-11f468533f9917128d747abe889e75cf554cd6ba.tar.bz2 strongswan-11f468533f9917128d747abe889e75cf554cd6ba.tar.xz |
kernel-netlink,pfroute: Properly update address flag within ROAM_DELAY
77d4a02 and 55da01f only updated the address flag when a job was created,
which obviously had the same limitation as the old code.
Fixes #374.
Diffstat (limited to 'src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c')
-rw-r--r-- | src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c b/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c index 89fb076ad..43bcb677b 100644 --- a/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c +++ b/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c @@ -729,6 +729,7 @@ static void fire_roam_event(private_kernel_netlink_net_t *this, bool address) time_monotonic(&now); this->roam_lock->lock(this->roam_lock); + this->roam_address |= address; if (!timercmp(&now, &this->next_roam, >)) { this->roam_lock->unlock(this->roam_lock); @@ -736,7 +737,6 @@ static void fire_roam_event(private_kernel_netlink_net_t *this, bool address) } timeval_add_ms(&now, ROAM_DELAY); this->next_roam = now; - this->roam_address |= address; this->roam_lock->unlock(this->roam_lock); job = (job_t*)callback_job_create((callback_job_cb_t)roam_event, |