This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug network/20214] New: Linux header sync with linux/in6.h and ipv6.h again.


https://sourceware.org/bugzilla/show_bug.cgi?id=20214

            Bug ID: 20214
           Summary: Linux header sync with linux/in6.h and ipv6.h again.
           Product: glibc
           Version: 2.24
            Status: NEW
          Severity: normal
          Priority: P2
         Component: network
          Assignee: unassigned at sourceware dot org
          Reporter: carlos at redhat dot com
  Target Milestone: ---

In upstream kernel 56c176c9 the _UAPI prefix was stripped and
this broke our synchronized headers again. We now need to check
for _LINUX_IN6_H and _IPV6_H, and keep checking the old versions
of the header guard checks for maximum backwards compatibility
with older Linux headers (the history is actually a bit muddled
here and it appears upstream linus kernel broke this 10 months
*before* our fix was ever applied to glibc, but without glibc
testing we didn't notice and distro kernels have their own
testing to fix this).

* Standard set of failures.
~~~
../inet/netinet/in.h:101:5: error: expected identifier before numeric constant
IPPROTO_HOPOPTS = 0, /* IPv6 Hop-by-Hop options. */
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:102:0: error: "IPPROTO_HOPOPTS" redefined [-Werror]
#define IPPROTO_HOPOPTS IPPROTO_HOPOPTS
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:131:0: note: this is the
location of the previous definition
#define IPPROTO_HOPOPTS 0 /* IPv6 hop-by-hop options */
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:104:0: error: "IPPROTO_ROUTING" redefined [-Werror]
#define IPPROTO_ROUTING IPPROTO_ROUTING
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:132:0: note: this is the
location of the previous definition
#define IPPROTO_ROUTING 43 /* IPv6 routing header */
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:106:0: error: "IPPROTO_FRAGMENT" redefined [-Werror]
#define IPPROTO_FRAGMENT IPPROTO_FRAGMENT
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:133:0: note: this is the
location of the previous definition
#define IPPROTO_FRAGMENT 44 /* IPv6 fragmentation header */
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:108:0: error: "IPPROTO_ICMPV6" redefined [-Werror]
#define IPPROTO_ICMPV6 IPPROTO_ICMPV6
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:134:0: note: this is the
location of the previous definition
#define IPPROTO_ICMPV6 58 /* ICMPv6 */
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:110:0: error: "IPPROTO_NONE" redefined [-Werror]
#define IPPROTO_NONE IPPROTO_NONE
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:135:0: note: this is the
location of the previous definition
#define IPPROTO_NONE 59 /* IPv6 no next header */
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:112:0: error: "IPPROTO_DSTOPTS" redefined [-Werror]
#define IPPROTO_DSTOPTS IPPROTO_DSTOPTS
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:136:0: note: this is the
location of the previous definition
#define IPPROTO_DSTOPTS 60 /* IPv6 destination options */
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:114:0: error: "IPPROTO_MH" redefined [-Werror]
#define IPPROTO_MH IPPROTO_MH
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:137:0: note: this is the
location of the previous definition
#define IPPROTO_MH 135 /* IPv6 mobility header */
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:211:8: error: redefinition of âstruct in6_addrâ
struct in6_addr
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:32:8: note: originally
defined here
struct in6_addr {
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:221:0: error: "s6_addr" redefined [-Werror]
#define s6_addr __in6_u.__u6_addr8
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:40:0: note: this is the
location of the previous definition
#define s6_addr in6_u.u6_addr8
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:223:0: error: "s6_addr16" redefined [-Werror]
# define s6_addr16 __in6_u.__u6_addr16
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:42:0: note: this is the
location of the previous definition
#define s6_addr16 in6_u.u6_addr16
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:224:0: error: "s6_addr32" redefined [-Werror]
# define s6_addr32 __in6_u.__u6_addr32
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:43:0: note: this is the
location of the previous definition
#define s6_addr32 in6_u.u6_addr32
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:254:8: error: redefinition of âstruct sockaddr_in6â
struct sockaddr_in6
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:49:8: note: originally
defined here
struct sockaddr_in6 {
^
In file included from ../include/netinet/in.h:3:0,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../inet/netinet/in.h:290:8: error: redefinition of âstruct ipv6_mreqâ
struct ipv6_mreq
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:59:8: note: originally
defined here
struct ipv6_mreq {
^
cc1: all warnings being treated as errors
~~~

* New set of failures related to IPV6_ADD_MEMBERSHIP and IPV6_DROP_MEMBERSHIP:
~~~~
In file included from ../inet/netinet/in.h:37:0,
from ../include/netinet/in.h:3,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../sysdeps/unix/sysv/linux/bits/in.h:218:0: error: "IPV6_ADD_MEMBERSHIP"
redefined [-Werror]
# define IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:169:0: note: this is the
location of the previous definition
#define IPV6_ADD_MEMBERSHIP 20
^
In file included from ../inet/netinet/in.h:37:0,
from ../include/netinet/in.h:3,
from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:2:
../sysdeps/unix/sysv/linux/bits/in.h:219:0: error: "IPV6_DROP_MEMBERSHIP"
redefined [-Werror]
# define IPV6_DROP_MEMBERSHIP IPV6_LEAVE_GROUP
^
In file included from ../sysdeps/unix/sysv/linux//tst-ipv6-compat2.c:1:0:
/home/carlos/build/glibc-headers/include/linux/in6.h:170:0: note: this is the
location of the previous definition
#define IPV6_DROP_MEMBERSHIP 21
^
cc1: all warnings being treated as errors
~~~~

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]