rng-tools: Fixup Makefile and initscript 3503/head
authorStefan Hellermann <stefan@the2masters.de>
Wed, 9 Nov 2016 17:41:13 +0000 (18:41 +0100)
committerStefan Hellermann <stefan@the2masters.de>
Thu, 10 Nov 2016 09:33:22 +0000 (10:33 +0100)
- typo in path of uci-defaults scripts
- fix init script when there is no rngd config
- convert init script to procd

Signed-off-by: Stefan Hellermann <stefan@the2masters.de>
utils/rng-tools/Makefile
utils/rng-tools/files/rngd.init

index 0aad15b52a00c70eb27d39cf604e34cda00c38f5..d69832759188fba27828e109ee2ceef6f33ac807 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=rng-tools
 PKG_VERSION:=5
-PKG_RELEASE:=4
+PKG_RELEASE:=5
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=@SF/gkernel/rng-tools/$(PKG_VERSION)/
@@ -52,8 +52,8 @@ CONFIGURE_ARGS += \
 define Package/rng-tools/install
        $(INSTALL_DIR) $(1)/etc/init.d
        $(INSTALL_BIN) ./files/rngd.init $(1)/etc/init.d/rngd
-       $(INSTALL_DIR) $(1)/etc/uci_defaults
-       $(INSTALL_BIN) ./files/rngd.uci_defaults $(1)/etc/uci_defaults/rngd
+       $(INSTALL_DIR) $(1)/etc/uci-defaults
+       $(INSTALL_BIN) ./files/rngd.uci_defaults $(1)/etc/uci-defaults/rngd
        $(INSTALL_DIR) $(1)/usr/bin
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/rngtest $(1)/usr/bin/
        $(INSTALL_DIR) $(1)/sbin
index e18288e53b9d64c8938164d6e230463179d177a0..c9cead3bc8fc730fc4e88b3c69e6f45ae4f2155b 100644 (file)
@@ -3,22 +3,24 @@
 
 START=98
 
-RNGD_FILLWATER=$(uci -q get system.@rngd[0].fill_watermark)
-RNGD_DEVICE=$(uci -q get system.@rngd[0].device)
-RNGD_ENABLED=$(uci -q get system.@rngd[0].enabled)
-RNGD_PRECMD=$(uci -q get system.@rngd[0].precmd)
+USE_PROCD=1
+PROG=/sbin/rngd
 
-: ${RNGD_FILLWATER:=4000}
+start_service() {
+       local enabled=$(uci -q get system.@rngd[0].enabled)
+       local precmd=$(uci -q get system.@rngd[0].precmd)
+       local device=$(uci -q get system.@rngd[0].device)
+       local watermark=$(uci -q get system.@rngd[0].fill_watermark)
 
-echo PRECMD=\'$RNGD_PRECMD\'
+       [ "$enabled" = "1" ] || return
 
-start() {
-    [ 1 -eq "$RNGD_ENABLED" ] && {
-      [ -z "${RNGD_PRECMD}" ] || ${RNGD_PRECMD} ${RNGD_DEVICE}
-      service_start /sbin/rngd -r ${RNGD_DEVICE} -W ${RNGD_FILLWATER}
-    }
-}
+       [ -z "$precmd" ] || ${precmd} ${device}
+
+       [ -z "$device" ] || device="-r ${device}"
+       [ -z "$watermark" ] || watermark="-W ${watermark}"
 
-stop() {
-       service_stop /sbin/rngd
+       procd_open_instance
+       procd_set_param command "$PROG" -f ${device} ${watermark}
+       procd_set_param stderr 1
+       procd_close_instance
 }