Linux kernel headers violate RFC2553

From: Felix von Leitner (
Date: Fri Jun 08 2001 - 12:57:19 EST

glibc works around this, but the diet libc uses the kernel headers and
thus exports the wrong API to user land.

Here is what RFC2553 mandates:

   struct ipv6_mreq {
       struct in6_addr ipv6mr_multiaddr; /* IPv6 multicast addr */
       unsigned int ipv6mr_interface; /* interface index */

...and here is what include/linux/in6.h declares:

  struct ipv6_mreq {
          /* IPv6 multicast address of group */
          struct in6_addr ipv6mr_multiaddr;

          /* local IPv6 address of interface */
          int ipv6mr_ifindex;

Note the ipv6mr_ifindex instead of the correct ipv6mr_interface.

This wrong name is only used twice in net/ipv6/ipv6_sockglue.c, so it should be
trivial to fix.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Fri Jun 15 2001 - 21:00:09 EST