relevant portion of radiusd.conf:

log_destination = syslog
log {
 # Yes, I read the comment about changing this.
 syslog_facility = local1
}

Using the latest code from CVS on RedHat Linux 8.0, the syslog_facility
directive is seemingly ignored and all messages go to /var/log/messages
regardless of the setting. The call to syslog in log.c does not OR the
level with the facility, so messages are sent to the default facility.
That would be fine if openlog were called to set the configured
facility, but it resides in rlm_pam.c where it never gets called for my
config. The following simple change to log.c resolves the problem, but I
suspect it would be preferable to move the openlog call.

--- log.c       2004-08-31 14:48:34.000000000 -0700
+++ log.c.patched       2004-08-31 14:31:53.000000000 -0700
@@ -194,7 +194,7 @@
                                lvl = LOG_ERR;
                                break;
                }
-               syslog(lvl, "%s", buffer + len); /* don't print
timestamp */
+               syslog(lvl | mainconfig.syslog_facility, "%s", buffer +
len); /* don't print timestamp */
        }
 #endif
 



- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to