xref: /netbsd-src/external/bsd/ntp/dist/scripts/deprecated/ntp-status (revision 8585484ef87f5a04d32332313cdb799625f4faf8)
1*8585484eSchristos#!/bin/sh
2*8585484eSchristos
3*8585484eSchristos# From: Marc Brett <Marc.Brett@westgeo.com>
4*8585484eSchristos
5*8585484eSchristos# Here's a quick hack which can give you the stratum, delay, offset
6*8585484eSchristos# for any number of ntp servers.
7*8585484eSchristos
8*8585484eSchristosNTPDATE=/usr/local/bin/ntpdate
9*8585484eSchristosNSLOOKUP=/usr/sbin/nslookup
10*8585484eSchristosEGREP=/bin/egrep
11*8585484eSchristosAWK=/bin/awk
12*8585484eSchristosRM=/bin/rm
13*8585484eSchristosFILE=/tmp/ntp.$$
14*8585484eSchristos
15*8585484eSchristosUSAGE="Usage: $0 hostname [hostname ...]"
16*8585484eSchristos
17*8585484eSchristosif [ $# -le 0 ]
18*8585484eSchristosthen
19*8585484eSchristos	echo $USAGE 2>&1
20*8585484eSchristos	exit 1
21*8585484eSchristosfi
22*8585484eSchristos
23*8585484eSchristostrap '$RM -f $FILE; exit' 1 2 3 4 13 15
24*8585484eSchristos
25*8585484eSchristosfor HOST in $*
26*8585484eSchristosdo
27*8585484eSchristos    HOSTNAME=`$NSLOOKUP $HOST | $EGREP "Name:" | $AWK '{print $2}'`
28*8585484eSchristos    if [ -n "$HOSTNAME" ]
29*8585484eSchristos    then
30*8585484eSchristos	$NTPDATE -d $HOST 2>/dev/null | $EGREP '^stratum|^delay|^offset|^originate' > $FILE
31*8585484eSchristos	STRATUM=`$EGREP '^stratum' $FILE | $AWK '{print $2}'`
32*8585484eSchristos	OFFSET=`$EGREP '^offset' $FILE | $AWK '{print $2}'`
33*8585484eSchristos	DELAY=`$EGREP '^delay' $FILE | $AWK '{print $2}'`
34*8585484eSchristos	TIMESTAMP=`$EGREP '^originate' $FILE | $AWK '{print $4 " " $5 " " $6 " " $7 " " $8}'`
35*8585484eSchristos	if [ "$STRATUM" -ne 0 ]
36*8585484eSchristos	then
37*8585484eSchristos		echo "$HOSTNAME: stratum:$STRATUM delay:$DELAY offset:$OFFSET  $TIMESTAMP"
38*8585484eSchristos	else
39*8585484eSchristos		echo $HOSTNAME: Not running NTP
40*8585484eSchristos	fi
41*8585484eSchristos    fi
42*8585484eSchristos
43*8585484eSchristosdone
44*8585484eSchristos
45*8585484eSchristos$RM -f $FILE
46