[Buildroot] [git commit] package/iwd: fix musl build

Arnout Vandecappelle (Essensium/Mind) arnout at mind.be
Tue Oct 5 19:31:08 UTC 2021


commit: https://git.buildroot.net/buildroot/commit/?id=6e9c10daa147196ea946c73c0beddfd681706cbb
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

Fix the following build failure with musl raised since bump to version
1.18 in commit 1a7be12e1e10cc09e3a28a8d04a352bbbb63ba3a:

src/netconfig.c: In function 'netconfig_ipv6_to_string':
src/netconfig.c:188:18: error: 'struct in6_addr' has no member named '__in6_u'; did you mean '__in6_union'?
  188 |  memcpy(in6_addr.__in6_u.__u6_addr8, addr, 16);
      |                  ^~~~~~~
      |                  __in6_union

Fixes:
 - http://autobuild.buildroot.org/results/2c4e6cf22e6fb5582470930241904878070f1144

Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
Reviewed-by: Peter Seiderer <ps.report at gmx.net>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
---
 ...netconfig-Remove-usage-of-in6_addr__in6_u.patch | 32 ++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/package/iwd/0002-netconfig-Remove-usage-of-in6_addr__in6_u.patch b/package/iwd/0002-netconfig-Remove-usage-of-in6_addr__in6_u.patch
new file mode 100644
index 0000000000..f6b3d24516
--- /dev/null
+++ b/package/iwd/0002-netconfig-Remove-usage-of-in6_addr__in6_u.patch
@@ -0,0 +1,32 @@
+From 42bd5ba7c2665c5bf95ba102a8115c4cf01d31d7 Mon Sep 17 00:00:00 2001
+From: Andrew Zaborowski <andrew.zaborowski at intel.com>
+Date: Thu, 16 Sep 2021 01:58:29 +0200
+Subject: netconfig: Remove usage of in6_addr.__in6_u
+
+in6_addr.__in6_u.__u6_addr8 is glibc-specific and named differently in
+the headers shipped with musl libc for example.  The POSIX compliant and
+universal way of accessing it is in6_addr.s6_addr.
+
+[Retrieved from:
+https://git.kernel.org/pub/scm/network/wireless/iwd.git/commit/?id=42bd5ba7c2665c5bf95ba102a8115c4cf01d31d7]
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
+---
+ src/netconfig.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/netconfig.c b/src/netconfig.c
+index ce95db0b..421270c9 100644
+--- a/src/netconfig.c
++++ b/src/netconfig.c
+@@ -171,7 +171,7 @@ static inline char *netconfig_ipv6_to_string(const uint8_t *addr)
+ 	struct in6_addr in6_addr;
+ 	char *addr_str = l_malloc(INET6_ADDRSTRLEN);
+ 
+-	memcpy(in6_addr.__in6_u.__u6_addr8, addr, 16);
++	memcpy(in6_addr.s6_addr, addr, 16);
+ 
+ 	if (L_WARN_ON(unlikely(!inet_ntop(AF_INET6, &in6_addr, addr_str,
+ 						INET6_ADDRSTRLEN)))) {
+-- 
+cgit 1.2.3-1.el7
+


More information about the buildroot mailing list