On Sat, Dec 03, 2016 at 05:31:45PM +0100, Jonas Gorski wrote: > Fix a wrong condition preventing the higher net device flags > IFF_LOWER_UP etc to be defined if net/if.h is included before > linux/if.h. > > The comment makes it clear the intention was to allow partial > definition with either parts. > > This fixes compilation of userspace programs trying to use > IFF_LOWER_UP, IFF_DORMANT or IFF_ECHO. > > Fixes: 4a91cb61bb99 ("uapi glibc compat: fix compile errors when glibc > net/if.h included before linux/if.h") > Signed-off-by: Jonas Gorski <jonas.gor...@gmail.com>
Reviewed-by: Mikko Rapeli <mikko.rap...@iki.fi> Yep, sorry about the logic error. Thanks for the fix! -Mikko > --- > Patch applies cleanly to both linus' HEAD and net-next. I wasn't sure > which one's the right one. > > include/uapi/linux/if.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/include/uapi/linux/if.h b/include/uapi/linux/if.h > index e601c8c..1158a04 100644 > --- a/include/uapi/linux/if.h > +++ b/include/uapi/linux/if.h > @@ -31,7 +31,7 @@ > #include <linux/hdlc/ioctl.h> > > /* For glibc compatibility. An empty enum does not compile. */ > -#if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 && \ > +#if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 || \ > __UAPI_DEF_IF_NET_DEVICE_FLAGS != 0 > /** > * enum net_device_flags - &struct net_device flags > @@ -99,7 +99,7 @@ enum net_device_flags { > IFF_ECHO = 1<<18, /* volatile */ > #endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO */ > }; > -#endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 && > __UAPI_DEF_IF_NET_DEVICE_FLAGS != 0 */ > +#endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 || > __UAPI_DEF_IF_NET_DEVICE_FLAGS != 0 */ > > /* for compatibility with glibc net/if.h */ > #if __UAPI_DEF_IF_NET_DEVICE_FLAGS > -- > 2.1.4 >