From: Miroslav Lichvar Date: Tue, 6 Apr 2021 16:05:54 +0000 (+0200) Subject: ntp: fix loop test for special reference modes X-Git-Tag: 4.1-pre1~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2ca2c853655801488f7cafac57f94965d0d2ce65;p=thirdparty%2Fchrony.git ntp: fix loop test for special reference modes It is not sufficient to check for disabled server sockets as they are not open only after the special reference modes end (e.g. initstepslew). Fixes: 004986310d2a ("ntp: skip loop test if no server socket is open") --- diff --git a/ntp_core.c b/ntp_core.c index f4b0f1ca..68176ec0 100644 --- a/ntp_core.c +++ b/ntp_core.c @@ -1381,9 +1381,8 @@ check_sync_loop(NCR_Instance inst, NTP_Packet *message, NTP_Local_Address *local NTP_Leap leap_status; uint32_t our_ref_id; - /* Check if a server socket is open, i.e. a client or peer can actually - be synchronised to us */ - if (!NIO_IsServerSocketOpen()) + /* Check if a client or peer can be synchronised to us */ + if (!NIO_IsServerSocketOpen() || REF_GetMode() != REF_ModeNormal) return 1; /* Check if the source indicates that it is synchronised to our address