Currently, after 4 failed constraint checks, we suspect the constraint
authorreyk <reyk@openbsd.org>
Mon, 18 May 2015 14:19:23 +0000 (14:19 +0000)
committerreyk <reyk@openbsd.org>
Mon, 18 May 2015 14:19:23 +0000 (14:19 +0000)
commitdcbb241cc7b469fea4b2fdf8415bddd778b0d685
treeee5b3628651d9b6bae7ea74a3dc8eaccd9bcae98
parentd7727fc42bc9458a74353eece9bfdd871b35c599
Currently, after 4 failed constraint checks, we suspect the constraint
of being wrong, not the NTP responses, reset it and query it from all
the constraint servers all over again.  This is turned out to be a bit
aggressive because it could get triggered with just a few bad NTP
peers in a larger pool.  To avoid constant reconnections, scale the
error margin with the number of resolved NTP peers using peer_cnt * 4.
This way a single or a few outliers in a NTP pool cannot trigger
reconnecting to the constraint servers immediately.  More NTP peers,
less reason to mistrust the constraint.

Found by dtucker@
OK deraadt@
usr.sbin/ntpd/constraint.c