summaryrefslogtreecommitdiffstats
path: root/sysdep/cf
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/cf
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/cf')
-rw-r--r--sysdep/cf/README8
-rw-r--r--sysdep/cf/linux-20.h5
-rw-r--r--sysdep/cf/linux-21.h5
-rw-r--r--sysdep/cf/linux-22.h3
4 files changed, 17 insertions, 4 deletions
diff --git a/sysdep/cf/README b/sysdep/cf/README
index b1ed868..a344275 100644
--- a/sysdep/cf/README
+++ b/sysdep/cf/README
@@ -2,7 +2,6 @@ Available configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CONFIG_AUTO_ROUTES Device routes are added automagically by the kernel
-CONFIG_ALL_MULTICAST All devices support multicasting (i.e., ignore IFF_MULTICAST)
CONFIG_SELF_CONSCIOUS We're able to recognize whether route was installed by us
CONFIG_MULTIPLE_TABLES The kernel supports multiple routing tables
CONFIG_ALL_TABLES_AT_ONCE Kernel scanner wants to process all tables at once
@@ -10,3 +9,10 @@ CONFIG_ALL_TABLES_AT_ONCE Kernel scanner wants to process all tables at once
CONFIG_UNIX_IFACE Use Unix interface scanner
CONFIG_UNIX_SET Use Unix route setting
CONFIG_LINUX_SCAN Use Linux /proc/net/route scanner
+
+CONFIG_ALL_MULTICAST krt-iface: All devices support multicasting (i.e., ignore IFF_MULTICAST)
+CONFIG_UNNUM_MULTICAST krt-iface: We support multicasts on unnumbered PtP devices
+
+CONFIG_LINUX_MC_MREQN Linux: Use struct mreqn for multicasting
+CONFIG_LINUX_MC_MREQ Linux: Use struct mreq
+CONFIG_LINUX_MC_MREQ_BIND Linux: Use struct mreq and SO_BINDTODEVICE
diff --git a/sysdep/cf/linux-20.h b/sysdep/cf/linux-20.h
index 5fc440c..5c6a237 100644
--- a/sysdep/cf/linux-20.h
+++ b/sysdep/cf/linux-20.h
@@ -7,7 +7,6 @@
*/
#undef CONFIG_AUTO_ROUTES
-#define CONFIG_ALL_MULTICAST
#undef CONFIG_SELF_CONSCIOUS
#undef CONFIG_MULTIPLE_TABLES
@@ -15,6 +14,10 @@
#define CONFIG_UNIX_SET
#define CONFIG_LINUX_SCAN
+#define CONFIG_LINUX_MC_MREQ_BIND
+#define CONFIG_ALL_MULTICAST
+#define CONFIG_UNNUM_MULTICAST
+
/*
Link: sysdep/linux
Link: sysdep/unix
diff --git a/sysdep/cf/linux-21.h b/sysdep/cf/linux-21.h
index 34e8183..17882c8 100644
--- a/sysdep/cf/linux-21.h
+++ b/sysdep/cf/linux-21.h
@@ -7,7 +7,6 @@
*/
#define CONFIG_AUTO_ROUTES
-#define CONFIG_ALL_MULTICAST
#undef CONFIG_SELF_CONSCIOUS
#undef CONFIG_MULTIPLE_TABLES
@@ -15,6 +14,10 @@
#define CONFIG_UNIX_SET
#define CONFIG_LINUX_SCAN
+#define CONFIG_LINUX_MC_MREQN
+#define CONFIG_ALL_MULTICAST
+#define CONFIG_UNNUM_MULTICAST
+
/*
Link: sysdep/linux
Link: sysdep/unix
diff --git a/sysdep/cf/linux-22.h b/sysdep/cf/linux-22.h
index cd5090f..52a4681 100644
--- a/sysdep/cf/linux-22.h
+++ b/sysdep/cf/linux-22.h
@@ -7,11 +7,12 @@
*/
#define CONFIG_AUTO_ROUTES
-#define CONFIG_ALL_MULTICAST
#define CONFIG_SELF_CONSCIOUS
#define CONFIG_MULTIPLE_TABLES
#define CONFIG_ALL_TABLES_AT_ONCE
+#define CONFIG_LINUX_MC_MREQN
+
/*
Link: sysdep/linux/netlink
Link: sysdep/linux