rtl-ais: add procd validation
authorNuno Goncalves <redacted>
Sun, 13 Dec 2015 23:20:21 +0000 (23:20 +0000)
committerNuno Goncalves <redacted>
Sun, 13 Dec 2015 23:21:28 +0000 (23:21 +0000)
Signed-off-by: Nuno Goncalves <redacted>
utils/rtl-ais/Makefile
utils/rtl-ais/files/rtl_ais.init

index ed8ddd4c2dd7a798014afbeea8b050cfa1883f22..ba455571b53cfe79da0a622cae84ca24272076f9 100644 (file)
@@ -7,7 +7,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=rtl-ais
-PKG_VERSION:=20150722
+PKG_VERSION:=20151213
 
 PKG_RELEASE=$(PKG_SOURCE_VERSION)
 
index 15269b0a5f5a3aebbe7138d3b1b364754b66cd73..4900c34de3976dfae43ff071ec98414c172e6e27 100644 (file)
@@ -1,19 +1,38 @@
 #!/bin/sh /etc/rc.common
-# Copyright (C) 2015 OpenWrt.org
 
 START=99
-
 USE_PROCD=1
+
 PROG=/usr/bin/rtl_ais
 
-start_service() {
-       enabled="$(uci_get rtl_ais @rtl_ais[0] enabled 0)"
-       ppm="$(uci_get rtl_ais @rtl_ais[0] ppm 0)"
+validate_rtl_ais_section() {
+       uci_validate_section "rtl_ais" "rtl_ais" "$1" \
+               'enabled:bool' \
+               'ppm:range(-100,100):0'
+}
+
+load_rtl_ais() {
+       local cfg="$1"
+
+       local enabled ppm
+       validate_rtl_ais_section "$cfg" || { echo "validation failed"; return 1; }
 
-        [ "$enabled" != "1" ] && return
+       [ "$enabled" = "1" ] || return 1
 
         procd_open_instance
         procd_set_param command "$PROG" -p "$ppm"
+       procd_set_param stdout 1
+       procd_set_param stderr 1
         procd_set_param respawn
         procd_close_instance
 }
+
+start_service() {
+       config_load "rtl_ais"
+       config_foreach load_rtl_ais "rtl_ais"
+}
+
+service_triggers() {
+       procd_add_reload_trigger "rtl_ais"
+       procd_add_validation validate_rtl_ais_section
+}
git clone https://git.99rst.org/PROJECT