diff options
-rwxr-xr-x | package/base-files/files/etc/init.d/sysntpd | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/package/base-files/files/etc/init.d/sysntpd b/package/base-files/files/etc/init.d/sysntpd index bb42ef7..c40ee76 100755 --- a/package/base-files/files/etc/init.d/sysntpd +++ b/package/base-files/files/etc/init.d/sysntpd @@ -3,11 +3,11 @@ START=98 -SERVICE_DAEMONIZE=1 -SERVICE_WRITE_PID=1 +USE_PROCD=1 +PROG=/usr/sbin/ntpd SERVICE_PID_FILE=/var/run/sysntpd.pid -start() { +start_service() { local peers local args="-n" local enable_server @@ -16,22 +16,16 @@ start() { config_get peers ntp server config_get_bool enable_server ntp enable_server 0 - if [ $enable_server -ne 0 ]; then - append args "-l" - fi + [ $enable_server -eq 0 -a -z "$peers" ] && return - if [ -n "$peers" ]; then + 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 - append args "-p $peer" + procd_append_param command -p $peer done - fi - - if [ "$args" != "-n" ]; then - service_start /usr/sbin/ntpd $args - fi -} - -stop() { - service_stop /usr/sbin/ntpd + } + procd_close_instance } |