On Wed, May 20, 2020 at 09:29:54PM -0400, sven falempin wrote: > ? Will it goes into base this time ?
I need an OK from a developer. Anyone? bluhm > On Mon, May 18, 2020 at 5:31 AM Alexander Bluhm <[email protected]> > > Index: usr.sbin/syslogd/syslogd.c > > =================================================================== > > RCS file: /data/mirror/openbsd/cvs/src/usr.sbin/syslogd/syslogd.c,v > > retrieving revision 1.262 > > diff -u -p -r1.262 syslogd.c > > --- usr.sbin/syslogd/syslogd.c 5 Jul 2019 13:23:27 -0000 1.262 > > +++ usr.sbin/syslogd/syslogd.c 9 Feb 2020 20:25:20 -0000 > > @@ -853,20 +853,6 @@ main(int argc, char *argv[]) > > event_add(ev_udp, NULL); > > if (fd_udp6 != -1) > > event_add(ev_udp6, NULL); > > - } else { > > - /* > > - * If generic UDP file descriptors are used neither > > - * for receiving nor for sending, close them. Then > > - * there is no useless *.514 in netstat. > > - */ > > - if (fd_udp != -1 && !send_udp) { > > - close(fd_udp); > > - fd_udp = -1; > > - } > > - if (fd_udp6 != -1 && !send_udp6) { > > - close(fd_udp6); > > - fd_udp6 = -1; > > - } > > } > > for (i = 0; i < nbind; i++) > > if (fd_bind[i] != -1) > > @@ -2416,6 +2402,7 @@ init(void) > > s = 0; > > strlcpy(progblock, "*", sizeof(progblock)); > > strlcpy(hostblock, "*", sizeof(hostblock)); > > + send_udp = send_udp6 = 0; > > while (getline(&cline, &s, cf) != -1) { > > /* > > * check for end-of-section, comments, strip off trailing > > @@ -2508,6 +2495,22 @@ init(void) > > Initialized = 1; > > dropped_warn(&init_dropped, "during initialization"); > > > > + if (SecureMode) { > > + /* > > + * If generic UDP file descriptors are used neither > > + * for receiving nor for sending, close them. Then > > + * there is no useless *.514 in netstat. > > + */ > > + if (fd_udp != -1 && !send_udp) { > > + close(fd_udp); > > + fd_udp = -1; > > + } > > + if (fd_udp6 != -1 && !send_udp6) { > > + close(fd_udp6); > > + fd_udp6 = -1; > > + } > > + } > > + > > if (Debug) { > > SIMPLEQ_FOREACH(f, &Files, f_next) { > > for (i = 0; i <= LOG_NFACILITIES; i++) > > @@ -2755,6 +2758,13 @@ cfline(char *line, char *progblock, char > > sizeof(f->f_un.f_forw.f_addr)) != 0) { > > log_warnx("bad hostname \"%s\"", > > f->f_un.f_forw.f_loghost); > > + /* DNS lookup may work after SIGHUP, keep sockets > > */ > > + if (strcmp(proto, "udp") == 0) > > + send_udp = send_udp6 = 1; > > + else if (strcmp(proto, "udp4") == 0) > > + send_udp = 1; > > + else if (strcmp(proto, "udp6") == 0) > > + send_udp6 = 1; > > break; > > } > > f->f_file = -1; > >
