[PATCH] common: avoid conflict with __bitwise and __force from linux/types.h

Beniamino Galvani bgalvani at redhat.com
Fri Sep 15 08:05:10 PDT 2017


On Fri, Sep 15, 2017 at 03:34:40PM +0200, Johannes Berg wrote:
> On Fri, 2017-09-15 at 14:37 +0200, Beniamino Galvani wrote:
> > Namespace the __bitwise and __force macros so that they don't
> > conflict
> > with the ones from linux/types.h:
> > 
> >   In file included from ../src/l2_packet/l2_packet_linux.c:15:0:
> >   hostap/src/utils/common.h:438:0: warning: "__bitwise" redefined
> >    #define __bitwise
> > 
> >   In file included from /usr/include/linux/filter.h:9:0,
> >                    from ../src/l2_packet/l2_packet_linux.c:13:
> >   /usr/include/linux/types.h:21:0: note: this is the location of the
> > previous definition
> >    #define __bitwise __bitwise__
> 
> I think we can just #ifdef them because it's a compatible, if not
> exactly identical, definition?

Yes, it's compatible. However, I think there could still be conflicts
adding an #ifdef because in the kernel header those macros are not
guarded and so it could happen that a file includes "common.h" and
then includes another local header file that uses <linux/types.h>,
causing a redefinition warning.

Beniamino



More information about the Hostap mailing list