Carlos O'Donell wrote: > diff --git a/include/uapi/linux/in6.h b/include/uapi/linux/in6.h > index f79c372..a2b16a5 100644 > --- a/include/uapi/linux/in6.h > +++ b/include/uapi/linux/in6.h > @@ -23,6 +23,13 @@ > > #include <linux/types.h> > > +/* If a glibc-based userspace has already included in.h, then we will not > + * define in6_addr (nor the defines), sockaddr_in6, or ipv6_mreq. The > + * ABI used by the kernel and by glibc match exactly. Neither the kernel > + * nor glibc should break this ABI without coordination. > + */ > +#ifndef _NETINET_IN_H > + > /* > * IPv6 address structure > */ This should be #if !defined(__GLIBC__) || !defined(_NETINET_IN_H) > @@ -30,12 +37,20 @@ > struct in6_addr { > union { > __u8 u6_addr8[16]; > +#if !defined(__GLIBC__) \ > + || (defined(__GLIBC__) && (defined(__USE_MISC) || defined(__USE_GNU))) \ > + || defined(__KERNEL__) > __be16 u6_addr16[8]; > __be32 u6_addr32[4]; > +#endif > } in6_u; > +#if !defined(__GLIBC__) \ > + || (defined(__GLIBC__) && (defined(__USE_MISC) || defined(__USE_GNU))) \ > + || defined(__KERNEL__) > #define s6_addr in6_u.u6_addr8 > #define s6_addr16 in6_u.u6_addr16 > #define s6_addr32 in6_u.u6_addr32 > +#endif > }; 2nd "if" be after s6_addr? --yoshfuji -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list