diff --git a/dnsmngr/Makefile b/dnsmngr/Makefile new file mode 100644 index 000000000..cf8984ad8 --- /dev/null +++ b/dnsmngr/Makefile @@ -0,0 +1,50 @@ +# +# Copyright (C) 2022-2024 IOPSYS Software Solutions AB +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=dnsmngr +PKG_VERSION:=1.0.0 + +LOCAL_DEV:=0 +ifneq ($(LOCAL_DEV),1) +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://dev.iopsys.eu/network/dnsmngr.git +PKG_SOURCE_VERSION:=3abb2b026c697b63f574bdc619e912e85ea55115 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz +PKG_MIRROR_HASH:=skip +endif + +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE + +include $(INCLUDE_DIR)/package.mk +include ../bbfdm/bbfdm.mk + +MAKE_PATH:=src + +define Package/dnsmngr + SECTION:=net + CATEGORY:=Network + DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libbbfdm-api +dnsmasq +umdns + TITLE:=Package to add Device.DNS. datamodel support +endef + +define Package/dnsmngr/description + Package to add Device.DNS. datamodel support. +endef + +ifeq ($(LOCAL_DEV),1) +define Build/Prepare + $(CP) -rf ~/git/dnsmngr/* $(PKG_BUILD_DIR)/ +endef +endif + +define Package/dnsmngr/install + $(CP) ./files/* $(1)/ + $(INSTALL_DIR) $(1)/etc/dnsmngr + $(CP) $(PKG_BUILD_DIR)/src/libdnsmngr.so $(1)/etc/dnsmngr +endef + +$(eval $(call BuildPackage,dnsmngr)) diff --git a/dnsmngr/files/etc/dnsmngr/input.json b/dnsmngr/files/etc/dnsmngr/input.json new file mode 100755 index 000000000..30cb27506 --- /dev/null +++ b/dnsmngr/files/etc/dnsmngr/input.json @@ -0,0 +1,15 @@ +{ + "daemon": { + "input": { + "type": "DotSo", + "name": "/etc/dnsmngr/libdnsmngr.so" + }, + "output": { + "type": "UBUS", + "name": "bbfdm.dns.", + "parent_dm": "Device.", + "object": "DNS", + "root_obj": "bbfdm" + } + } +} diff --git a/dnsmngr/files/etc/init.d/dnsmngr b/dnsmngr/files/etc/init.d/dnsmngr new file mode 100755 index 000000000..49a1d1a36 --- /dev/null +++ b/dnsmngr/files/etc/init.d/dnsmngr @@ -0,0 +1,13 @@ +#!/bin/sh /etc/rc.common + +START=61 +STOP=01 + +. /etc/bbfdm/bbfdm_services.sh + +USE_PROCD=1 +DNSMNGR_JSON_INPUT="/etc/dnsmngr/input.json" + +start_service() { + bbfdm_add_service "bbfdm.dnsmngr" "${DNSMNGR_JSON_INPUT}" +}