aboutsummaryrefslogtreecommitdiff
path: root/contrib/ntp/ntpd/refclock_ulink.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ntp/ntpd/refclock_ulink.c')
-rw-r--r--contrib/ntp/ntpd/refclock_ulink.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/contrib/ntp/ntpd/refclock_ulink.c b/contrib/ntp/ntpd/refclock_ulink.c
index 5bf569a66080..1f5e78a86db7 100644
--- a/contrib/ntp/ntpd/refclock_ulink.c
+++ b/contrib/ntp/ntpd/refclock_ulink.c
@@ -248,8 +248,6 @@ ulink_receive(
* proper format, we declare bad format and exit.
*/
syncchar = leapchar = modechar = ' ';
- pp->msec = 0;
-
switch (pp->lencode ) {
case LEN33X:
/*
@@ -347,11 +345,11 @@ ulink_receive(
* T = DST <-> STD transition indicators
*
*/
- if (sscanf(pp->a_lastcode, "%c%1d%c%4d%3d%*c%2d:%2d:%2d.%2d%c",
+ if (sscanf(pp->a_lastcode, "%c%1d%c%4d%3d%*c%2d:%2d:%2d.%2ld%c",
&syncchar, &quality, &modechar, &pp->year, &pp->day,
&pp->hour, &pp->minute, &pp->second,
- &pp->msec,&leapchar) == 10) {
- pp->msec *= 10; /* M320 returns 10's of msecs */
+ &pp->nsec, &leapchar) == 10) {
+ pp->nsec *= 10000000; /* M320 returns 10's of msecs */
if (leapchar == 'I' ) leapchar = '+';
if (leapchar == 'D' ) leapchar = '-';
if (syncchar != '?' ) syncchar = ':';
@@ -487,8 +485,9 @@ ulink_poll(
refclock_report(peer, CEVNT_TIMEOUT);
return;
}
- record_clock_stats(&peer->srcadr, pp->a_lastcode);
- refclock_receive(peer);
+ pp->lastref = pp->lastrec;
+ refclock_receive(peer);
+ record_clock_stats(&peer->srcadr, pp->a_lastcode);
peer->burst = NSTAGE;
}