Nonce aging has been repaired

Eric S. Raymond esr at
Tue Dec 20 16:42:02 UTC 2016

Hal Murray <hmurray at>:
> Note that it is using the old nonce.

I had to stare at this for quite a while before I figured it out.

When I switched from the old C code's buggy use of a counter to
trigger the new nonce request to a timeout, I also needed to invert
the order of operation of the nonce request and the MRU fragment
request from the way C ntpq did it.  It was kinda subtle.

I think you'll find it works better now.  There's a fair chance this
fixes Sanjeev's tracker bug #206, too.

> That code also processes maxlstint, but it's not documented and I haven't 
> tracked down what that does.  (It's in ntp_control so it does something.)

It's a way to filter out packets from peers that haven't polled within
a specified time, I think.

I'm going to have a look at improving that documentation today. It's
in a rather parlous state.
		<a href="">Eric S. Raymond</a>

More information about the devel mailing list