| diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile |
| index 3c5d03a3..8511fa2a 100644 |
| --- a/package/network/services/hostapd/Makefile |
| +++ b/package/network/services/hostapd/Makefile |
| @@ -40,14 +40,16 @@ HOSTAPD_PROVIDERS:= |
| LOCAL_TYPE=$(strip \ |
| $(if $(findstring wpad,$(BUILD_VARIANT)),wpad, \ |
| $(if $(findstring supplicant,$(BUILD_VARIANT)),supplicant, \ |
| - hostapd \ |
| + hostapd, \ |
| + afcd \ |
| ))) |
| |
| LOCAL_AND_LIB_VARIANT=$(patsubst hostapd-%,%,\ |
| $(patsubst wpad-%,%,\ |
| $(patsubst supplicant-%,%,\ |
| + $(patsubst afcd-%,%, \ |
| $(BUILD_VARIANT)\ |
| - ))) |
| + )))) |
| |
| LOCAL_VARIANT=$(patsubst %-internal,%,\ |
| $(patsubst %-openssl,%,\ |
| @@ -84,7 +86,7 @@ ifneq ($(CONFIG_DRIVER_11BE_SUPPORT),) |
| HOSTAPD_IEEE80211BE:=y |
| endif |
| |
| -CORE_DEPENDS = +ucode +libubus +libucode +ucode-mod-fs +ucode-mod-nl80211 +ucode-mod-rtnl +ucode-mod-ubus +ucode-mod-uloop +libblobmsg-json +libudebug |
| +CORE_DEPENDS = +ucode +libubus +libucode +ucode-mod-fs +ucode-mod-nl80211 +ucode-mod-rtnl +ucode-mod-ubus +ucode-mod-uloop +libblobmsg-json +libudebug +libcurl +libjson-c |
| OPENSSL_DEPENDS = +PACKAGE_$(1):libopenssl |
| |
| DRIVER_MAKEOPTS= \ |
| @@ -93,7 +95,8 @@ DRIVER_MAKEOPTS= \ |
| CONFIG_IEEE80211AX=$(HOSTAPD_IEEE80211AX) \ |
| CONFIG_IEEE80211BE=$(HOSTAPD_IEEE80211BE) \ |
| CONFIG_MBO=$(CONFIG_WPA_MBO_SUPPORT) \ |
| - CONFIG_UCODE=y |
| + CONFIG_UCODE=y \ |
| + CONFIG_AFC=y |
| |
| ifeq ($(SSL_VARIANT),openssl) |
| DRIVER_MAKEOPTS += CONFIG_TLS=openssl CONFIG_SAE=y |
| @@ -560,12 +563,33 @@ define Package/eapol-test-mbedtls |
| PROVIDES:=eapol-test |
| endef |
| |
| +define Package/afcd/Default |
| + SECTION:=net |
| + CATEGORY:=Network |
| + SUBMENU:=WirelessAPD |
| + TITLE:=AFC daemon for hostapd |
| + DEPENDS:=$(DRV_DEPENDS) +hostapd $(CORE_DEPENDS) |
| + EXTRA_DEPENDS:=hostapd (=$(PKG_VERSION)-$(PKG_RELEASE)) |
| + USERID:=network=101:network=101 |
| + URL:=https://github.com/LorenzoBianconi/hostapd/tree/hostap-afc-test-allen |
| + PROVIDES:=afcd |
| +endef |
| + |
| +define Package/afcd |
| +$(call Package/afcd/Default,$(1)) |
| + TITLE+= (built-in full) |
| +endef |
| + |
| +define Package/afcd/description |
| + This package contains a package that supports hostapd to send afc request |
| +endef |
| |
| ifneq ($(wildcard $(PKG_BUILD_DIR)/.config_*),$(subst .configured_,.config_,$(STAMP_CONFIGURED))) |
| define Build/Configure/rebuild |
| $(FIND) $(PKG_BUILD_DIR) -name \*.o -or -name \*.a | $(XARGS) rm -f |
| rm -f $(PKG_BUILD_DIR)/hostapd/hostapd |
| rm -f $(PKG_BUILD_DIR)/wpa_supplicant/wpa_supplicant |
| + rm -f $(PKG_BUILD_DIR)/afc/afcd |
| rm -f $(PKG_BUILD_DIR)/.config_* |
| touch $(subst .configured_,.config_,$(STAMP_CONFIGURED)) |
| endef |
| @@ -589,7 +613,7 @@ TARGET_CPPFLAGS := \ |
| -D_GNU_SOURCE \ |
| $(if $(CONFIG_WPA_MSG_MIN_PRIORITY),-DCONFIG_MSG_MIN_PRIORITY=$(CONFIG_WPA_MSG_MIN_PRIORITY)) |
| |
| -TARGET_LDFLAGS += -lubox -lubus -lblobmsg_json -lucode -lm -lnl-tiny -ludebug |
| +TARGET_LDFLAGS += -lubox -lubus -lblobmsg_json -lucode -lm -lnl-tiny -ludebug -lcurl -ljson-c |
| |
| ifdef CONFIG_WPA_ENABLE_WEP |
| DRIVER_MAKEOPTS += CONFIG_WEP=y |
| @@ -625,6 +649,9 @@ define Build/Compile/wpad |
| MULTICALL=1 \ |
| wpa_cli wpa_supplicant_multi.a \ |
| ) |
| + +$(call Build/RunMake,afc, \ |
| + afcd \ |
| + ) |
| +export MAKEFLAGS="$(MAKE_JOBSERVER)"; $(TARGET_CC) -o $(PKG_BUILD_DIR)/wpad \ |
| $(TARGET_CFLAGS) \ |
| ./files/multicall.c \ |
| @@ -675,12 +702,13 @@ define Build/Compile |
| endef |
| |
| define Install/hostapd/full |
| - $(INSTALL_DIR) $(1)/etc/init.d $(1)/etc/config $(1)/etc/radius |
| + $(INSTALL_DIR) $(1)/etc/init.d $(1)/etc/config $(1)/etc/radius $(1)/etc/ssl/ |
| ln -sf hostapd $(1)/usr/sbin/hostapd-radius |
| $(INSTALL_BIN) ./files/radius.init $(1)/etc/init.d/radius |
| $(INSTALL_DATA) ./files/radius.config $(1)/etc/config/radius |
| $(INSTALL_DATA) ./files/radius.clients $(1)/etc/radius/clients |
| $(INSTALL_DATA) ./files/radius.users $(1)/etc/radius/users |
| + $(INSTALL_DATA) ./files/afc_ca.pem $(1)/etc/ssl/afc_ca.pem |
| endef |
| |
| define Package/hostapd-full/conffiles |
| @@ -778,6 +806,13 @@ Package/wpa-supplicant-mesh-openssl/install = $(Package/wpa-supplicant/install) |
| Package/wpa-supplicant-mesh-wolfssl/install = $(Package/wpa-supplicant/install) |
| Package/wpa-supplicant-mesh-mbedtls/install = $(Package/wpa-supplicant/install) |
| |
| +ifneq ($(LOCAL_TYPE),afcd) |
| + define Package/afcd/install |
| + $(INSTALL_DIR) $(1)/usr/sbin |
| + $(CP) $(PKG_BUILD_DIR)/afc/afcd $(1)/usr/sbin/ |
| + endef |
| +endif |
| + |
| ifneq ($(LOCAL_TYPE),hostapd) |
| define Package/wpa-cli/install |
| $(INSTALL_DIR) $(1)/usr/sbin |
| @@ -853,3 +888,4 @@ $(eval $(call BuildPackage,eapol-test)) |
| $(eval $(call BuildPackage,eapol-test-openssl)) |
| $(eval $(call BuildPackage,eapol-test-wolfssl)) |
| $(eval $(call BuildPackage,eapol-test-mbedtls)) |
| +$(eval $(call BuildPackage,afcd)) |