mirror of
https://dev.iopsys.eu/feed/iopsys.git
synced 2025-12-10 07:44:50 +01:00
bbfdm: bbf.config with C code
This commit is contained in:
parent
63b6ff0f27
commit
36de4ee5a2
4 changed files with 75 additions and 9 deletions
|
|
@ -1,3 +1,4 @@
|
||||||
|
if PACKAGE_libbbfdm
|
||||||
config BBF_VENDOR_LIST
|
config BBF_VENDOR_LIST
|
||||||
string "Vendor List"
|
string "Vendor List"
|
||||||
default "iopsys"
|
default "iopsys"
|
||||||
|
|
@ -13,3 +14,4 @@ config BBF_OBFUSCATION_KEY
|
||||||
config BBF_MAX_OBJECT_INSTANCES
|
config BBF_MAX_OBJECT_INSTANCES
|
||||||
int "Maximum number of instances per object"
|
int "Maximum number of instances per object"
|
||||||
default 255
|
default 255
|
||||||
|
endif
|
||||||
|
|
|
||||||
|
|
@ -5,13 +5,13 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=bbfdm
|
PKG_NAME:=bbfdm
|
||||||
PKG_VERSION:=1.8.27
|
PKG_VERSION:=1.9.0
|
||||||
|
|
||||||
USE_LOCAL:=0
|
USE_LOCAL:=0
|
||||||
ifneq ($(USE_LOCAL),1)
|
ifneq ($(USE_LOCAL),1)
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/bbf/bbfdm.git
|
PKG_SOURCE_URL:=https://dev.iopsys.eu/bbf/bbfdm.git
|
||||||
PKG_SOURCE_VERSION:=0d16ce491afd3d31c36aa4fa752d18c730e768ba
|
PKG_SOURCE_VERSION:=40d22bedaf26fac6c91d6c0ec456a0fc37872c8d
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||||
PKG_MIRROR_HASH:=skip
|
PKG_MIRROR_HASH:=skip
|
||||||
endif
|
endif
|
||||||
|
|
@ -38,6 +38,7 @@ define Package/libbbfdm
|
||||||
SUBMENU:=TRx69
|
SUBMENU:=TRx69
|
||||||
TITLE:=Library for broadband forum data model support
|
TITLE:=Library for broadband forum data model support
|
||||||
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libbbfdm-api +libopenssl
|
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libbbfdm-api +libopenssl
|
||||||
|
MENU:=1
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/bbfdmd
|
define Package/bbfdmd
|
||||||
|
|
@ -45,19 +46,36 @@ define Package/bbfdmd
|
||||||
CATEGORY:=Utilities
|
CATEGORY:=Utilities
|
||||||
SUBMENU:=TRx69
|
SUBMENU:=TRx69
|
||||||
TITLE:=Datamodel ubus backend
|
TITLE:=Datamodel ubus backend
|
||||||
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libbbfdm-api +libbbfdm +jq
|
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libbbfdm-api +libbbfdm +jq +bbf_configmngr
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/bbf_configmngr
|
||||||
|
SECTION:=utils
|
||||||
|
CATEGORY:=Utilities
|
||||||
|
SUBMENU:=TRx69
|
||||||
|
TITLE:= BBF Config Manager
|
||||||
|
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json
|
||||||
|
MENU:=1
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/libbbfdm/config
|
define Package/libbbfdm/config
|
||||||
source "$(SOURCE)/Config_bbfdm.in"
|
source "$(SOURCE)/Config_bbfdm.in"
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/bbf_configmngr/config
|
||||||
|
source "$(SOURCE)/bbf_configmngr.in"
|
||||||
|
endef
|
||||||
|
|
||||||
define Package/libbbfdm-api/description
|
define Package/libbbfdm-api/description
|
||||||
Library contains the API(UCI, UBUS, JSON, CLI and Browse) of libbbfdm
|
Library contains the API(UCI, UBUS, JSON, CLI and Browse) of libbbfdm
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/libbbfdm/description
|
define Package/libbbfdm/description
|
||||||
Library contains the data model tree. It includes TR181, TR143 data models
|
Library contains the data model tree, It includes basic TR181 nodes.
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/bbf_configmngr/description
|
||||||
|
Daemon for handling bbf reload services via ubus bbf.config
|
||||||
endef
|
endef
|
||||||
|
|
||||||
ifeq ($(USE_LOCAL),1)
|
ifeq ($(USE_LOCAL),1)
|
||||||
|
|
@ -83,11 +101,11 @@ define Package/libbbfdm-api/install
|
||||||
$(INSTALL_DIR) $(1)/lib
|
$(INSTALL_DIR) $(1)/lib
|
||||||
$(CP) $(PKG_BUILD_DIR)/libbbfdm-api/libbbfdm-api.so $(1)/lib/
|
$(CP) $(PKG_BUILD_DIR)/libbbfdm-api/libbbfdm-api.so $(1)/lib/
|
||||||
$(INSTALL_DIR) $(1)/usr/libexec/rpcd
|
$(INSTALL_DIR) $(1)/usr/libexec/rpcd
|
||||||
$(CP) $(PKG_BUILD_DIR)/libbbfdm-api/scripts/bbf.secure $(1)/usr/libexec/rpcd/bbf.secure
|
$(CP) $(PKG_BUILD_DIR)/utilities/files/usr/libexec/rpcd/bbf.secure $(1)/usr/libexec/rpcd/bbf.secure
|
||||||
$(CP) $(PKG_BUILD_DIR)/libbbfdm-api/scripts/bbf.config $(1)/usr/libexec/rpcd/bbf.config
|
$(CP) $(PKG_BUILD_DIR)/utilities/files/usr/libexec/rpcd/bbf.diag $(1)/usr/libexec/rpcd/bbf.diag
|
||||||
$(INSTALL_DIR) $(1)/etc/bbfdm
|
$(INSTALL_DIR) $(1)/etc/bbfdm
|
||||||
echo "$(CONFIG_BBF_OBFUSCATION_KEY)" > $(1)/etc/bbfdm/.secure_hash
|
|
||||||
$(INSTALL_DIR) $(1)/etc/bbfdm/certificates
|
$(INSTALL_DIR) $(1)/etc/bbfdm/certificates
|
||||||
|
echo "$(CONFIG_BBF_OBFUSCATION_KEY)" > $(1)/etc/bbfdm/.secure_hash
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/libbbfdm/install
|
define Package/libbbfdm/install
|
||||||
|
|
@ -110,9 +128,7 @@ ifeq ($(findstring iopsys,$(CONFIG_BBF_VENDOR_LIST)),iopsys)
|
||||||
$(BBFDM_INSTALL_CORE_PLUGIN) $(PKG_BUILD_DIR)/libbbfdm/dmtree/vendor/iopsys/libbbfdm_iopsys_ext.so $(1)
|
$(BBFDM_INSTALL_CORE_PLUGIN) $(PKG_BUILD_DIR)/libbbfdm/dmtree/vendor/iopsys/libbbfdm_iopsys_ext.so $(1)
|
||||||
endif
|
endif
|
||||||
$(INSTALL_DIR) $(1)/usr/share/bbfdm/scripts/
|
$(INSTALL_DIR) $(1)/usr/share/bbfdm/scripts/
|
||||||
$(INSTALL_DIR) $(1)/usr/libexec/rpcd
|
|
||||||
$(CP) $(PKG_BUILD_DIR)/libbbfdm/scripts/* $(1)/usr/share/bbfdm/scripts/
|
$(CP) $(PKG_BUILD_DIR)/libbbfdm/scripts/* $(1)/usr/share/bbfdm/scripts/
|
||||||
$(LN) /usr/share/bbfdm/scripts/bbf.diag $(1)/usr/libexec/rpcd/bbf.diag
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/libbbfdm/prerm
|
define Package/libbbfdm/prerm
|
||||||
|
|
@ -135,6 +151,19 @@ define Package/bbfdmd/install
|
||||||
$(INSTALL_BIN) ./files/etc/hotplug.d/iface/85-bbfdm-sysctl $(1)/etc/hotplug.d/iface/85-bbfdm-sysctl
|
$(INSTALL_BIN) ./files/etc/hotplug.d/iface/85-bbfdm-sysctl $(1)/etc/hotplug.d/iface/85-bbfdm-sysctl
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/bbf_configmngr/install
|
||||||
|
$(INSTALL_DIR) $(1)/etc/init.d
|
||||||
|
ifeq ($(CONFIG_BBF_CONFIGMNGR_C_BACKEND),y)
|
||||||
|
$(INSTALL_DIR) $(1)/usr/sbin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/utilities/bbf_configd $(1)/usr/sbin/
|
||||||
|
$(INSTALL_BIN) ./files/etc/init.d/bbf_configd $(1)/etc/init.d/bbf_configd
|
||||||
|
endif
|
||||||
|
ifeq ($(CONFIG_BBF_CONFIGMNGR_SCRIPT_BACKEND),y)
|
||||||
|
$(INSTALL_DIR) $(1)/usr/libexec/rpcd
|
||||||
|
$(CP) $(PKG_BUILD_DIR)/utilities/files/usr/libexec/rpcd/bbf.config $(1)/usr/libexec/rpcd/bbf.config
|
||||||
|
endif
|
||||||
|
endef
|
||||||
|
|
||||||
define Build/InstallDev
|
define Build/InstallDev
|
||||||
$(INSTALL_DIR) $(1)/usr/lib
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
$(INSTALL_DIR) $(1)/usr/include
|
$(INSTALL_DIR) $(1)/usr/include
|
||||||
|
|
@ -143,6 +172,7 @@ define Build/InstallDev
|
||||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbfdm-api/include/*.h $(1)/usr/include/
|
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbfdm-api/include/*.h $(1)/usr/include/
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,bbf_configmngr))
|
||||||
$(eval $(call BuildPackage,libbbfdm-api))
|
$(eval $(call BuildPackage,libbbfdm-api))
|
||||||
$(eval $(call BuildPackage,libbbfdm))
|
$(eval $(call BuildPackage,libbbfdm))
|
||||||
$(eval $(call BuildPackage,bbfdmd))
|
$(eval $(call BuildPackage,bbfdmd))
|
||||||
|
|
|
||||||
19
bbfdm/bbf_configmngr.in
Normal file
19
bbfdm/bbf_configmngr.in
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
if PACKAGE_bbf_configmngr
|
||||||
|
choice
|
||||||
|
prompt "Select backend daemon for bbf.config"
|
||||||
|
default BBF_CONFIGMNGR_C_BACKEND
|
||||||
|
help
|
||||||
|
Select which backend daemon should be used for ubus bbf.config
|
||||||
|
|
||||||
|
config BBF_CONFIGMNGR_SCRIPT_BACKEND
|
||||||
|
bool "Use shell script backend"
|
||||||
|
help
|
||||||
|
Enable this option to use shell script as the backend for bbf.config. This can be useful for quick and easy scripting of configuration tasks.
|
||||||
|
|
||||||
|
config BBF_CONFIGMNGR_C_BACKEND
|
||||||
|
bool "Use C code backend"
|
||||||
|
help
|
||||||
|
Enable this option to use a C code implementation as the backend for bbf.config. This option is generally preferred for performance-critical tasks and scenarios requiring more robust and efficient handling.
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
endif
|
||||||
15
bbfdm/files/etc/init.d/bbf_configd
Normal file
15
bbfdm/files/etc/init.d/bbf_configd
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
#!/bin/sh /etc/rc.common
|
||||||
|
|
||||||
|
START=64
|
||||||
|
STOP=10
|
||||||
|
|
||||||
|
USE_PROCD=1
|
||||||
|
PROG=/usr/sbin/bbf_configd
|
||||||
|
|
||||||
|
start_service()
|
||||||
|
{
|
||||||
|
procd_open_instance "bbf_configd"
|
||||||
|
procd_set_param command ${PROG}
|
||||||
|
procd_set_param respawn
|
||||||
|
procd_close_instance "bbf_configd"
|
||||||
|
}
|
||||||
Loading…
Add table
Reference in a new issue