From d1477636f92d368ab820b4ef6d5b7d669c353a54 Mon Sep 17 00:00:00 2001 From: Anjan Chanda Date: Fri, 10 Dec 2021 12:57:10 +0100 Subject: [PATCH] wfadatad: 6.10.0 (deagent + decollector) --- wfadatad/Makefile | 47 ++++++++++++++++++-------- wfadatad/files/wfadatad.collector.init | 39 +++++++++++++++++++++ wfadatad/files/wfadatad.init | 21 +++--------- 3 files changed, 77 insertions(+), 30 deletions(-) create mode 100644 wfadatad/files/wfadatad.collector.init diff --git a/wfadatad/Makefile b/wfadatad/Makefile index 666fc15b7..dc38d9b83 100644 --- a/wfadatad/Makefile +++ b/wfadatad/Makefile @@ -5,10 +5,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wfadatad -PKG_VERSION:=5.1.1 +PKG_VERSION:=6.10.0 PKG_SOURCE_PROTO:=git -PKG_SOURCE_VERSION:=b285df098a380936710b1e3da7686e35a4a9adee +PKG_SOURCE_VERSION:=74aa2efe7f3f835e02cab1f8965afabd918b1477 PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/wfadatad.git PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz PKG_MIRROR_HASH:=skip @@ -25,19 +25,25 @@ include $(INCLUDE_DIR)/package.mk define Package/wfadatad SECTION:=utils CATEGORY:=Utilities - TITLE:=WiFi Data Elements-1.0 Agent and Collector + TITLE:=WiFi DataElements Agent DEPENDS:=+libwifi +libuci +libubox +ubus +libpthread +libnl-genl \ +!WFA_DELM_STANDALONE:map-agent +libieee1905 +map-plugin endef define Package/wfadatad/description - This package implements WiFi Alliance's Data Elements v.1.0. - It collects WiFi network's diagnostic data and reports them - to the Data Elements Collector. - In Data Elements Agent mode, the package by default is built - as a loadable plugin module to the MultiAP Agent. - The package can also be built as a standalone daemon running - independently of a MultiAP Agent. + This package implements WiFi DataElements Agent. +endef + +define Package/wfadatad-collector + SECTION:=utils + CATEGORY:=Utilities + TITLE:=WiFi DataElements Collector + DEPENDS:=+libuci +libubox +ubus +libpthread +libnl-genl \ + +libieee1905 +map-plugin +endef + +define Package/wfadatad-collector/description + It implements WiFi DataElement Collector. endef @@ -45,7 +51,6 @@ define Package/wfadatad/config source "$(SOURCE)/Config.in" endef - ifeq ($(CONFIG_WFA_DELM_STANDALONE),y) MAKE_FLAGS += CONFIG_WFA_DELM_STANDALONE=y endif @@ -63,12 +68,26 @@ define Package/wfadatad/install ifeq ($(CONFIG_WFA_DELM_STANDALONE),y) $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) ./files/wfadatad.init $(1)/etc/init.d/wfadatad - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/wfadatad $(1)/usr/sbin/ + $(INSTALL_BIN) ./files/wfadatad.init $(1)/etc/init.d/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/agent/deagent $(1)/usr/sbin/ else $(INSTALL_DIR) $(1)/usr/lib/map-plugins - $(CP) $(PKG_BUILD_DIR)/src/wfa_delm.so $(1)/usr/lib/map-plugins + $(CP) $(PKG_BUILD_DIR)/src/agent/deagent.so $(1)/usr/lib/map-plugins +endif +endef + +define Package/wfadatad-collector/install + +ifeq ($(CONFIG_WFA_DELM_STANDALONE),y) + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) ./files/wfadatad.collector.init $(1)/etc/init.d/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/collector/decollector $(1)/usr/sbin/ +else + $(INSTALL_DIR) $(1)/usr/lib/map-plugins + $(CP) $(PKG_BUILD_DIR)/src/collector/decollector.so $(1)/usr/lib/map-plugins endif endef $(eval $(call BuildPackage,wfadatad)) +$(eval $(call BuildPackage,wfadatad-collector)) diff --git a/wfadatad/files/wfadatad.collector.init b/wfadatad/files/wfadatad.collector.init new file mode 100644 index 000000000..c687383a1 --- /dev/null +++ b/wfadatad/files/wfadatad.collector.init @@ -0,0 +1,39 @@ +#!/bin/sh /etc/rc.common + +START=98 +STOP=11 + +USE_PROCD=1 +PROG=/usr/sbin/decollector + +service_running() { + ubus -t 2 wait_for ieee1905 ieee1905.map +} + +start_service() { + sleep 3 + [ -e "/etc/config/mapcontroller" ] && { + local en + + config_load mapcontroller + config_get en controller enabled "0" + + [ $en -gt 0 ] && { + procd_open_instance + procd_set_param command "$PROG" "-d" + #procd_set_param stdout 1 + #procd_set_param stderr 1 + procd_close_instance + } + } +} + +reload_service() { + stop + start +} + +service_triggers() +{ + procd_add_reload_trigger mapcontroller +} diff --git a/wfadatad/files/wfadatad.init b/wfadatad/files/wfadatad.init index 11cebcf21..a196f977e 100644 --- a/wfadatad/files/wfadatad.init +++ b/wfadatad/files/wfadatad.init @@ -4,30 +4,19 @@ START=98 STOP=11 USE_PROCD=1 -PROG=/usr/sbin/wfadatad +PROG=/usr/sbin/deagent service_running() { - ubus -t 2 wait_for ieee1905 ieee1905.map + ubus -t 2 wait_for wifi ieee1905 ieee1905.map } start_service() { procd_open_instance - procd_set_param command "$PROG" "-d" "-t 15" + procd_set_param command "$PROG" "-d" "-t 10" + #procd_set_param stdout 1 + #procd_set_param stderr 1 #procd_set_param respawn procd_close_instance - - [ -e "/etc/config/mapcontroller" ] && { - local en - - config_load mapcontroller - config_get en controller enabled "0" - - [ $en -gt 0 ] && { - procd_open_instance - procd_set_param command "$PROG" "-d -C" - procd_close_instance - } - } } reload_service() {