xref: /freebsd/libexec/rc/rc.d/ntpdate (revision 0696600c41600d80bcd993bfd8e675d0ae6951fe)
1*0696600cSBjoern A. Zeeb#!/bin/sh
2*0696600cSBjoern A. Zeeb#
3*0696600cSBjoern A. Zeeb# $FreeBSD$
4*0696600cSBjoern A. Zeeb#
5*0696600cSBjoern A. Zeeb
6*0696600cSBjoern A. Zeeb# PROVIDE: ntpdate
7*0696600cSBjoern A. Zeeb# REQUIRE: NETWORKING syslogd
8*0696600cSBjoern A. Zeeb# KEYWORD: nojail
9*0696600cSBjoern A. Zeeb
10*0696600cSBjoern A. Zeeb. /etc/rc.subr
11*0696600cSBjoern A. Zeeb
12*0696600cSBjoern A. Zeebname="ntpdate"
13*0696600cSBjoern A. Zeebdesc="Set the date and time via NTP"
14*0696600cSBjoern A. Zeebrcvar="ntpdate_enable"
15*0696600cSBjoern A. Zeebstop_cmd=":"
16*0696600cSBjoern A. Zeebstart_cmd="ntpdate_start"
17*0696600cSBjoern A. Zeeb
18*0696600cSBjoern A. Zeebntpdate_start()
19*0696600cSBjoern A. Zeeb{
20*0696600cSBjoern A. Zeeb	if [ -z "$ntpdate_hosts" -a -f "$ntpdate_config" ]; then
21*0696600cSBjoern A. Zeeb		ntpdate_hosts=`awk '
22*0696600cSBjoern A. Zeeb			/^server[ \t]*127.127/      {next}
23*0696600cSBjoern A. Zeeb			/^(server|peer|pool)/       {
24*0696600cSBjoern A. Zeeb			    if ($2 ~/^-/)           {print $3}
25*0696600cSBjoern A. Zeeb			    else                    {print $2}}
26*0696600cSBjoern A. Zeeb		' < "$ntpdate_config"`
27*0696600cSBjoern A. Zeeb	fi
28*0696600cSBjoern A. Zeeb	if [ -n "$ntpdate_hosts" -o -n "$rc_flags" ]; then
29*0696600cSBjoern A. Zeeb		echo "Setting date via ntp."
30*0696600cSBjoern A. Zeeb		${ntpdate_program:-ntpdate} $rc_flags $ntpdate_hosts
31*0696600cSBjoern A. Zeeb	fi
32*0696600cSBjoern A. Zeeb}
33*0696600cSBjoern A. Zeeb
34*0696600cSBjoern A. Zeebload_rc_config $name
35*0696600cSBjoern A. Zeebrun_rc_command "$1"
36