Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: freeze-exception thanks
Hi Release Team, There are several important, RC bugfix over syslog-ng/3.3.5-2 in Wheezy. First is virtual console differences between Linux and kFreeBSD[1]. It's tty10 on the former and ttyva on the latter. Without fixing #697042 , syslog-ng would flood kFreeBSD logs with: Error opening file for writing; filename='/dev/tty10', error='Operation not supported (45)' The default syslog-ng configuration used wrong path for mail related logs, as noted in #692056 [2]. Don't use symlinked systemd configuration files, as noted in #690067 [3]. This caused all short of problems as dpkg doesn't support it. Last but not least the one which affects the DSA team is #702131 [4]. The fix is to handle EINVAL as well for eventfd2 errors. The fixes are small and usually one liners. Debdiff is attached. Thanks, Laszlo/GCS [1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=697042 [2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=692056 [3] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=690067 [4] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=702131
diff -Nru syslog-ng-3.3.5/debian/changelog syslog-ng-3.3.5/debian/changelog --- syslog-ng-3.3.5/debian/changelog 2012-05-13 00:47:21.000000000 +0200 +++ syslog-ng-3.3.5/debian/changelog 2013-03-03 19:22:00.000000000 +0100 @@ -1,3 +1,22 @@ +syslog-ng (3.3.5-3) testing-proposed-updates; urgency=low + + [ Gergely Nagy <alger...@madhouse-project.org> ] + * Don't mark systemd symlinks in /etc as conffiles. + * Instead of installing systemd service file symlinks, install a + conffile, that includes the real service file (closes: #690067). + * Do not forcibly remove the systemd service files, that code is not + needed anymore. + * Use the standard /var/log/mail.{info,err,warn} location for the various + mail-related logs (closes: #692056). + * Use /dev/ttyva on kFreeBSD as the target of the d_console_all + destination (closes: #697042). + + [ Laszlo Boszormenyi (GCS) ] + * Fix ivykis fallback on eventfd2 errors with the addition of + ivykis_fallback_fix.patch (closes: #702131). + + -- Laszlo Boszormenyi (GCS) <g...@debian.hu> Sun, 03 Mar 2013 17:57:00 +0100 + syslog-ng (3.3.5-2) unstable; urgency=low [ Gergely Nagy <alger...@madhouse-project.org> ] diff -Nru syslog-ng-3.3.5/debian/patches/ivykis_fallback_fix.patch syslog-ng-3.3.5/debian/patches/ivykis_fallback_fix.patch --- syslog-ng-3.3.5/debian/patches/ivykis_fallback_fix.patch 1970-01-01 01:00:00.000000000 +0100 +++ syslog-ng-3.3.5/debian/patches/ivykis_fallback_fix.patch 2013-03-03 17:53:25.000000000 +0100 @@ -0,0 +1,31 @@ +Description: make ivykis properly fallback on eventfd2 errors + The Linux glibc eventfd() wrapper function (around the SYS_eventfd{,2} + system calls) returns EINVAL if it is given a nonzero flags argument + and SYS_eventfd2 (which is the variant of SYS_eventfd that takes a flags + argument) isn't implemented, while iv_event_raw was expecting to get + either ENOSYS or success. + . + Instead of falling back on SYS_eventfd by calling the eventfd() wrapper + again with a zero flags argument and then setting the O_NONBLOCK and + O_CLOEXEC flags by hand, disable use of eventfd on systems that have + SYS_eventfd but not SYS_eventfd2 as a minimally invasive fix for the + stable branches. + Taken from: https://github.com/buytenh/ivykis/commit/89f67f97477aeba24aebfc58ae1a17e5bea69724.patch +Author: Lennert Buytenhek <buyt...@wantstofly.org> +Bug-Debian: http://bugs.debian.org/702131 +Forwarded: not-needed +Last-Update: 2012-12-09 + +--- + +--- syslog-ng-3.3.5.orig/lib/ivykis/modules/iv_event_raw.c ++++ syslog-ng-3.3.5/lib/ivykis/modules/iv_event_raw.c +@@ -91,7 +91,7 @@ int iv_event_raw_register(struct iv_even + + ret = eventfd2(0, EFD_NONBLOCK | EFD_CLOEXEC); + if (ret < 0) { +- if (errno != ENOSYS) { ++ if (errno != ENOSYS && errno != EINVAL) { + perror("eventfd2"); + return -1; + } diff -Nru syslog-ng-3.3.5/debian/patches/series syslog-ng-3.3.5/debian/patches/series --- syslog-ng-3.3.5/debian/patches/series 2012-05-03 10:25:19.000000000 +0200 +++ syslog-ng-3.3.5/debian/patches/series 2013-03-03 17:48:08.000000000 +0100 @@ -1 +1,2 @@ no_make_in_debian.patch +ivykis_fallback_fix.patch diff -Nru syslog-ng-3.3.5/debian/rules syslog-ng-3.3.5/debian/rules --- syslog-ng-3.3.5/debian/rules 2012-05-13 00:49:52.000000000 +0200 +++ syslog-ng-3.3.5/debian/rules 2013-03-03 18:52:18.000000000 +0100 @@ -26,7 +26,7 @@ # to it. ## ifneq (,$(filter debug,$(DEB_BUILD_OPTIONS))) - EXTRA_CONFIGURE_OPTS += --enable-debug +EXTRA_CONFIGURE_OPTS += --enable-debug endif DEFAULT_MODULES = affile,afprog,afsocket,afuser,afsql,basicfuncs,csvparser,dbparser,syslogformat @@ -129,10 +129,6 @@ override_dh_auto_install: dh_auto_install ${MAKE} -C debian/build-tree/lib/ivykis install DESTDIR=$(CURDIR)/debian/tmp - ln -sf /lib/systemd/system/syslog-ng.service \ - debian/syslog-ng-core/etc/systemd/system/syslog.service - ln -sf /lib/systemd/system/syslog-ng.service \ - debian/syslog-ng-core/etc/systemd/system/multi-user.target.wants/ install -m 0644 contrib/systemd/syslog-ng.service \ debian/syslog-ng-core/lib/systemd/system/ @@ -142,17 +138,37 @@ # Below are overrides for individual debhelper commands. ## +# On kFreeBSD, d_console_all should log to /dev/ttyva, everywhere +# else, to tty10. To keep the config as simple as possible, this is +# accomplished by pulling the target device out of syslog-ng.conf, +# into `scl-root`/system/tty10.conf. +# +# On kFreeBSD, this defines the `tty10` variable to /dev/ttyva, +# everywhere else to /dev/tty10. +# +# It will be installed into the syslog-ng-core package by the +# override_dh_install target. +ifeq (${DEB_HOST_ARCH_OS},kfreebsd) +TTY10_CONF = tty10.kfreebsd.conf +else +TTY10_CONF = tty10.linux.conf +endif + # Upstream installs the merge-grammar.pl as data, thus not # executable. Yet, it needs to be, since the Makefiles that upstream # also installs expect it so. # -# So we simply flip a few bits after dh_install, and we're good to go! +# We also want to install the systemd unit file into syslog-ng-core, +# so do that here too, along with installing tty10.conf. override_dh_install: dh_install ifneq (,$(filter libsyslog-ng-dev,$(shell dh_listpackages))) chmod +x debian/libsyslog-ng-dev/usr/share/syslog-ng/tools/merge-grammar.pl endif + install -m 0644 debian/${TTY10_CONF} \ + $(CURDIR)/debian/syslog-ng-core/usr/share/syslog-ng/include/scl/system/tty10.conf + # Install the NEWS file as upstream changelog. # Rationale: the ChangeLog file is an old artifact from the Arch # times. It is not updated, and is obsolete. diff -Nru syslog-ng-3.3.5/debian/syslog-ng.conf syslog-ng-3.3.5/debian/syslog-ng.conf --- syslog-ng-3.3.5/debian/syslog-ng.conf 2011-11-18 10:32:38.000000000 +0100 +++ syslog-ng-3.3.5/debian/syslog-ng.conf 2013-02-13 21:31:56.000000000 +0100 @@ -1,5 +1,6 @@ @version: 3.3 @include "scl.conf" +@include "`scl-root`/system/tty10.conf" # Syslog-ng configuration file, compatible with default Debian syslogd # installation. @@ -43,9 +44,9 @@ # This files are the log come from the mail subsystem. # -destination d_mailinfo { file("/var/log/mail/mail.info"); }; -destination d_mailwarn { file("/var/log/mail/mail.warn"); }; -destination d_mailerr { file("/var/log/mail/mail.err"); }; +destination d_mailinfo { file("/var/log/mail.info"); }; +destination d_mailwarn { file("/var/log/mail.warn"); }; +destination d_mailerr { file("/var/log/mail.err"); }; # Logging for INN news system # @@ -65,7 +66,7 @@ # Virtual console. # -destination d_console_all { file("/dev/tty10"); }; +destination d_console_all { file(`tty10`); }; # The named pipe /dev/xconsole is for the nsole' utility. To use it, # you must invoke nsole' with the -file' option: diff -Nru syslog-ng-3.3.5/debian/syslog-ng-core.conffiles syslog-ng-3.3.5/debian/syslog-ng-core.conffiles --- syslog-ng-3.3.5/debian/syslog-ng-core.conffiles 2012-05-05 11:21:51.000000000 +0200 +++ syslog-ng-3.3.5/debian/syslog-ng-core.conffiles 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -/etc/systemd/system/multi-user.target.wants/syslog-ng.service -/etc/systemd/system/syslog.service diff -Nru syslog-ng-3.3.5/debian/syslog-ng-core.install syslog-ng-3.3.5/debian/syslog-ng-core.install --- syslog-ng-3.3.5/debian/syslog-ng-core.install 2012-05-05 11:22:46.000000000 +0200 +++ syslog-ng-3.3.5/debian/syslog-ng-core.install 2013-02-18 22:58:08.000000000 +0100 @@ -16,4 +16,6 @@ usr/lib/syslog-ng/*/libsyslogformat.so usr/share/syslog-ng/include/scl/* usr/share/syslog-ng/xsd/* -debian/syslog-ng.conf /etc/syslog-ng/ +debian/syslog-ng.conf /etc/syslog-ng/ +debian/systemd/syslog-ng.service /etc/systemd/system/ +debian/systemd/syslog-ng.service /etc/systemd/system/multi-user.target.wants/ diff -Nru syslog-ng-3.3.5/debian/systemd/syslog-ng.service syslog-ng-3.3.5/debian/systemd/syslog-ng.service --- syslog-ng-3.3.5/debian/systemd/syslog-ng.service 1970-01-01 01:00:00.000000000 +0100 +++ syslog-ng-3.3.5/debian/systemd/syslog-ng.service 2013-02-18 22:56:36.000000000 +0100 @@ -0,0 +1 @@ +.include /lib/systemd/system/syslog-ng.service diff -Nru syslog-ng-3.3.5/debian/tty10.kfreebsd.conf syslog-ng-3.3.5/debian/tty10.kfreebsd.conf --- syslog-ng-3.3.5/debian/tty10.kfreebsd.conf 1970-01-01 01:00:00.000000000 +0100 +++ syslog-ng-3.3.5/debian/tty10.kfreebsd.conf 2013-02-13 21:31:56.000000000 +0100 @@ -0,0 +1 @@ +@define tty10 "/dev/ttyva" diff -Nru syslog-ng-3.3.5/debian/tty10.linux.conf syslog-ng-3.3.5/debian/tty10.linux.conf --- syslog-ng-3.3.5/debian/tty10.linux.conf 1970-01-01 01:00:00.000000000 +0100 +++ syslog-ng-3.3.5/debian/tty10.linux.conf 2013-02-13 21:31:56.000000000 +0100 @@ -0,0 +1 @@ +@define tty10 "/dev/tty10"