From 16a3254c4cb592e7cfa3aea744e9fd58665d6367 Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Tue, 31 Mar 2015 23:59:40 +0200 Subject: [PATCH] Understand IFF_MULTICAST flag on ifaces in Linux Unfortunately, some interfaces support multicast but do not have this flag set, so we use it only as a positive hint. Thanks to Clint Armstrong for noticing the problem. --- sysdep/linux/netlink.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sysdep/linux/netlink.c b/sysdep/linux/netlink.c index 860c8601..48dd8bab 100644 --- a/sysdep/linux/netlink.c +++ b/sysdep/linux/netlink.c @@ -436,6 +436,9 @@ nl_parse_link(struct nlmsghdr *h, int scan) else f.flags |= IF_MULTIACCESS; /* NBMA */ + if (fl & IFF_MULTICAST) + f.flags |= IF_MULTICAST; + ifi = if_update(&f); if (!scan)