summaryrefslogtreecommitdiff
path: root/scripts/ntpd-set.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/ntpd-set.sh')
-rwxr-xr-xscripts/ntpd-set.sh27
1 files changed, 11 insertions, 16 deletions
diff --git a/scripts/ntpd-set.sh b/scripts/ntpd-set.sh
index 3581d2421..d6fd8f25b 100755
--- a/scripts/ntpd-set.sh
+++ b/scripts/ntpd-set.sh
@@ -1,30 +1,25 @@
#!/bin/sh
max_attempts=4
-try_count=0
# This script takes a list of ntp servers and passes them to ntpd to set the
# system time. If a /etc/ntpd.conf file exists, the servers there are used,
# if not, some default values are passed
set_time() {
- ntpd -n -p $1;
- return $?
+ # -q flag makes ntpd exit after setting the time once
+ ntpd -q -n -p "$1"
}
check_time() {
- for arg ; do
- echo $arg
- if set_time $arg ; then
- return 0
- fi
- done
- # In case we are doing this before the network is up, try again
- let try_count=try_count+1
- if [ $try_count -lt $max_attempts ] ; then
+ for attempt in $(seq "$max_attempts"); do
+ for arg ; do
+ echo $arg
+ if set_time "$arg" ; then
+ return 0
+ fi
+ done
sleep 2
- check_time $@
- else
- return 1
- fi
+ done
+ return 1
}
if [ -f /etc/ntpd.conf ]; then