ntp: allow presend of zero
Don't use zero as a special value for disabled and change the default presend to a value larger than any valid poll.
This commit is contained in:
parent
2b3d64c31d
commit
90229984cf
2 changed files with 4 additions and 6 deletions
|
@ -508,8 +508,8 @@ NCR_GetInstance(NTP_Remote_Address *remote_addr, NTP_Source_Type type, SourcePar
|
|||
|
||||
/* Presend doesn't work in symmetric mode */
|
||||
result->presend_minpoll = params->presend_minpoll;
|
||||
if (result->presend_minpoll && result->mode != MODE_CLIENT)
|
||||
result->presend_minpoll = 0;
|
||||
if (result->presend_minpoll <= MAX_POLL && result->mode != MODE_CLIENT)
|
||||
result->presend_minpoll = MAX_POLL + 1;
|
||||
|
||||
result->max_delay = params->max_delay;
|
||||
result->max_delay_ratio = params->max_delay_ratio;
|
||||
|
@ -1052,9 +1052,7 @@ transmit_timeout(void *arg)
|
|||
sending an NTP exchange to ensure both ends' ARP caches are
|
||||
primed or whether we need to send two packets first to ensure a
|
||||
server in the interleaved mode has a fresh timestamp for us. */
|
||||
if ((inst->presend_minpoll > 0) &&
|
||||
(inst->presend_minpoll <= inst->local_poll) &&
|
||||
!inst->presend_done) {
|
||||
if (inst->presend_minpoll <= inst->local_poll && !inst->presend_done) {
|
||||
inst->presend_done = inst->interleaved ? 2 : 1;
|
||||
} else if (inst->presend_done > 0) {
|
||||
inst->presend_done--;
|
||||
|
|
|
@ -54,7 +54,7 @@ typedef struct {
|
|||
#define SRC_DEFAULT_PORT 123
|
||||
#define SRC_DEFAULT_MINPOLL 6
|
||||
#define SRC_DEFAULT_MAXPOLL 10
|
||||
#define SRC_DEFAULT_PRESEND_MINPOLL 0
|
||||
#define SRC_DEFAULT_PRESEND_MINPOLL 100
|
||||
#define SRC_DEFAULT_MAXDELAY 3.0
|
||||
#define SRC_DEFAULT_MAXDELAYRATIO 0.0
|
||||
#define SRC_DEFAULT_MAXDELAYDEVRATIO 10.0
|
||||
|
|
Loading…
Reference in a new issue