From aa2e4c531649dc4b119102beb2c5088e908ce2dd998b772238843ecc0f56692a Mon Sep 17 00:00:00 2001 From: "Dr. Werner Fink" Date: Fri, 17 May 2013 15:16:28 +0000 Subject: [PATCH 1/2] Accepting request 175971 from home:fcrozat:branches:Base:System - Add sysctl-handle-boot-sysctl.conf-kernel_release.patch: ensure /boot/sysctl.conf- is handled (bnc#809420). OBS-URL: https://build.opensuse.org/request/show/175971 OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=382 --- ...ndle-boot-sysctl.conf-kernel_release.patch | 53 +++++++++++++++++++ systemd-mini.changes | 6 +++ systemd-mini.spec | 5 +- systemd.changes | 6 +++ systemd.spec | 5 +- 5 files changed, 73 insertions(+), 2 deletions(-) create mode 100644 sysctl-handle-boot-sysctl.conf-kernel_release.patch diff --git a/sysctl-handle-boot-sysctl.conf-kernel_release.patch b/sysctl-handle-boot-sysctl.conf-kernel_release.patch new file mode 100644 index 00000000..9213a508 --- /dev/null +++ b/sysctl-handle-boot-sysctl.conf-kernel_release.patch @@ -0,0 +1,53 @@ +From 752a4370ecb5643a432ad73b1e22c80cd304948f Mon Sep 17 00:00:00 2001 +From: Frederic Crozat +Date: Fri, 17 May 2013 13:31:46 +0200 +Subject: [PATCH] sysctl: handle /boot/sysctl.conf- + +Add support for kernel release sysctl.conf files (for per-flavor +configuration), needed by openSUSE (bnc#809420). +--- + src/sysctl/sysctl.c | 8 ++++++++ + units/systemd-sysctl.service.in | 1 + + 2 files changed, 9 insertions(+) + +diff --git a/src/sysctl/sysctl.c b/src/sysctl/sysctl.c +index db18dd9..aa10b79 100644 +--- a/src/sysctl/sysctl.c ++++ b/src/sysctl/sysctl.c +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + + #include "log.h" + #include "strv.h" +@@ -297,6 +298,13 @@ int main(int argc, char *argv[]) { + } else { + _cleanup_strv_free_ char **files = NULL; + char **f; ++ char kernel_sysctl[PATH_MAX]; ++ struct utsname uts; ++ ++ assert_se(uname(&uts) >= 0); ++ ++ snprintf(kernel_sysctl, sizeof(kernel_sysctl), "/boot/sysctl.conf-%s", uts.release); ++ r = parse_file(sysctl_options, kernel_sysctl, true); + + r = conf_files_list_nulstr(&files, ".conf", NULL, conf_file_dirs); + if (r < 0) { +diff --git a/units/systemd-sysctl.service.in b/units/systemd-sysctl.service.in +index 45e1ceb..61d13c9 100644 +--- a/units/systemd-sysctl.service.in ++++ b/units/systemd-sysctl.service.in +@@ -19,6 +19,7 @@ ConditionDirectoryNotEmpty=|/usr/lib/sysctl.d + ConditionDirectoryNotEmpty=|/usr/local/lib/sysctl.d + ConditionDirectoryNotEmpty=|/etc/sysctl.d + ConditionDirectoryNotEmpty=|/run/sysctl.d ++ConditionPathExistsGlob=|/boot/sysctl.conf-* + + [Service] + Type=oneshot +-- +1.8.1.4 + diff --git a/systemd-mini.changes b/systemd-mini.changes index 085a2d34..fc7cfcfd 100644 --- a/systemd-mini.changes +++ b/systemd-mini.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri May 17 11:46:02 UTC 2013 - fcrozat@suse.com + +- Add sysctl-handle-boot-sysctl.conf-kernel_release.patch: ensure + /boot/sysctl.conf- is handled (bnc#809420). + ------------------------------------------------------------------- Wed May 15 13:02:05 UTC 2013 - fcrozat@suse.com diff --git a/systemd-mini.spec b/systemd-mini.spec index 72ac98e9..86dbc1f1 100644 --- a/systemd-mini.spec +++ b/systemd-mini.spec @@ -153,8 +153,10 @@ Patch26: ensure-systemd-udevd-is-started-before-local-fs-pre-for-lo.patch Patch27: apply-ACL-for-nvidia-device-nodes.patch # PATCH-FIX-OPENSUSE Revert-service-drop-support-for-SysV-scripts-for-the-early.patch fcrozat@suse.com -- handle boot.* initscripts Patch37: Revert-service-drop-support-for-SysV-scripts-for-the-early.patch -# PATCH-FIX-OPENSUSE systemd-tmp-safe-defaults.patch -- FATE#314974 max@suse.de -- Return to SUSE's "safe defaults" policy on deleting files from tmp direcorie. +# PATCH-FIX-OPENSUSE systemd-tmp-safe-defaults.patch FATE#314974 max@suse.de -- Return to SUSE's "safe defaults" policy on deleting files from tmp direcorie. Patch39: systemd-tmp-safe-defaults.patch +# PATCH-FIX-OPENSUSE sysctl-handle-boot-sysctl.conf-kernel_release.patch bnc#809420 fcrozat@suse.com -- handle /boot/sysctl.conf- file +Patch40: sysctl-handle-boot-sysctl.conf-kernel_release.patch # Upstream First - Policy: # Never add any patches to this package without the upstream commit id @@ -401,6 +403,7 @@ cp %{SOURCE7} m4/ %patch37 -p1 %patch38 -p1 %patch39 -p1 +%patch40 -p1 %build autoreconf -fiv diff --git a/systemd.changes b/systemd.changes index 085a2d34..fc7cfcfd 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri May 17 11:46:02 UTC 2013 - fcrozat@suse.com + +- Add sysctl-handle-boot-sysctl.conf-kernel_release.patch: ensure + /boot/sysctl.conf- is handled (bnc#809420). + ------------------------------------------------------------------- Wed May 15 13:02:05 UTC 2013 - fcrozat@suse.com diff --git a/systemd.spec b/systemd.spec index 180253b1..94cff34f 100644 --- a/systemd.spec +++ b/systemd.spec @@ -148,8 +148,10 @@ Patch26: ensure-systemd-udevd-is-started-before-local-fs-pre-for-lo.patch Patch27: apply-ACL-for-nvidia-device-nodes.patch # PATCH-FIX-OPENSUSE Revert-service-drop-support-for-SysV-scripts-for-the-early.patch fcrozat@suse.com -- handle boot.* initscripts Patch37: Revert-service-drop-support-for-SysV-scripts-for-the-early.patch -# PATCH-FIX-OPENSUSE systemd-tmp-safe-defaults.patch -- FATE#314974 max@suse.de -- Return to SUSE's "safe defaults" policy on deleting files from tmp direcorie. +# PATCH-FIX-OPENSUSE systemd-tmp-safe-defaults.patch FATE#314974 max@suse.de -- Return to SUSE's "safe defaults" policy on deleting files from tmp direcorie. Patch39: systemd-tmp-safe-defaults.patch +# PATCH-FIX-OPENSUSE sysctl-handle-boot-sysctl.conf-kernel_release.patch bnc#809420 fcrozat@suse.com -- handle /boot/sysctl.conf- file +Patch40: sysctl-handle-boot-sysctl.conf-kernel_release.patch # Upstream First - Policy: # Never add any patches to this package without the upstream commit id @@ -396,6 +398,7 @@ cp %{SOURCE7} m4/ %patch37 -p1 %patch38 -p1 %patch39 -p1 +%patch40 -p1 %build autoreconf -fiv From 290905bac846b83c5ced947bf4a52f2a2cd99536a53dcd13f0215033c7c29a27 Mon Sep 17 00:00:00 2001 From: Marcus Meissner Date: Tue, 21 May 2013 09:16:19 +0000 Subject: [PATCH 2/2] Accepting request 176236 from home:fcrozat:branches:Base:System - Rebase parse-etc-insserv.conf-and-adds-dependencies-accordingly.patch to fix memory corruption (thanks to Michal Vyskocil) (bnc#820454). OBS-URL: https://build.opensuse.org/request/show/176236 OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=383 --- ...nf-and-adds-dependencies-accordingly.patch | 27 ++++++++++++------- systemd-mini.changes | 7 +++++ systemd-mini.spec | 3 +-- systemd.changes | 7 +++++ systemd.spec | 3 +-- 5 files changed, 33 insertions(+), 14 deletions(-) diff --git a/parse-etc-insserv.conf-and-adds-dependencies-accordingly.patch b/parse-etc-insserv.conf-and-adds-dependencies-accordingly.patch index f3e12f27..e1f7405e 100644 --- a/parse-etc-insserv.conf-and-adds-dependencies-accordingly.patch +++ b/parse-etc-insserv.conf-and-adds-dependencies-accordingly.patch @@ -1,17 +1,18 @@ +From 0d4db3c514f1fe3fe13acb7a34a5a517db9ccb2d Mon Sep 17 00:00:00 2001 From: Frederic Crozat Date: Fri, 30 Sep 2011 13:55:31 +0000 -Subject: parse /etc/insserv.conf and adds dependencies accordingly +Subject: [PATCH] parse /etc/insserv.conf and adds dependencies accordingly (bnc#721428) --- - src/core/service.c | 101 +++++++++++++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 101 insertions(+) + src/core/service.c | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 104 insertions(+) diff --git a/src/core/service.c b/src/core/service.c -index cf0bbe0..08fc97c 100644 +index cf0bbe0..471ce8d 100644 --- a/src/core/service.c +++ b/src/core/service.c -@@ -3440,6 +3440,105 @@ static void service_notify_message(Unit *u, pid_t pid, char **tags) { +@@ -3440,6 +3440,108 @@ static void service_notify_message(Unit *u, pid_t pid, char **tags) { } #ifdef HAVE_SYSV_COMPAT @@ -52,11 +53,14 @@ index cf0bbe0..08fc97c 100644 + if (streq(facility, SPECIAL_REMOTE_FS_TARGET)) { + /* insert also a Wants dependency from remote-fs-pre on remote-fs */ + u = manager_get_unit(mgr, SPECIAL_REMOTE_FS_TARGET); -+ unit_add_dependency_by_name(u, UNIT_WANTS, SPECIAL_REMOTE_FS_PRE_TARGET, NULL, true); -+ free (facility); -+ facility=strdup(SPECIAL_REMOTE_FS_PRE_TARGET); ++ if (u) { ++ unit_add_dependency_by_name(u, UNIT_WANTS, SPECIAL_REMOTE_FS_PRE_TARGET, NULL, true); ++ free (facility); ++ facility=strdup(SPECIAL_REMOTE_FS_PRE_TARGET); ++ } + } -+ if ((u = manager_get_unit(mgr, facility)) && (u->type == UNIT_TARGET)) { ++ u = manager_get_unit(mgr, facility); ++ if (u && (u->type == UNIT_TARGET)) { + char *dep = NULL, *name, **j; + + STRV_FOREACH (j, parsed+1) { @@ -117,7 +121,7 @@ index cf0bbe0..08fc97c 100644 static int service_enumerate(Manager *m) { char **p; -@@ -3600,6 +3699,8 @@ static int service_enumerate(Manager *m) { +@@ -3600,6 +3702,8 @@ static int service_enumerate(Manager *m) { r = 0; @@ -126,3 +130,6 @@ index cf0bbe0..08fc97c 100644 finish: for (i = 0; i < ELEMENTSOF(rcnd_table); i++) +-- +1.8.1.4 + diff --git a/systemd-mini.changes b/systemd-mini.changes index fc7cfcfd..a92519aa 100644 --- a/systemd-mini.changes +++ b/systemd-mini.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri May 17 15:53:33 UTC 2013 - fcrozat@suse.com + +- Rebase + parse-etc-insserv.conf-and-adds-dependencies-accordingly.patch to + fix memory corruption (thanks to Michal Vyskocil) (bnc#820454). + ------------------------------------------------------------------- Fri May 17 11:46:02 UTC 2013 - fcrozat@suse.com diff --git a/systemd-mini.spec b/systemd-mini.spec index 86dbc1f1..999bce16 100644 --- a/systemd-mini.spec +++ b/systemd-mini.spec @@ -113,11 +113,10 @@ Source9: nss-myhostname-config Source1060: boot.udev Source1061: write_dev_root_rule Source1062: systemd-udev-root-symlink -# Patches auto-generated by git-buildpackage: # PATCH-FIX-UPSTREAM avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch lnussel@suse.com bnc#791101 -- avoid assertion if invalid address familily is passed to gethostbyaddr_r Patch0: avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch -# PATCH-FIX-UPSTREAM ptionally-warn-if-nss-myhostname-is-called.patch lnussel@suse.com -- optionally warn if nss-myhostname is called +# PATCH-FIX-UPSTREAM optionally-warn-if-nss-myhostname-is-called.patch lnussel@suse.com -- optionally warn if nss-myhostname is called Patch1: optionally-warn-if-nss-myhostname-is-called.patch Patch2: Add-bootsplash-handling-for-password-dialogs.patch # handle SUSE specific kbd settings diff --git a/systemd.changes b/systemd.changes index fc7cfcfd..a92519aa 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri May 17 15:53:33 UTC 2013 - fcrozat@suse.com + +- Rebase + parse-etc-insserv.conf-and-adds-dependencies-accordingly.patch to + fix memory corruption (thanks to Michal Vyskocil) (bnc#820454). + ------------------------------------------------------------------- Fri May 17 11:46:02 UTC 2013 - fcrozat@suse.com diff --git a/systemd.spec b/systemd.spec index 94cff34f..ff03d454 100644 --- a/systemd.spec +++ b/systemd.spec @@ -108,11 +108,10 @@ Source9: nss-myhostname-config Source1060: boot.udev Source1061: write_dev_root_rule Source1062: systemd-udev-root-symlink -# Patches auto-generated by git-buildpackage: # PATCH-FIX-UPSTREAM avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch lnussel@suse.com bnc#791101 -- avoid assertion if invalid address familily is passed to gethostbyaddr_r Patch0: avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch -# PATCH-FIX-UPSTREAM ptionally-warn-if-nss-myhostname-is-called.patch lnussel@suse.com -- optionally warn if nss-myhostname is called +# PATCH-FIX-UPSTREAM optionally-warn-if-nss-myhostname-is-called.patch lnussel@suse.com -- optionally warn if nss-myhostname is called Patch1: optionally-warn-if-nss-myhostname-is-called.patch Patch2: Add-bootsplash-handling-for-password-dialogs.patch # handle SUSE specific kbd settings