From 7e98ac3ea29d2d076937aee1777e69449af7a579 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 25 May 2011 20:45:52 +0200 Subject: [PATCH] Bugfix release --- ...segfault-when-a-DBus-message-has-no-.patch | 37 +++++++++++++++++ 0001-pam-downgrade-a-few-log-msgs.patch | 41 +++++++++++++++++++ ...d-collect-ignore-EACCES-for-fanotify.patch | 27 ++++++++++++ ...le-use-open_terminal-instead-of-open.patch | 25 +++++++++++ systemd.spec | 21 ++++++++-- 5 files changed, 148 insertions(+), 3 deletions(-) create mode 100644 0001-dbus-common-fix-segfault-when-a-DBus-message-has-no-.patch create mode 100644 0001-pam-downgrade-a-few-log-msgs.patch create mode 100644 0001-readahead-collect-ignore-EACCES-for-fanotify.patch create mode 100644 0001-vconsole-use-open_terminal-instead-of-open.patch diff --git a/0001-dbus-common-fix-segfault-when-a-DBus-message-has-no-.patch b/0001-dbus-common-fix-segfault-when-a-DBus-message-has-no-.patch new file mode 100644 index 0000000..c9efb53 --- /dev/null +++ b/0001-dbus-common-fix-segfault-when-a-DBus-message-has-no-.patch @@ -0,0 +1,37 @@ +From cda2b84a69905aafe2f8c6bd3f1c9eefe92b6bbb Mon Sep 17 00:00:00 2001 +From: Michal Schmidt +Date: Wed, 25 May 2011 16:17:17 +0200 +Subject: [PATCH] dbus-common: fix segfault when a DBus message has no + interface + +dbus_message_get_interface() may return NULL. + +https://bugzilla.redhat.com/show_bug.cgi?id=707483 +--- + src/dbus-common.c | 10 +++++++--- + 1 files changed, 7 insertions(+), 3 deletions(-) + +diff --git a/src/dbus-common.c b/src/dbus-common.c +index 9bf0dab..5db077b 100644 +--- a/src/dbus-common.c ++++ b/src/dbus-common.c +@@ -418,9 +418,13 @@ DBusHandlerResult bus_default_message_handler( + return bus_send_error_reply(c, message, &error, -EINVAL); + } + +- } else if (!nulstr_contains(interfaces, dbus_message_get_interface(message))) { +- dbus_set_error_const(&error, DBUS_ERROR_UNKNOWN_INTERFACE, "Unknown interface"); +- return bus_send_error_reply(c, message, &error, -EINVAL); ++ } else { ++ const char *interface = dbus_message_get_interface(message); ++ ++ if (!interface || !nulstr_contains(interfaces, interface)) { ++ dbus_set_error_const(&error, DBUS_ERROR_UNKNOWN_INTERFACE, "Unknown interface"); ++ return bus_send_error_reply(c, message, &error, -EINVAL); ++ } + } + + if (reply) { +-- +1.7.5.2 + diff --git a/0001-pam-downgrade-a-few-log-msgs.patch b/0001-pam-downgrade-a-few-log-msgs.patch new file mode 100644 index 0000000..158fad7 --- /dev/null +++ b/0001-pam-downgrade-a-few-log-msgs.patch @@ -0,0 +1,41 @@ +From 53d5582fa006b0eb528f5dc3f4ba978abd8ac5a3 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 16 May 2011 23:31:06 +0200 +Subject: [PATCH] pam: downgrade a few log msgs + +--- + src/pam-module.c | 6 +++--- + 1 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/pam-module.c b/src/pam-module.c +index 93eb929..03864fe 100644 +--- a/src/pam-module.c ++++ b/src/pam-module.c +@@ -505,7 +505,7 @@ _public_ PAM_EXTERN int pam_sm_open_session( + goto finish; + } + +- pam_syslog(handle, LOG_INFO, "Moving new user session for %s into control group %s.", username, buf); ++ pam_syslog(handle, LOG_DEBUG, "Moving new user session for %s into control group %s.", username, buf); + + if ((r = create_user_group(handle, SYSTEMD_CGROUP_CONTROLLER, buf, pw, true, true)) != PAM_SUCCESS) + goto finish; +@@ -676,13 +676,13 @@ _public_ PAM_EXTERN int pam_sm_close_session( + } + + if (kill_session && check_user_lists(handle, pw->pw_uid, kill_only_users, kill_exclude_users)) { +- pam_syslog(handle, LOG_INFO, "Killing remaining processes of user session %s of %s.", id, username); ++ pam_syslog(handle, LOG_DEBUG, "Killing remaining processes of user session %s of %s.", id, username); + + /* Kill processes in session cgroup, and delete it */ + if ((r = cg_kill_recursive_and_wait(SYSTEMD_CGROUP_CONTROLLER, session_path, true)) < 0) + pam_syslog(handle, LOG_ERR, "Failed to kill session cgroup: %s", strerror(-r)); + } else { +- pam_syslog(handle, LOG_INFO, "Moving remaining processes of user session %s of %s into control group %s.", id, username, nosession_path); ++ pam_syslog(handle, LOG_DEBUG, "Moving remaining processes of user session %s of %s into control group %s.", id, username, nosession_path); + + /* Migrate processes from session to user + * cgroup. First, try to create the user group +-- +1.7.5.2 + diff --git a/0001-readahead-collect-ignore-EACCES-for-fanotify.patch b/0001-readahead-collect-ignore-EACCES-for-fanotify.patch new file mode 100644 index 0000000..7570e00 --- /dev/null +++ b/0001-readahead-collect-ignore-EACCES-for-fanotify.patch @@ -0,0 +1,27 @@ +From 3afe3725fcf21fab7204243b9485a118e499b4a3 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Wed, 25 May 2011 13:09:08 +0200 +Subject: [PATCH] readahead-collect: ignore EACCES for fanotify + +At the start of auditd, we are temporarily not able to read +from the fanotify fd. Ignoring it, seems to work. +--- + src/readahead-collect.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/readahead-collect.c b/src/readahead-collect.c +index 3c48a02..913a340 100644 +--- a/src/readahead-collect.c ++++ b/src/readahead-collect.c +@@ -380,7 +380,7 @@ static int collect(const char *root) { + + if ((n = read(fanotify_fd, &data, sizeof(data))) < 0) { + +- if (errno == EINTR || errno == EAGAIN) ++ if (errno == EINTR || errno == EAGAIN || errno == EACCES) + continue; + + log_error("Failed to read event: %m"); +-- +1.7.5.2 + diff --git a/0001-vconsole-use-open_terminal-instead-of-open.patch b/0001-vconsole-use-open_terminal-instead-of-open.patch new file mode 100644 index 0000000..4098069 --- /dev/null +++ b/0001-vconsole-use-open_terminal-instead-of-open.patch @@ -0,0 +1,25 @@ +From a96257af783f1d2c35a957466856e62ebf82bcad Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 3 May 2011 17:58:28 +0200 +Subject: [PATCH] vconsole: use open_terminal() instead of open() + +--- + src/vconsole-setup.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/vconsole-setup.c b/src/vconsole-setup.c +index 1be260b..68ebac9 100644 +--- a/src/vconsole-setup.c ++++ b/src/vconsole-setup.c +@@ -176,7 +176,7 @@ int main(int argc, char **argv) { + else + vc = "/dev/tty0"; + +- if ((fd = open(vc, O_RDWR|O_CLOEXEC)) < 0) { ++ if ((fd = open_terminal(vc, O_RDWR|O_CLOEXEC)) < 0) { + log_error("Failed to open %s: %m", vc); + goto finish; + } +-- +1.7.5.2 + diff --git a/systemd.spec b/systemd.spec index 000cdc6..95a10c6 100644 --- a/systemd.spec +++ b/systemd.spec @@ -2,7 +2,7 @@ Name: systemd Url: http://www.freedesktop.org/wiki/Software/systemd BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Version: 26 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ Group: System Environment/Base Summary: A System and Service Manager @@ -36,6 +36,10 @@ Source0: http://www.freedesktop.org/software/systemd/%{name}-%{version}.t # Adds support for the %%{_unitdir} macro Source1: macros.systemd Source2: systemd-sysv-convert +Patch0: 0001-dbus-common-fix-segfault-when-a-DBus-message-has-no-.patch +Patch1: 0001-readahead-collect-ignore-EACCES-for-fanotify.patch +Patch2: 0001-vconsole-use-open_terminal-instead-of-open.patch +Patch3: 0001-pam-downgrade-a-few-log-msgs.patch # For sysvinit tools Obsoletes: SysVinit < 2.86-24, sysvinit < 2.86-24 @@ -43,8 +47,8 @@ Provides: SysVinit = 2.86-24, sysvinit = 2.86-24 Provides: sysvinit-userspace Provides: systemd-sysvinit Obsoletes: systemd-sysvinit -Obsoletes: upstart < 0.6.5-11 -Obsoletes: upstart-sysvinit < 0.6.5-11 +Obsoletes: upstart < 1.2-3 +Obsoletes: upstart-sysvinit < 1.2-3 Conflicts: upstart-sysvinit Obsoletes: readahead < 1:1.5.7-3 Provides: readahead = 1:1.5.7-3 @@ -89,6 +93,10 @@ SysV compatibility tools for systemd %prep %setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 %build %configure --with-rootdir= --with-distro=fedora @@ -291,6 +299,13 @@ fi %{_bindir}/systemd-sysv-convert %changelog +* Wed May 25 2011 Lennart Poettering - 26-2 +- Bugfix release +- https://bugzilla.redhat.com/show_bug.cgi?id=707507 +- https://bugzilla.redhat.com/show_bug.cgi?id=707483 +- https://bugzilla.redhat.com/show_bug.cgi?id=705427 +- https://bugzilla.redhat.com/show_bug.cgi?id=707577 + * Sat Apr 30 2011 Lennart Poettering - 26-1 - New upstream release - https://bugzilla.redhat.com/show_bug.cgi?id=699394