Hi,

I am trying to compile openvpn against musl and I get the following:

In file included from /usr/include/linux/if_tun.h:20:0,
                 from syshead.h:222,
                 from base64.c:40:
/usr/include/linux/if_ether.h:127:8: error: redefinition of 'struct ethhdr'
/usr/include/netinet/if_ether.h:93:8: note: originally defined here



Glibc does not have this problem as they include linux/if_ether.h from netinet/if_ether.h. For musl I realize that would mean a dependency on kernel-headers.


Openvpn uses the following:

#if defined(HAVE_NETINET_IF_ETHER_H)
#include <netinet/if_ether.h>
#endif

#ifdef HAVE_LINUX_IF_TUN_H
#include <linux/if_tun.h>                   <--- includes linux/if_ether.h
#endif


I can get it to work by just removing the netinet/if_ether.h part, but maybe it is something worthy of your attention.

Regards
Paul