aboutsummaryrefslogtreecommitdiffstats
path: root/package/utils/busybox/files
diff options
context:
space:
mode:
authorJohn Crispin <blogic@openwrt.org>2013-11-13 10:49:41 +0000
committerJohn Crispin <blogic@openwrt.org>2013-11-13 10:49:41 +0000
commita79f9a758e1e087bbe81ea3c1cbf40d3d3c579d7 (patch)
treecf534891c81e8a86ca738f1b53c4d5669dfaf47e /package/utils/busybox/files
parent57b91e4f39beaf00aa4ccf45eaa4f455b4b346df (diff)
downloadmaster-187ad058-a79f9a758e1e087bbe81ea3c1cbf40d3d3c579d7.tar.gz
master-187ad058-a79f9a758e1e087bbe81ea3c1cbf40d3d3c579d7.tar.bz2
master-187ad058-a79f9a758e1e087bbe81ea3c1cbf40d3d3c579d7.zip
procd: convert services to the new validation api
Signed-off-by: John Crispin <blogic@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38787 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/utils/busybox/files')
-rwxr-xr-xpackage/utils/busybox/files/sysntpd30
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
}