#!/bin/sh # /usr/local/bin/clockctl # interface to djb clockspeed (0.62) # wcm, 2003.11.26 - 2003.11.26 # === # read configuration: if [ -r /usr/local/etc/clockspeed.conf ] ; then . /usr/local/etc/clockspeed.conf else echo "$0: configuration error: unable to read clockspeed.conf" exit 1 fi # clock_pick function: clock_pick() { case ${CLOCK_TYPE} in ntp|NTP) ${CLOCKSPEED_BIN}/sntpclock "${CLOCK_IP}" ;; tai|TAI) ${CLOCKSPEED_BIN}/taiclock "${CLOCK_IP}" ;; *) echo "$0: configuration error: CLOCK_TYPE not recognized" exit 1; ;; esac } # process command: case $1 in a|atto) echo "Viewing current attoseconds in hardware tick:" ${CLOCKSPEED_BIN}/clockview < ${CLOCKSPEED_HOME}/etc/atto ;; m|mark) echo "Obtaining new calibration mark from master server at ${CLOCK_IP}:" clock_pick | tee ${CLOCKSPEED_HOME}/adjust | ${CLOCKSPEED_BIN}/clockview ;; s|sync) echo "Setting system clock with master server at ${CLOCK_IP}:" clock_pick | ${CLOCKSPEED_BIN}/clockadd && \ clock_pick | ${CLOCKSPEED_BIN}/clockview ;; v|view) echo "Checking system clock against master server at ${CLOCK_IP} (clockview):" clock_pick | ${CLOCKSPEED_BIN}/clockview ;; h|help) cat <