|
@ -8,7 +8,7 @@ NAME=gpsd |
|
|
|
|
|
|
|
|
validate_section_gpsd() |
|
|
validate_section_gpsd() |
|
|
{ |
|
|
{ |
|
|
uci_validate_section gpsd gpsd "${1}" \ |
|
|
|
|
|
|
|
|
uci_load_validate gpsd gpsd "$1" "$2" \ |
|
|
'enabled:bool:1' \ |
|
|
'enabled:bool:1' \ |
|
|
'device:string' \ |
|
|
'device:string' \ |
|
|
'listen_globally:bool:0' \ |
|
|
'listen_globally:bool:0' \ |
|
@ -17,21 +17,19 @@ validate_section_gpsd() |
|
|
|
|
|
|
|
|
gpsd_instance() |
|
|
gpsd_instance() |
|
|
{ |
|
|
{ |
|
|
local device enabled listen_globally port |
|
|
|
|
|
|
|
|
|
|
|
validate_section_gpsd "${1}" || { |
|
|
|
|
|
|
|
|
[ "$2" = 0 ] || { |
|
|
echo "validation failed" |
|
|
echo "validation failed" |
|
|
return 1 |
|
|
return 1 |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
[ "${enabled}" = "0" ] && return 1 |
|
|
|
|
|
|
|
|
[ "$enabled" = "0" ] && return 1 |
|
|
|
|
|
|
|
|
procd_open_instance |
|
|
procd_open_instance |
|
|
procd_set_param command "$PROG" -N -n |
|
|
procd_set_param command "$PROG" -N -n |
|
|
|
|
|
|
|
|
[ "${listen_globally}" -ne 0 ] && procd_append_param command -G |
|
|
|
|
|
procd_append_param command -S "${port}" |
|
|
|
|
|
procd_append_param command "${device}" |
|
|
|
|
|
|
|
|
[ "$listen_globally" -ne 0 ] && procd_append_param command -G |
|
|
|
|
|
procd_append_param command -S "$port" |
|
|
|
|
|
procd_append_param command "$device" |
|
|
procd_set_param respawn |
|
|
procd_set_param respawn |
|
|
|
|
|
|
|
|
procd_close_instance |
|
|
procd_close_instance |
|
@ -39,6 +37,11 @@ gpsd_instance() |
|
|
|
|
|
|
|
|
start_service() |
|
|
start_service() |
|
|
{ |
|
|
{ |
|
|
config_load "${NAME}" |
|
|
|
|
|
config_foreach gpsd_instance gpsd |
|
|
|
|
|
|
|
|
config_load "$NAME" |
|
|
|
|
|
config_foreach validate_section_gpsd gpsd gpsd_instance |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
service_triggers() { |
|
|
|
|
|
procd_add_reload_trigger "$NAME" |
|
|
|
|
|
procd_add_validation validate_section_gpsd |
|
|
} |
|
|
} |