summaryrefslogtreecommitdiffstats
path: root/sysdep/unix/krt-iface.c
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>1999-12-16 14:06:13 +0100
committerMartin Mares <mj@ucw.cz>1999-12-16 14:06:13 +0100
commit67ece6df42b20ecc524cf3e5c14e8b541afec860 (patch)
tree4922b7aa50265895ac195ba59af184b7808533b9 /sysdep/unix/krt-iface.c
parentccdc33975648647270bf33511ec5bbab4d634634 (diff)
downloadbird-67ece6df42b20ecc524cf3e5c14e8b541afec860.tar
bird-67ece6df42b20ecc524cf3e5c14e8b541afec860.zip
Tried to clean up multicast handling. Now we don't try to guess
multicast abilities depending on definedness of symbols and use hard-wired system-dependent configuration defines instead. Please test whereever you can.
Diffstat (limited to 'sysdep/unix/krt-iface.c')
-rw-r--r--sysdep/unix/krt-iface.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sysdep/unix/krt-iface.c b/sysdep/unix/krt-iface.c
index a41b5ae..3a50e8b 100644
--- a/sysdep/unix/krt-iface.c
+++ b/sysdep/unix/krt-iface.c
@@ -102,9 +102,14 @@ scan_ifs(struct ifreq *r, int cnt)
}
if (fl & IFF_LOOPBACK)
i.flags |= IF_LOOPBACK | IF_IGNORE;
+ if (1
#ifndef CONFIG_ALL_MULTICAST
- if (fl & IFF_MULTICAST)
+ && (fl & IFF_MULTICAST)
#endif
+#ifndef CONFIG_UNNUM_MULTICAST
+ && !(i.flags & IF_UNNUMBERED)
+#endif
+ )
i.flags |= IF_MULTICAST;
a.prefix = ipa_and(a.ip, ipa_mkmask(a.pxlen));