Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 May 2002 22:10:34 -0400
From:      BsdWins <jwd@bsdwins.com>
To:        Current List <freebsd-current@FreeBSD.org>
Cc:        David Malone <dwmalone@maths.tcd.ie>
Subject:   Re: Inetd configuration message logging (or lack thereof)
Message-ID:  <20020521221034.A67885@bsdwins.com>
In-Reply-To: <20020519195114.GA32879@walton.maths.tcd.ie>; from dwmalone@maths.tcd.ie on Sun, May 19, 2002 at 08:51:14PM %2B0100
References:  <20020518185131.A86082@FreeBSD.org> <20020519195114.GA32879@walton.maths.tcd.ie>

next in thread | previous in thread | raw e-mail | index | archive | help
----- David Malone's Original Message -----
> On Sat, May 18, 2002 at 06:51:31PM -0700, John De Boskey wrote:
> >     Comments on the following patch. The messages
> > are invisible with a default install. This patch
> > gets them into /var/log/messages where they can be
> > seen.
> 
> I have a different fix for this at home, included below. It uses
> syslog's LOG_PERROR flag when initially calling openlog. It then
> reopens the log without the LOG_PERROR when/if it becomes a daemon.
> 
> 	David.

Merged patch works like a charm.  Invalid config lines are
sent to syslog() at init time and inetd -d now outputs all
(debug) info to the console.

-John


RCS file: /home/ncvs/src/usr.sbin/inetd/inetd.c,v
retrieving revision 1.96
diff -u -r1.96 inetd.c
--- inetd.c     8 May 2002 17:20:08 -0000       1.96
+++ inetd.c     20 May 2002 03:01:13 -0000
@@ -317,7 +317,7 @@
        const char *servname;
        int error;

-       openlog("inetd", LOG_PID | LOG_NOWAIT, LOG_DAEMON);
+       openlog("inetd", LOG_PID | LOG_NOWAIT | LOG_PERROR, LOG_DAEMON);

        while ((ch = getopt(argc, argv, "dlwWR:a:c:C:p:")) != -1)
                switch(ch) {
@@ -434,6 +434,9 @@
                if (daemon(0, 0) < 0) {
                        syslog(LOG_WARNING, "daemon(0,0) failed: %m");
                }
+               /* From now on we don't want syslog messages going to stderr. */
+               closelog();
+               openlog("inetd", LOG_PID | LOG_NOWAIT, LOG_DAEMON);
                /*
                 * In case somebody has started inetd manually, we need to
                 * clear the logname, so that old servers run as root do not
@@ -1613,7 +1616,7 @@
        }
         if (strncmp(sep->se_proto, "rpc/", 4) == 0) {
                if (no_v4bind != 0) {
-                       syslog(LOG_INFO, "IPv4 bind is ignored for %s",
+                       syslog(LOG_NOTICE, "IPv4 bind is ignored for %s",
                               sep->se_service);
                        freeconfig(sep);
                        goto more;
@@ -1654,7 +1657,7 @@
 #ifdef INET6
                if (sep->se_proto[strlen(sep->se_proto) - 1] == '6') {
                        if (no_v6bind != 0) {
-                               syslog(LOG_INFO, "IPv6 bind is ignored for %s",
+                               syslog(LOG_NOTICE, "IPv6 bind is ignored for %s",
                                       sep->se_service);
                                freeconfig(sep);
                                goto more;
@@ -1686,7 +1689,7 @@
 #endif
        { /* default to v4 bind if not v6 bind */
                if (no_v4bind != 0) {
-                       syslog(LOG_INFO, "IPv4 bind is ignored for %s",
+                       syslog(LOG_NOTICE, "IPv4 bind is ignored for %s",
                               sep->se_service);
                        freeconfig(sep);
                        goto more;




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020521221034.A67885>