aboutsummaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorNuno Goncalves <nunojpg@gmail.com>2015-12-13 23:20:21 +0000
committerNuno Goncalves <nunojpg@gmail.com>2015-12-13 23:21:28 +0000
commit0b06f1f51cfa032125e884b0b2e811f2016faac4 (patch)
tree8714f9e26ae226774e4712cddb85bf077dc60d2a /utils
parent0444536ea6568e3c1ddde0cc4b6cad2a410daeca (diff)
rtl-ais: add procd validation
Signed-off-by: Nuno Goncalves <nunojpg@gmail.com>
Diffstat (limited to 'utils')
-rw-r--r--utils/rtl-ais/Makefile2
-rw-r--r--utils/rtl-ais/files/rtl_ais.init31
2 files changed, 26 insertions, 7 deletions
diff --git a/utils/rtl-ais/Makefile b/utils/rtl-ais/Makefile
index ed8ddd4c2..ba455571b 100644
--- a/utils/rtl-ais/Makefile
+++ b/utils/rtl-ais/Makefile
@@ -7,7 +7,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=rtl-ais
-PKG_VERSION:=20150722
+PKG_VERSION:=20151213
PKG_RELEASE=$(PKG_SOURCE_VERSION)
diff --git a/utils/rtl-ais/files/rtl_ais.init b/utils/rtl-ais/files/rtl_ais.init
index 15269b0a5..4900c34de 100644
--- a/utils/rtl-ais/files/rtl_ais.init
+++ b/utils/rtl-ais/files/rtl_ais.init
@@ -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
+}