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.
This commit is contained in:
Ondrej Zajicek 2015-03-31 23:59:40 +02:00
parent 2eadd36fa0
commit 16a3254c4c

View file

@ -436,6 +436,9 @@ nl_parse_link(struct nlmsghdr *h, int scan)
else else
f.flags |= IF_MULTIACCESS; /* NBMA */ f.flags |= IF_MULTIACCESS; /* NBMA */
if (fl & IFF_MULTICAST)
f.flags |= IF_MULTICAST;
ifi = if_update(&f); ifi = if_update(&f);
if (!scan) if (!scan)