]> git.ipfire.org Git - thirdparty/ntp.git/commitdiff
[Bug 3613] 'pool' directive doesn't honor 'noselect' flag
authorJuergen Perlinger <perlinger@ntp.org>
Fri, 6 Sep 2019 15:06:02 +0000 (17:06 +0200)
committerJuergen Perlinger <perlinger@ntp.org>
Fri, 6 Sep 2019 15:06:02 +0000 (17:06 +0200)
bk: 5d7275da509YjnYRjd1t7lTj7ep9wQ

ntpd/ntp_proto.c

index 793a5f3c0c669ed377f85928fc7b9b7eb278a2bf..c5c3d6c146ecc1bea2fa696f75b1d4583390e5d1 100644 (file)
@@ -78,6 +78,11 @@ nak_error_codes {
  */
 #define        POOL_SOLICIT_WINDOW     8
 
+/*
+ * flag bits propagated from pool to individual peers
+ */
+#define POOL_FLAG_PMASK                (FLAG_IBURST | FLAG_NOSELECT)
+
 /*
  * peer_select groups statistics for a peer used by clock_select() and
  * clock_cluster().
@@ -1386,11 +1391,8 @@ receive(
                peer = newpeer(&rbufp->recv_srcadr, NULL, rbufp->dstadr,
                               r4a.ippeerlimit, MODE_CLIENT, hisversion,
                               peer2->minpoll, peer2->maxpoll,
-                              (  FLAG_PREEMPT
-                               | (FLAG_IBURST & peer2->flags)
-                               | (FLAG_NOSELECT & peer2->flags)
-                              ),
-                              MDF_UCAST | MDF_UCLNT, 0, skeyid, sys_ident);
+                              (FLAG_PREEMPT | (POOL_FLAG_PMASK & peer2->flags)),
+                              (MDF_UCAST | MDF_UCLNT), 0, skeyid, sys_ident);
                if (NULL == peer) {
                        DPRINTF(2, ("receive: AM_MANYCAST drop: duplicate\n"));
                        sys_declined++;