+++ This bug was initially created as a clone of Bug #275031 +++ Description of problem: Syslogd ignores additional socket files as this one gets overwriten in : -- for (i = 0; i < nfunix; i++) { if ((fd = funix[i]) != -1 && FD_ISSET(fd, &readfds)) { memset(line, '\0', sizeof(line)); ---> i = recv(fd, line, MAXLINE - 2, 0); -- i gets overwriten and therefore corrupts the counter not allowing the next UNIX sockets to be audited. How reproducible: Always Steps to Reproduce: 1.Configure /etc/sysconfig/syslog to add new sockets, SYSLOGD_OPTIONS="-m 0 -a /var/log/newsock" 2.Restart syslog daemon. 3.Write data to var/log/newsock socket file. Actual results: Use only default socket file (/dev/log), ignores additional new socket file. Expected results: Use additional and default socket file. Additional info: Patch provided and tested by the customer. Enviroment: RHEL4U3 syslogd-1.4.1-26.EL -- Additional comment from jplans on 2007-09-03 05:20 EST -- Created an attachment (id=185161) sysklogd-syslogd_unixaf.patch
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2008-0043.html