From 1d53e24413647eaa55bfa4074295adfab4a329b8 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Sun, 22 Dec 2019 06:46:23 +0000 Subject: system/{easy-kernel,musl}: fix struct iphdr UAPI thing --- system/easy-kernel/uapi-iphdr.patch | 47 +++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 system/easy-kernel/uapi-iphdr.patch (limited to 'system/easy-kernel/uapi-iphdr.patch') diff --git a/system/easy-kernel/uapi-iphdr.patch b/system/easy-kernel/uapi-iphdr.patch new file mode 100644 index 000000000..8436b035b --- /dev/null +++ b/system/easy-kernel/uapi-iphdr.patch @@ -0,0 +1,47 @@ +From 62689a5371ff8bbfc8c04625794c62d957b0863f Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" +Date: Sat, 21 Dec 2019 23:36:33 -0600 +Subject: [PATCH] uapi: Prevent redefinition of struct iphdr + +As with struct ethhdr, the musl libc provides its own definition of the +iphdr struct. This guard ensures software like net-tools builds correctly +on the musl libc. + +The __UAPI_DEF_IPHDR definition is in ip.h itself to prevent the issue in +commit da360299b673 ("uapi/if_ether.h: move __UAPI_DEF_ETHHDR libc define") +from being seen here. + +Signed-off-by: A. Wilcox +--- + include/uapi/linux/ip.h | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/include/uapi/linux/ip.h b/include/uapi/linux/ip.h +index e42d13b55cf3..d34a0d295672 100644 +--- a/include/uapi/linux/ip.h ++++ b/include/uapi/linux/ip.h +@@ -83,6 +83,13 @@ + + #define IPV4_BEET_PHMAXLEN 8 + ++/* Allow libcs to deactivate this - musl has its own copy in */ ++ ++#ifndef __UAPI_DEF_IPHDR ++#define __UAPI_DEF_IPHDR 1 ++#endif ++ ++#if __UAPI_DEF_IPHDR + struct iphdr { + #if defined(__LITTLE_ENDIAN_BITFIELD) + __u8 ihl:4, +@@ -104,6 +111,7 @@ struct iphdr { + __be32 daddr; + /*The options start here. */ + }; ++#endif + + + struct ip_auth_hdr { +-- +2.22.1 + -- cgit v1.2.3-70-g09d2