|
|
|
@ -20,65 +20,61 @@
|
|
|
|
|
|
|
|
|
|
# read configuration: |
|
|
|
|
if [ -r /etc/conf/clockspeed ] ; then |
|
|
|
|
. /etc/conf/clockspeed |
|
|
|
|
. /etc/conf/clockspeed |
|
|
|
|
else |
|
|
|
|
echo "$0: configuration error: unable to read /etc/conf/clockspeed" |
|
|
|
|
exit 1 |
|
|
|
|
echo "$0: configuration error: unable to read /etc/conf/clockspeed" |
|
|
|
|
exit 1 |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
# clock_pick function: |
|
|
|
|
clock_pick() |
|
|
|
|
{ |
|
|
|
|
case ${CLOCK_TYPE} in |
|
|
|
|
ntp|NTP) |
|
|
|
|
D_bindir/sntpclock "${CLOCK_IP}" |
|
|
|
|
;; |
|
|
|
|
tai|TAI) |
|
|
|
|
D_bindir/taiclock "${CLOCK_IP}" |
|
|
|
|
;; |
|
|
|
|
*) |
|
|
|
|
echo "$0: configuration error: CLOCK_TYPE not recognized" |
|
|
|
|
exit 1; |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
clock_pick() { |
|
|
|
|
case "${CLOCK_TYPE}" in |
|
|
|
|
ntp|NTP) D_bindir/sntpclock "${CLOCK_IP}" |
|
|
|
|
;; |
|
|
|
|
tai|TAI) D_bindir/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:" |
|
|
|
|
D_bindir/clockview < /var/state/clockspeed/atto |
|
|
|
|
;; |
|
|
|
|
m|mark) |
|
|
|
|
echo "Obtaining new calibration mark from master server at ${CLOCK_IP}:" |
|
|
|
|
clock_pick | tee /var/state/clockspeed/adjust | D_bindir/clockview |
|
|
|
|
;; |
|
|
|
|
s|sync) |
|
|
|
|
echo "Setting system clock with master server at ${CLOCK_IP}:" |
|
|
|
|
clock_pick | D_bindir/clockadd && \ |
|
|
|
|
clock_pick | D_bindir/clockview |
|
|
|
|
;; |
|
|
|
|
v|view) |
|
|
|
|
echo "Checking system clock against master server at ${CLOCK_IP} (clockview):" |
|
|
|
|
clock_pick | D_bindir/clockview |
|
|
|
|
;; |
|
|
|
|
h|help) |
|
|
|
|
cat <<END_HELP |
|
|
|
|
clockspeed control: |
|
|
|
|
atto -- inspect current "attoseconds" |
|
|
|
|
mark -- obtain new calibration mark for clockspeed |
|
|
|
|
sync -- set the system clock with master time server |
|
|
|
|
view -- check system clock against master time server |
|
|
|
|
help -- this screen |
|
|
|
|
END_HELP |
|
|
|
|
;; |
|
|
|
|
|
|
|
|
|
*) |
|
|
|
|
echo "Usage: $0 [ a|atto | m|mark | s|sync | v|view | h|help ]" |
|
|
|
|
exit 1 |
|
|
|
|
;; |
|
|
|
|
case "$1" in |
|
|
|
|
a|atto) |
|
|
|
|
echo "Viewing current attoseconds in hardware tick:" |
|
|
|
|
D_bindir/clockview < /var/state/clockspeed/atto |
|
|
|
|
;; |
|
|
|
|
m|mark) |
|
|
|
|
echo "Obtaining new calibration mark from master server at ${CLOCK_IP}:" |
|
|
|
|
clock_pick | tee /var/state/clockspeed/adjust | D_bindir/clockview |
|
|
|
|
;; |
|
|
|
|
s|sync) |
|
|
|
|
echo "Setting system clock with master server at ${CLOCK_IP}:" |
|
|
|
|
clock_pick | D_bindir/clockadd && \ |
|
|
|
|
clock_pick | D_bindir/clockview |
|
|
|
|
;; |
|
|
|
|
v|view) |
|
|
|
|
echo "Checking system clock against master server at ${CLOCK_IP} (clockview):" |
|
|
|
|
clock_pick | D_bindir/clockview |
|
|
|
|
;; |
|
|
|
|
h|help) |
|
|
|
|
cat <<-EOT |
|
|
|
|
clockspeed control: |
|
|
|
|
atto -- inspect current "attoseconds" |
|
|
|
|
mark -- obtain new calibration mark for clockspeed |
|
|
|
|
sync -- set the system clock with master time server |
|
|
|
|
view -- check system clock against master time server |
|
|
|
|
help -- this screen |
|
|
|
|
EOT |
|
|
|
|
exit 0 |
|
|
|
|
;; |
|
|
|
|
*) |
|
|
|
|
echo "Usage: $0 [ a|atto | m|mark | s|sync | v|view | h|help ]" |
|
|
|
|
exit 1 |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
exit 0 |
|
|
|
|
### that's all, folks! |
|
|
|
|