include: uapi: netfilter_bridge.h: Cover for musl libc

Musl defines its own struct ethhdr and thus defines __UAPI_DEF_ETHHDR to
zero. To avoid struct redefinition errors, user space is therefore
supposed to include netinet/if_ether.h before (or instead of)
linux/if_ether.h. To relieve them from this burden, include the libc
header here if not building for kernel space.

Reported-by: Alyssa Ross <hi@alyssa.is>
Suggested-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Florian Westphal <fw@strlen.de>
This commit is contained in:
Phil Sutter 2026-02-14 15:54:06 +01:00 committed by Florian Westphal
parent a6d28eb8ef
commit 4edd4ba71c

View file

@ -5,6 +5,10 @@
/* bridge-specific defines for netfilter.
*/
#ifndef __KERNEL__
#include <netinet/if_ether.h> /* for __UAPI_DEF_ETHHDR if defined */
#endif
#include <linux/in.h>
#include <linux/netfilter.h>
#include <linux/if_ether.h>