On Thu, Sep 03, 2020 at 02:02:36PM +0200, Christian Weisgerber wrote:

> Otto Moerbeek:
> 
> > Currently testing this.
> 
> For "port unreachable" replies, this caused ntpd to become unsynced, but
> the peer still remains valid.

Hmm, it looks like we need to reduce trustlevel as well for the case:
something was received but it was not a valid ntp packet. Will look
into it. Thanks for testing.

        -Otto
> 
> --------------------
> 1/1 peers valid, clock unsynced
> 
> peer
>    wt tl st  next  poll          offset       delay      jitter
> fddd:28ee:243:2:213:95ff:fe06:1bb7 ntp
>     1 10  1 1212s 3199s        -0.409ms     1.027ms     0.388ms
> --------------------
> 
> > Index: client.c
> > ===================================================================
> > RCS file: /cvs/src/usr.sbin/ntpd/client.c,v
> > retrieving revision 1.113
> > diff -u -p -r1.113 client.c
> > --- client.c        30 Jan 2020 15:55:41 -0000      1.113
> > +++ client.c        1 Sep 2020 19:15:22 -0000
> > @@ -456,7 +456,7 @@ client_dispatch(struct ntp_peer *p, u_in
> >     if (++p->shift >= OFFSET_ARRAY_SIZE)
> >             p->shift = 0;
> >  
> > -   return (0);
> > +   return (1);
> >  }
> >  
> >  int
> > Index: ntp.c
> > ===================================================================
> > RCS file: /cvs/src/usr.sbin/ntpd/ntp.c,v
> > retrieving revision 1.166
> > diff -u -p -r1.166 ntp.c
> > --- ntp.c   30 Aug 2020 16:21:29 -0000      1.166
> > +++ ntp.c   1 Sep 2020 19:15:22 -0000
> > @@ -403,12 +403,9 @@ ntp_main(struct ntpd_conf *nconf, struct
> >             for (; nfds > 0 && j < idx_clients; j++) {
> >                     if (pfd[j].revents & (POLLIN|POLLERR)) {
> >                             nfds--;
> > -                           last_action = now;
> >                             if (client_dispatch(idx2peer[j - idx_peers],
> > -                               conf->settime, conf->automatic) == -1) {
> > -                                   log_warn("pipe write error (settime)");
> > -                                   ntp_quit = 1;
> > -                           }
> > +                               conf->settime, conf->automatic) == 1)
> > +                                   last_action = now;
> >                     }
> >             }
> >  
> 
> -- 
> Christian "naddy" Weisgerber                          na...@mips.inka.de

Reply via email to