mirror of
https://gitlab.com/chrony/chrony.git
synced 2025-12-05 15:45:06 -05:00
ntp: fix poll interleaving with unsynchronised peers
Update the remote poll and remote stratum even for unsychronised peers, and handle stratum of 0 as 16, so the peers work with the opposite differences between their strata and can adjust their polling intervals in order to interleave the packets.
This commit is contained in:
@@ -1575,9 +1575,11 @@ receive_packet(NCR_Instance inst, NTP_Local_Address *local_addr,
|
||||
!UTI_CompareTimespecs(&inst->local_rx.ts, &rx_ts->ts));
|
||||
|
||||
if (valid_packet) {
|
||||
inst->remote_poll = message->poll;
|
||||
inst->remote_stratum = message->stratum != NTP_INVALID_STRATUM ?
|
||||
message->stratum : NTP_MAX_STRATUM;
|
||||
|
||||
if (synced_packet) {
|
||||
inst->remote_poll = message->poll;
|
||||
inst->remote_stratum = message->stratum;
|
||||
inst->tx_count = 0;
|
||||
SRC_UpdateReachability(inst->source, 1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user