]> git.ipfire.org Git - thirdparty/ntp.git/commitdiff
[Bug 3526] Incorrect poll interval in packet
authorJuergen Perlinger <perlinger@ntp.org>
Wed, 12 Sep 2018 20:52:00 +0000 (22:52 +0200)
committerJuergen Perlinger <perlinger@ntp.org>
Wed, 12 Sep 2018 20:52:00 +0000 (22:52 +0200)
bk: 5b997c70P9SnAWw3cqMakK4sNo-wHA

ChangeLog
ntpd/ntp_proto.c
ntpd/ntpd.c
sntp/main.c

index f381a093cf948c1202162000eaf2d8abbf1a1dcf..d33997215584fe6ccabdb71e962eabfe945500f1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+---
+* [Bug 3526] Incorrect poll interval in packet <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+
 ---
 (4.2.8p12) 2018/08/14 Released by Harlan Stenn <stenn@ntp.org>
 
index 73ada6b442ba78f32fcb779611d79224bbe87e90..eb663515b8a4b8a6dda1fdeff63543ad8d724504 100644 (file)
@@ -387,9 +387,9 @@ transmit(
         */
        if (peer->cast_flags & (MDF_BCAST | MDF_MCAST)) {
                peer->outdate = current_time;
+               poll_update(peer, hpoll);
                if (sys_leap != LEAP_NOTINSYNC)
                        peer_xmit(peer);
-               poll_update(peer, hpoll);
                return;
        }
 
@@ -408,6 +408,7 @@ transmit(
         */
        if (peer->cast_flags & MDF_ACAST) {
                peer->outdate = current_time;
+               poll_update(peer, hpoll);
                if (peer->unreach > sys_beacon) {
                        peer->unreach = 0;
                        peer->ttl = 0;
@@ -419,7 +420,6 @@ transmit(
                        peer_xmit(peer);
                }
                peer->unreach++;
-               poll_update(peer, hpoll);
                return;
        }
 
@@ -437,11 +437,11 @@ transmit(
         */
        if (peer->cast_flags & MDF_POOL) {
                peer->outdate = current_time;
+               poll_update(peer, hpoll);
                if (   (peer_associations <= 2 * sys_maxclock)
                    && (   peer_associations < sys_maxclock
                        || sys_survivors < sys_minclock))
                        pool_xmit(peer);
-               poll_update(peer, hpoll);
                return;
        }
 
@@ -549,9 +549,9 @@ transmit(
        /*
         * Do not transmit if in broadcast client mode.
         */
+       poll_update(peer, hpoll);
        if (peer->hmode != MODE_BCLIENT)
                peer_xmit(peer);
-       poll_update(peer, hpoll);
 
        return;
 }
index b477a71804bffc347b45f3ec3794c5a6bbd670ab..1dbb2f5499dc540b0a453b1b62b2e683a5eabc8a 100644 (file)
@@ -665,8 +665,7 @@ getuser:
  * Map group name/number to group ID
 */
 static int
-map_group(
-       )
+map_group(void)
 {
        char *endp;
 
@@ -691,9 +690,10 @@ getgroup:
 /*
  * Change (effective) user and group IDs, also initialize the supplementary group access list
  */
+extern int set_user_group_ids(void);
+
 int
-set_user_group_ids(
-       )
+set_user_group_ids(void)
 {
        /* If the the user was already mapped, no need to map it again */
        if ((NULL != user) && (0 == sw_uid)) {
index f0a7650ac718c102cf22b4360eff9d7ee55430ec..204d6a8de328e3057950b6f423265acc69b3277f 100644 (file)
@@ -1609,9 +1609,8 @@ gettimeofday_cached(
 }
 
 /* Dummy function to satisfy libntp/work_fork.c */
-int
-set_user_group_ids(
-       )
+extern int set_user_group_ids(void);
+int set_user_group_ids(void)
 {
     return 1;
 }