[ntp:questions] reftime > xmt in server reply valid?

Dave Hart davehart at gmail.com
Sat May 7 19:47:04 UTC 2011

On Thu, May 5, 2011 at 11:29 UTC, Miroslav Lichvar wrote:
> Hi,
> RFC 5905 has in section 5.1.1.:
> /*
>  * Verify valid root distance.
>  */
> if (r->rootdelay / 2 + r->rootdisp >= MAXDISP || p->reftime >
>    r->xmt)
>        return;                 /* invalid header values */
> But it seems that ntpd (at least 4.2.6p3 and 4.2.7p162) doesn't have
> the reftime > xmt check, only the distance check, is that correct?

I dug into the source code history.  The check was removed by Dr.
Mills on 2008-07-16 in ntpd/ntp_proto.c 1.274, part of a largish set
of changes identified as "Bias and interleave stuff from Dave Mills",
first seen in 4.2.5p120.  This was also during a period of
weedwhacking by Dr. Mills to bring the code in line with the
specifications.  I have included links below detailing the entire set
of changes.

It occurs to me interleaved operation involves "funny" xmt timestamps,
so it would make sense if the check were removed to avoid rejecting
legitimate interleaved traffic.  Dr. Mills, do you recall?


Dave Hart

Dave Hart

More information about the questions mailing list