# Copyright (C) 2007 OpenWrt.org
START=50
-BIN=p910nd
+append_bool() {
+ local section="$1"
+ local option="$2"
+ local value="$3"
+ local _val
+ config_get_bool _val "$section" "$option" '0'
+ [ "$_val" -gt 0 ] && append args "$3"
+}
-start_service() {
+append_string() {
local section="$1"
- config_get port "$section" port
- config_get device "$section" device
- config_get_bool bidirectional "$section" bidirectional
+ local option="$2"
+ local value="$3"
+ local _val
+ config_get _val "$section" "$option"
+ [ -n "$_val" ] && append args "$3$_val"
+}
- options=""
- [ $bidirectional -eq 1 ] && {
- options="$options -b"
- }
- options="$options -f $device $port"
+start_service() {
+ local section="$1"
+ args=""
- $BIN $options
+ append_bool "$section" bidirectional "-b"
+ append_string "$section" device "-f "
+ append_string "$section" port ""
+ config_get_bool "enabled" "$section" "enabled" '1'
+ [ "$enabled" -gt 0 ] && /usr/sbin/p910nd $args
}
stop_service() {