diff options
author | John Crispin <john@openwrt.org> | 2013-11-13 10:49:41 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2013-11-13 10:49:41 +0000 |
commit | 1f938570927a03713b0aae1626aebaa0db4fb4f5 (patch) | |
tree | 7f94b433f51f187eacace4f4e0cd94165fe80ebc /package/utils/busybox | |
parent | 130d7de07ffec8d9b822180aa681e66f7fa8b569 (diff) | |
download | upstream-1f938570927a03713b0aae1626aebaa0db4fb4f5.tar.gz upstream-1f938570927a03713b0aae1626aebaa0db4fb4f5.tar.bz2 upstream-1f938570927a03713b0aae1626aebaa0db4fb4f5.zip |
procd: convert services to the new validation api
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 38787
Diffstat (limited to 'package/utils/busybox')
-rwxr-xr-x | package/utils/busybox/files/sysntpd | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/package/utils/busybox/files/sysntpd b/package/utils/busybox/files/sysntpd index ebdda63df9..7ff32775b6 100755 --- a/package/utils/busybox/files/sysntpd +++ b/package/utils/busybox/files/sysntpd @@ -6,26 +6,27 @@ START=98 USE_PROCD=1 PROG=/usr/sbin/ntpd +validate_ntp_section() { + uci_validate_section system timeserver "${1}" \ + 'server:list(string)' 'enable_server:bool:0' +} + start_service() { - local peers - local args="-n" - local enable_server + local server enable_server peer - config_load system - config_get peers ntp server - config_get_bool enable_server ntp enable_server 0 + validate_ntp_section ntp || { + echo "validation failed" + return 1 + } - [ $enable_server -eq 0 -a -z "$peers" ] && return + [ $enable_server -eq 0 -a -z "$server" ] && return procd_open_instance procd_set_param command "$PROG" -n - [ $enable_server -ne 0 ] && procd_append_param command -l - [ -n "$peers" ] && { - local peer - for peer in $peers; do - procd_append_param command -p $peer - done - } + [ "$enable_server" = "1" ] && procd_append_param command -l + for peer in "$server"; do + procd_append_param command -p $peer + done procd_set_param respawn procd_close_instance } @@ -33,4 +34,5 @@ start_service() { service_triggers() { procd_add_reload_trigger "system" + procd_add_validation validate_ntp_section } |