From 11f468533f9917128d747abe889e75cf554cd6ba Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Mon, 12 Aug 2013 12:06:25 +0200 Subject: 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. --- src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c') 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, -- cgit v1.2.3