Compare commits

...

3 Commits

Author SHA1 Message Date
Jürgen Henke f3eba274bb hostap: changed nas-port type to ethernet for wired-802.1X
BugzId: 78385
2022-02-21 15:48:15 +01:00
Patrick Walther 11623c993c FIX: [hosapd/wpa-supplicant] use branch main to find correct commit ID while fetching sources
BugzId: 77740
(cherry picked from commit 3852801829)
2022-02-08 14:50:40 +01:00
Jürgen Henke eee7a8982e Created new recipe for libwpa-client
- libwpa-client is used to communicate with hostapd/wpa_supplicant via
  the control interface.

BugzId: 75651
BugzId: 75694
(cherry picked from commit feb31dda57)
(cherry picked from commit b178890686)
(cherry picked from commit 31c63eb5b8)
(cherry picked from commit d6b436754e)
2021-12-15 10:28:49 +01:00
4 changed files with 171 additions and 67 deletions

View File

@ -0,0 +1,26 @@
From 45bf83dbe2a84f39f09a247445531d890655ea2b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Henke?= <juergen.henke@netmodule.com>
Date: Thu, 11 Nov 2021 09:05:57 +0100
Subject: [PATCH] fix: create a versioned shared library libwlan_client.so
Otherwise we will run circles around oe's "THOU SHALL NOT USED
UNVERSIONED LIBRARIES IN THY LORD'S ROOT-FS" feature.
BugzId: 75694
---
wpa_supplicant/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/wpa_supplicant/Makefile b/wpa_supplicant/Makefile
index 238e31b0c..58c047543 100644
--- a/wpa_supplicant/Makefile
+++ b/wpa_supplicant/Makefile
@@ -1965,7 +1965,7 @@ libwpa_client.a: $(LIBCTRL)
libwpa_client.so: $(LIBCTRLSO)
@$(E) " CC $@ ($^)"
- $(Q)$(CC) $(LDFLAGS) -o $@ $(CFLAGS) -shared -fPIC $^
+ $(Q)$(CC) $(LDFLAGS) -o $@ $(CFLAGS) -shared -Wl,-soname,libwpa_client.so.2.10.0 -fPIC $^
libwpa_test1: libwpa_test.o libwpa_client.a
$(Q)$(LDO) $(LDFLAGS) -o libwpa_test1 libwpa_test.o libwpa_client.a $(LIBS_c)

View File

@ -0,0 +1,49 @@
From 6cb306fef195a430642a2475d72fcc6b375acb11 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Henke?= <juergen.henke@netmodule.com>
Date: Mon, 21 Feb 2022 15:40:04 +0100
Subject: [PATCH] use nas-port-type ethernet for wired 802.1X
- if the driver is "wired", use nas-port type "ethernet", otherwise
use "wirless-802.1X" as before.
BugzId: 78385
---
src/ap/ieee802_1x.c | 9 +++++++--
src/radius/radius.h | 1 +
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/ap/ieee802_1x.c b/src/ap/ieee802_1x.c
index 9ee99cff3..8a012a9e4 100644
--- a/src/ap/ieee802_1x.c
+++ b/src/ap/ieee802_1x.c
@@ -578,11 +578,16 @@ int add_common_radius_attr(struct hostapd_data *hapd,
return -1;
}
+ int32_t nas_port_type = RADIUS_NAS_PORT_TYPE_IEEE_802_11;
+ if (os_strcmp(hapd->driver->name,"wired") == 0) {
+ // wired ports need a different port type:
+ nas_port_type = RADIUS_NAS_PORT_TYPE_ETHERNET;
+ }
if (!hostapd_config_get_radius_attr(req_attr,
RADIUS_ATTR_NAS_PORT_TYPE) &&
!radius_msg_add_attr_int32(msg, RADIUS_ATTR_NAS_PORT_TYPE,
- RADIUS_NAS_PORT_TYPE_IEEE_802_11)) {
- wpa_printf(MSG_ERROR, "Could not add NAS-Port-Type");
+ nas_port_type)) {
+ wpa_printf(MSG_ERROR, "Could not add NAS-Port-Type (%i)", nas_port_type);
return -1;
}
diff --git a/src/radius/radius.h b/src/radius/radius.h
index 630c0f9d0..a6056d8bd 100644
--- a/src/radius/radius.h
+++ b/src/radius/radius.h
@@ -125,6 +125,7 @@ enum { RADIUS_ATTR_USER_NAME = 1,
/* NAS-Port-Type */
#define RADIUS_NAS_PORT_TYPE_IEEE_802_11 19
+#define RADIUS_NAS_PORT_TYPE_ETHERNET 15
/* Acct-Status-Type */
#define RADIUS_ACCT_STATUS_TYPE_START 1

View File

@ -14,7 +14,7 @@ inherit pkgconfig
PACKAGECONFIG = "openssl"
SRC_URI = "git://w1.fi/hostap.git;protocol=http \
SRC_URI = "git://w1.fi/hostap.git;protocol=http;branch=main \
file://wpa_supplicant-full.config \
file://hostapd-full.config \
file://src/utils/build_features.h \
@ -80,6 +80,8 @@ SRC_URI = "git://w1.fi/hostap.git;protocol=http \
file://912-iapp-integration.patch \
file://913-iapp-improvements.patch \
file://914-wlan-acs-srd-channels.patch \
file://0001-fix-create-a-versioned-shared-library-libwlan_client.patch \
file://0001-use-nas-port-type-ethernet-for-wired-802.1X.patch \
"
SRCREV = "5a8b366233f5585e68a4ffbb604fbb4a848eb325"

View File

@ -0,0 +1,27 @@
SUMMARY = "A library for using the hostapd/wpa_supplicant control interface"
# This is part of wpa_supplicant and defined in the wpa_supplicant Makefile
TARGET_NAME = "wpa_supplicant"
include hostapd.inc
#PACKAGES_prepend = "libwpa_client"
FILES_${PN} += "${libdir}/*.so"
RPROVIDES_${PN} = "libwpa_client.so"
PROVIDES = "libwpa_client.so"
do_install () {
install -d ${D}${libdir}
install -d ${D}${includedir}/wpa_client
install -m 755 wpa_supplicant/libwpa_client.so ${D}${libdir}/libwpa_client.so.2.10.0
install -m 644 src/common/wpa_ctrl.h ${D}${includedir}/wpa_client
ln -sf libwpa_client.so.2.10.0 ${D}${libdir}/libwpa_client.so
}
do_compile () {
unset CFLAGS CPPFLAGS CXXFLAGS
oe_runmake -C ${TARGET_NAME} libwpa_client.so
}