Nick, Maciej, does this patch work for you? On Wed, May 18, 2022 at 04:20:46PM +0200, Phil Sutter wrote: > This reverts commit c5d9a723b5159a28f547b577711787295a14fd84 as it broke > compiling against musl libc. Might be a bug in the latter, but for the > time being try to please both by avoiding the include and instead > defining ETH_ALEN if unset. > > While being at it, move netinet/ether.h include up. > > Fixes: 1bdb5535f561a ("libxtables: Extend MAC address printing/parsing support") > Signed-off-by: Phil Sutter <phil@xxxxxx> > --- > libxtables/xtables.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/libxtables/xtables.c b/libxtables/xtables.c > index 96fd783a066cf..0638f9271c601 100644 > --- a/libxtables/xtables.c > +++ b/libxtables/xtables.c > @@ -28,6 +28,7 @@ > #include <stdlib.h> > #include <string.h> > #include <unistd.h> > +#include <netinet/ether.h> > #include <sys/socket.h> > #include <sys/stat.h> > #include <sys/statfs.h> > @@ -45,7 +46,6 @@ > > #include <xtables.h> > #include <limits.h> /* INT_MAX in ip_tables.h/ip6_tables.h */ > -#include <linux/if_ether.h> /* ETH_ALEN */ > #include <linux/netfilter_ipv4/ip_tables.h> > #include <linux/netfilter_ipv6/ip6_tables.h> > #include <libiptc/libxtc.h> > @@ -72,6 +72,10 @@ > #define PROC_SYS_MODPROBE "/proc/sys/kernel/modprobe" > #endif > > +#ifndef ETH_ALEN > +#define ETH_ALEN 6 > +#endif > + > /* we need this for ip6?tables-restore. ip6?tables-restore.c sets line to the > * current line of the input file, in order to give a more precise error > * message. ip6?tables itself doesn't need this, so it is initialized to the > @@ -2245,8 +2249,6 @@ void xtables_print_num(uint64_t number, unsigned int format) > printf(FMT("%4lluT ","%lluT "), (unsigned long long)number); > } > > -#include <netinet/ether.h> > - > static const unsigned char mac_type_unicast[ETH_ALEN] = {}; > static const unsigned char msk_type_unicast[ETH_ALEN] = {1}; > static const unsigned char mac_type_multicast[ETH_ALEN] = {1}; > -- > 2.34.1 > >