System: ntp version 3.4 Patch #: 12 Priority: From: Description: Had my head on backwards with a reversed test in the clockhopper avoidance code. Need to switch to the first selected clock when its stratum is lower than the current sys.peer. Repeat-By: Fix: From rn, say "| patch -p -N -d DIR", where DIR is your ntp source directory. Outside of rn, say "cd DIR; patch -p -N #define PATCHLEVEL 12 Index: ntp_proto.c *** ntp_proto.c.old Wed May 3 23:52:14 1989 --- ntp_proto.c Wed May 3 23:52:24 1989 *************** *** 1,5 **** #ifndef lint ! static char *rcsid = "$Source: /usr/users/louie/ntp/RCS/ntp_proto.c,v $ $Revision: 3.4.1.10 $ $Date: 89/05/03 19:03:02 $"; #endif /* --- 1,5 ---- #ifndef lint ! static char *rcsid = "$Source: /usr/users/louie/ntp/RCS/ntp_proto.c,v $ $Revision: 3.4.1.11 $ $Date: 89/05/03 23:51:30 $"; #endif /* *************** *** 11,16 **** --- 11,21 ---- /* * $Log: ntp_proto.c,v $ + * Revision 3.4.1.11 89/05/03 23:51:30 louie + * Had my head on backwards with a reversed test in the clockhopper avoidance + * code. Need to switch to the first selected clock when its stratum is lower + * than the current sys.peer. + * * Revision 3.4.1.10 89/05/03 19:03:02 louie * Stupid typo - dereferenced unused variable in select_clock() * *************** *** 1041,1051 **** /* * Check to see if current peer is on the list of candidate peers. If * don't change sys.peer. Note that if the first selected clock is ! * at a higher stratum, don't even bother; we're going to want to * switch to it. */ if (sys.peer != NULL && ! (sys.peer->stratum > sel_lst[0].peer->stratum)) { for (i = 0; i < candidates; i++) { if (sys.peer == sel_lst[i].peer) { /* --- 1046,1056 ---- /* * Check to see if current peer is on the list of candidate peers. If * don't change sys.peer. Note that if the first selected clock is ! * at a lower stratum, don't even bother; we're going to want to * switch to it. */ if (sys.peer != NULL && ! (sys.peer->stratum <= sel_lst[0].peer->stratum)) { for (i = 0; i < candidates; i++) { if (sys.peer == sel_lst[i].peer) { /*