599b3a9f59
Add two patches to fix build issues with the musl libc. The first patch "0003-vlan-fix-musl-build-error" fixes the undefined __caddr_t build error. __caddr_t is a legacy BSD type and should be avoided in modern implementations. The second patch "0004-vlan-fix-musl-libc-conflict-with-Linux-kernel-header" fixes a typical musl libc header conflict with the Linux kernel header. We avoid including the conflicting Linux header file by defining the needed macros directly in the needing hostapd source file. Fixes: http://autobuild.buildroot.net/results/c26/c265cfada20621a631e9d118b9633df80b0e4864/ http://autobuild.buildroot.net/results/658/658c5e2fe6e3a4ad74ca47c926426e95eac0b9ec/ http://autobuild.buildroot.net/results/578/5787805b3e1487c4f85c3a367ed88e8730078b8e/ http://autobuild.buildroot.net/results/42d/42d8be008dcb07e9ec26ce10c797deb43ed86568/ Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
61 lines
2.0 KiB
Diff
61 lines
2.0 KiB
Diff
From 67ba6ed9871b2cab16eeee93818f05d9c49ccbab Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
|
|
Date: Tue, 8 Mar 2016 12:05:01 +0100
|
|
Subject: [PATCH] vlan: fix musl build error
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
caddr_t is legacy BSD and should be avoided [1].
|
|
|
|
This fixes compile errors with the musl libc:
|
|
|
|
../src/ap/vlan_init.c: In function 'br_delif':
|
|
../src/ap/vlan_init.c:218:18: error: '__caddr_t' undeclared (first use in this function)
|
|
ifr.ifr_data = (__caddr_t) args;
|
|
|
|
Upstream status: Pending [2]
|
|
|
|
[1] http://stackoverflow.com/questions/6381526/what-is-the-significance-of-caddr-t-and-when-is-it-used
|
|
[2] http://lists.infradead.org/pipermail/hostap/2016-March/035350.html
|
|
|
|
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
|
|
---
|
|
src/ap/vlan_init.c | 6 +++---
|
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/src/ap/vlan_init.c b/src/ap/vlan_init.c
|
|
index fd1c8dd..1670c0d 100644
|
|
--- a/src/ap/vlan_init.c
|
|
+++ b/src/ap/vlan_init.c
|
|
@@ -215,7 +215,7 @@ static int br_delif(const char *br_name, const char *if_name)
|
|
args[1] = if_index;
|
|
|
|
os_strlcpy(ifr.ifr_name, br_name, sizeof(ifr.ifr_name));
|
|
- ifr.ifr_data = (__caddr_t) args;
|
|
+ ifr.ifr_data = (void *) args;
|
|
|
|
if (ioctl(fd, SIOCDEVPRIVATE, &ifr) < 0 && errno != EINVAL) {
|
|
/* No error if interface already removed. */
|
|
@@ -266,7 +266,7 @@ static int br_addif(const char *br_name, const char *if_name)
|
|
args[1] = if_index;
|
|
|
|
os_strlcpy(ifr.ifr_name, br_name, sizeof(ifr.ifr_name));
|
|
- ifr.ifr_data = (__caddr_t) args;
|
|
+ ifr.ifr_data = (void *) args;
|
|
|
|
if (ioctl(fd, SIOCDEVPRIVATE, &ifr) < 0) {
|
|
if (errno == EBUSY) {
|
|
@@ -394,7 +394,7 @@ static int br_getnumports(const char *br_name)
|
|
|
|
os_memset(ifindices, 0, sizeof(ifindices));
|
|
os_strlcpy(ifr.ifr_name, br_name, sizeof(ifr.ifr_name));
|
|
- ifr.ifr_data = (__caddr_t) arg;
|
|
+ ifr.ifr_data = (void *) arg;
|
|
|
|
if (ioctl(fd, SIOCDEVPRIVATE, &ifr) < 0) {
|
|
wpa_printf(MSG_ERROR, "VLAN: %s: BRCTL_GET_PORT_LIST "
|
|
--
|
|
2.7.2
|
|
|