Control Agent.
endef
+###### *************************************************************************
+define Package/kea-uci
+ $(call Package/kea/Default)
+ TITLE+=UCI support
+ DEPENDS:=@(PACKAGE_kea-ctrl||PACKAGE_kea-dhcp4||PACKAGE_kea-dhcp6||PACKAGE_kea-dhcp-ddns)
+endef
+define Package/kea-uci/description
+ Kea PROCD/UCI support. This package installs a UCI config file and
+ a PROCD service file.
+endef
+
###### *************************************************************************
HOST_CONFIGURE_ARGS += \
--with-boost-include="$(STAGING_DIR_HOSTPKG)" \
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kea-shell $(1)/usr/sbin/kea-shell
endef
+define Package/kea-uci/install
+ $(INSTALL_DIR) $(1)/etc/config $(1)/etc/init.d
+ $(INSTALL_CONF) ./files/kea.config $(1)/etc/config/kea
+ $(INSTALL_BIN) ./files/kea.init $(1)/etc/init.d/kea
+endef
+
$(eval $(call HostBuild))
$(eval $(call BuildPackage,kea-libs))
$(eval $(call BuildPackage,kea-ctrl))
$(eval $(call BuildPackage,kea-lfc))
$(eval $(call BuildPackage,kea-perfdhcp))
$(eval $(call BuildPackage,kea-shell))
+$(eval $(call BuildPackage,kea-uci))
--- /dev/null
+#!/bin/sh /etc/rc.common
+
+USE_PROCD=1
+START=25
+STOP=85
+
+BIN_PATH="/usr/sbin"
+CONF_PATH="/etc/kea"
+
+start_service() {
+ config_load "kea"
+ config_foreach start_kea "service"
+}
+
+start_kea() {
+ local cfg="$1"
+
+ config_get_bool disabled "$cfg" disabled 0
+ [ "$disabled" = "0" ] || return
+
+ config_get name "$cfg" name "$cfg"
+
+ case "$name" in
+ ctrl_agent|dhcp4|dhcp6|dhcp_ddns)
+ name="${name/_/-}"
+ cmd="${BIN_PATH}/kea-${name}"
+ cnf="${CONF_PATH}/kea-${name}.conf"
+ ;;
+ *)
+ return 0
+ esac
+
+ procd_open_instance "$name"
+ procd_set_param command "$cmd" -c "$cnf"
+ procd_set_param env KEA_LOCKFILE_DIR=/tmp
+ procd_append_param env KEA_PIDFILE_DIR=/tmp
+ procd_set_param file "$cnf"
+ procd_set_param stderr 1
+ procd_set_param stdout 1
+ procd_close_instance ctrl_agent
+}