Created attachment 335702 [details] Proposed patch Description of problem: The fix for bug #223573 introduced a regression with syslog when logging to the console, no line feed is inserted and all the syslog messages are displayed on a single line. Version-Release number of selected component (if applicable): sysklogd-1.4.1-44 How reproducible: 100% reproducible Steps to Reproduce: 1. Create a user (e.g. "cons") 2. Log syslog messages for that user by modifying syslog.conf to *.info;mail.none;authpriv.none;cron.none;daemon.warning cons 3. Login as "cons" on a console and observe the messages Actual results: All messages are printed one after the other on the same line Expected results: One line per message Additional info: This is a regression that was introduced in sysklogd-1.4.1-40.el5-x86_64 by the fix for the BZ#223573. An additional field has been added to include priority/facility, but the logging to console has not been modified to include that additional field. sysklogd-1.4.1rh/syslogd.c @@ -1698,7 +1703,7 @@ int flags; char *msg; { - struct iovec iov[6]; + struct iovec iov[7]; [...] @@ -1859,7 +1907,7 @@ if (f->f_file == -1) break; - if (writev(f->f_file, iov, 6) < 0) { + if (writev(f->f_file, iov, 7) < 0) { int e = errno; But the same needs to be done for when logging to a tty too. Proposed patch attached.
This bugzilla has Keywords: Regression. Since no regressions are allowed between releases, it is also being proposed as a blocker for this release. Please resolve ASAP.
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 therefore 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-2010-0211.html