#/bin/bash
#
# test_time_diff
#
# Bestimmung der Zeitdifferenz in Sekunden zu einem anderen Server,
# der ueber einen httpget-Aufruf das Ergebnis von date '+%s' liefert.
###################################################################
#
#
if [[ -f /etc/uls/time_diff.conf ]]
 then
  . /etc/uls/time_diff.conf
fi
#
if [[ -z "$REFSERVER" ]]
 then
  echo "Kein Referenzserver konfiguriert!"
  exit 1
fi
#
if [[ -z "$REFURL" ]]
 then
  REFURL=get_date_s.s2w
fi
#
if [[ $# -lt 2 ]]
 then
  set `date '+%F %T%:z'`
fi
#
DT="$1 $2"
TZ="$3"
#
V=0
T=5
while [[ $V -lt 5 && $T -ge 3 ]]
 do
  TL=`date '+%s'`
  TR=`httpget -s $REFSERVER $REFURL`
  if [[ -z "$TR" ]]
   then
    exit 1
  fi
  T=$(( `date '+%s'` - $TL ))
  V=$(( $V + 1 ))
done
#
if [[ $T -lt 3 ]]
 then
  send_test_value System Time Diff $DT $(( $TR - $TL )) 's'
fi
