diff options
author | paul <paul> | 2005-01-24 09:05:27 +0000 |
---|---|---|
committer | paul <paul> | 2005-01-24 09:05:27 +0000 |
commit | c15cb24241277db9fb4102ddc712dc3297f16d1f (patch) | |
tree | b7e9eb47f5b8953c82b55732a9428813a238c5df /zebra/rt_netlink.c | |
parent | 13bfca7a1059a73a836f4813170f296a82266211 (diff) |
2005-01-24 Martin Pot <mpot at martybugs.net>
* zebra/rt_netlink.c: ignore wireless newlink netlink messages.
Diffstat (limited to 'zebra/rt_netlink.c')
-rw-r--r-- | zebra/rt_netlink.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c index c636a399..f5903a63 100644 --- a/zebra/rt_netlink.c +++ b/zebra/rt_netlink.c @@ -480,6 +480,15 @@ netlink_interface (struct sockaddr_nl *snl, struct nlmsghdr *h) /* Looking up interface name. */ memset (tb, 0, sizeof tb); netlink_parse_rtattr (tb, IFLA_MAX, IFLA_RTA (ifi), len); + + /* check for wireless messages to ignore */ + if ((tb[IFLA_WIRELESS] != NULL) && (ifi->ifi_change == 0)) + { + if (IS_ZEBRA_DEBUG_KERNEL) + zlog_debug ("%s: ignoring IFLA_WIRELESS message", __func__); + return 0; + } + if (tb[IFLA_IFNAME] == NULL) return -1; name = (char *) RTA_DATA (tb[IFLA_IFNAME]); @@ -938,6 +947,15 @@ netlink_link_change (struct sockaddr_nl *snl, struct nlmsghdr *h) /* Looking up interface name. */ memset (tb, 0, sizeof tb); netlink_parse_rtattr (tb, IFLA_MAX, IFLA_RTA (ifi), len); + + /* check for wireless messages to ignore */ + if ((tb[IFLA_WIRELESS] != NULL) && (ifi->ifi_change == 0)) + { + if (IS_ZEBRA_DEBUG_KERNEL) + zlog_debug ("%s: ignoring IFLA_WIRELESS message", __func__); + return 0; + } + if (tb[IFLA_IFNAME] == NULL) return -1; name = (char *) RTA_DATA (tb[IFLA_IFNAME]); |