#!/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
+}