]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
IPv6 compiles with glibc 2.1.
authorMartin Mares <mj@ucw.cz>
Thu, 20 Apr 2000 23:05:41 +0000 (23:05 +0000)
committerMartin Mares <mj@ucw.cz>
Thu, 20 Apr 2000 23:05:41 +0000 (23:05 +0000)
sysdep/linux/sysio.h
sysdep/unix/io.c

index 58fb977994109a6725530c5d3081823b73e310c5..0e8ee3dd4f55bc7a4cf222a25a9fd0224ee70cf9 100644 (file)
@@ -1,14 +1,16 @@
 /*
  *     BIRD Internet Routing Daemon -- Linux Multicasting and Network Includes
  *
- *     (c) 1998--1999 Martin Mares <mj@ucw.cz>
+ *     (c) 1998--2000 Martin Mares <mj@ucw.cz>
  *
  *     Can be freely distributed and used under the terms of the GNU GPL.
  */
 
 #ifdef IPV6
 
-#include <linux/in6.h>                 /* FIXMEv6: glibc variant? */
+#ifdef CONFIG_IPV6_GLIBC_20
+#include <linux/in6.h>
+#endif
 
 static inline void
 set_inaddr(struct in6_addr *ia, ip_addr a)
index 7857a272eddb33c26ce5ea39bffce855dc8f5b5c..aff144b6a4a7984aca696435dad03b88b2df508e 100644 (file)
@@ -1,7 +1,7 @@
 /*
  *     BIRD Internet Routing Daemon -- Unix I/O
  *
- *     (c) 1998--1999 Martin Mares <mj@ucw.cz>
+ *     (c) 1998--2000 Martin Mares <mj@ucw.cz>
  *
  *     Can be freely distributed and used under the terms of the GNU GPL.
  */
@@ -585,7 +585,11 @@ sk_open(sock *s)
          {
            struct ipv6_mreq mreq;
            set_inaddr(&mreq.ipv6mr_multiaddr, s->daddr);
+#ifdef CONFIG_IPV6_GLIBC_20
            mreq.ipv6mr_ifindex = s->iface->index;
+#else
+           mreq.ipv6mr_interface = s->iface->index;
+#endif
            if (setsockopt(fd, SOL_IPV6, IPV6_ADD_MEMBERSHIP, &mreq, sizeof(mreq)) < 0)
              ERR("IPV6_ADD_MEMBERSHIP");
          }