From ec0c756d076118887be094547c493eb1c35c23fb Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Tue, 5 Oct 2010 16:18:35 +0200 Subject: Do not fire roam events based on local route changes. These kernel events are triggered on address changes, which is problematic when deleting virtual IP addresses. --- src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (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 d6fb21c58..314c1acc1 100644 --- a/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c +++ b/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c @@ -522,8 +522,9 @@ static void process_route(private_kernel_netlink_net_t *this, struct nlmsghdr *h u_int32_t rta_oif = 0; host_t *host = NULL; - /* ignore routes added by us */ - if (msg->rtm_table && msg->rtm_table == this->routing_table) + /* ignore routes added by us or in the local routing table (local addrs) */ + if (msg->rtm_table && (msg->rtm_table == this->routing_table || + msg->rtm_table == RT_TABLE_LOCAL)) { return; } -- cgit v1.2.3