summaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/if_ether.h
diff options
context:
space:
mode:
authorHauke Mehrtens2018-01-03 23:14:21 +0100
committerDavid S. Miller2018-01-04 20:30:52 +0100
commit6926e041a8920c8ec27e4e155efa760aa01551fd (patch)
tree84c94bc8ffb7e5738793ea78fd996a5294da94bf /include/uapi/linux/if_ether.h
parentipv6: fix general protection fault in fib6_add() (diff)
downloadkernel-qcow2-linux-6926e041a8920c8ec27e4e155efa760aa01551fd.tar.gz
kernel-qcow2-linux-6926e041a8920c8ec27e4e155efa760aa01551fd.tar.xz
kernel-qcow2-linux-6926e041a8920c8ec27e4e155efa760aa01551fd.zip
uapi/if_ether.h: prevent redefinition of struct ethhdr
Musl provides its own ethhdr struct definition. Add a guard to prevent its definition of the appropriate musl header has already been included. glibc does not implement this header, but when glibc will implement this they can just define __UAPI_DEF_ETHHDR 0 to make it work with the kernel. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux/if_ether.h')
-rw-r--r--include/uapi/linux/if_ether.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/uapi/linux/if_ether.h b/include/uapi/linux/if_ether.h
index 3ee3bf7c8526..144de4d2f385 100644
--- a/include/uapi/linux/if_ether.h
+++ b/include/uapi/linux/if_ether.h
@@ -23,6 +23,7 @@
#define _UAPI_LINUX_IF_ETHER_H
#include <linux/types.h>
+#include <linux/libc-compat.h>
/*
* IEEE 802.3 Ethernet magic constants. The frame sizes omit the preamble
@@ -149,11 +150,13 @@
* This is an Ethernet frame header.
*/
+#if __UAPI_DEF_ETHHDR
struct ethhdr {
unsigned char h_dest[ETH_ALEN]; /* destination eth addr */
unsigned char h_source[ETH_ALEN]; /* source ether addr */
__be16 h_proto; /* packet type ID field */
} __attribute__((packed));
+#endif
#endif /* _UAPI_LINUX_IF_ETHER_H */