Dr. Werner Fink 2014-02-21 16:08:28 +00:00 committed by Git OBS Bridge
parent 98a90b2057
commit 6db87719be
2 changed files with 28 additions and 4 deletions

View File

@ -1,5 +1,19 @@
Should solve the problems of
bug #858864 - LSB "+" dependencies aren't handled properly
bug #857204 - inssrv fails to enable rpcbind
The side effect is that RequiresOverridable= is used for the services
add behind Required-Start
bug #863217 - systemd overrides explicit admin request to disable a service
That is that in this version the Wants= for all services behind
Should-Start, X-Start-Before, and X-Stop-After is not used anymore
---
service.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
--- systemd-208/src/core/service.c --- systemd-208/src/core/service.c
+++ systemd-208/src/core/service.c 2014-01-17 12:15:52.527311588 +0000 +++ systemd-208/src/core/service.c 2014-02-21 14:44:59.066735478 +0000
@@ -380,6 +380,8 @@ static int sysv_translate_facility(const @@ -380,6 +380,8 @@ static int sysv_translate_facility(const
"remote_fs", SPECIAL_REMOTE_FS_TARGET, "remote_fs", SPECIAL_REMOTE_FS_TARGET,
"syslog", NULL, "syslog", NULL,
@ -28,11 +42,11 @@
state = LSB; state = LSB;
+ d = startswith_no_case(t, "X-Start-Before:") ? UNIT_BEFORE : UNIT_AFTER; + d = startswith_no_case(t, "X-Start-Before:") ? UNIT_BEFORE : UNIT_AFTER;
+ e = startswith_no_case(t, "Required-Start:") ? UNIT_REQUIRES_OVERRIDABLE : UNIT_WANTS; + e = startswith_no_case(t, "Required-Start:") ? UNIT_REQUIRES_OVERRIDABLE : _UNIT_DEPENDENCY_INVALID;
FOREACH_WORD_QUOTED(w, z, strchr(t, ':')+1, i) { FOREACH_WORD_QUOTED(w, z, strchr(t, ':')+1, i) {
char *n, *m; char *n, *m;
@@ -838,12 +843,15 @@ static int service_load_sysv_path(Servic @@ -838,12 +843,18 @@ static int service_load_sysv_path(Servic
continue; continue;
} }
@ -45,7 +59,10 @@
continue; continue;
- r = unit_add_dependency_by_name(u, startswith_no_case(t, "X-Start-Before:") ? UNIT_BEFORE : UNIT_AFTER, m, NULL, true); - r = unit_add_dependency_by_name(u, startswith_no_case(t, "X-Start-Before:") ? UNIT_BEFORE : UNIT_AFTER, m, NULL, true);
+ r = unit_add_two_dependencies_by_name(u, d, e, m, NULL, true); + if (e != _UNIT_DEPENDENCY_INVALID)
+ r = unit_add_two_dependencies_by_name(u, d, e, m, NULL, true);
+ else
+ r = unit_add_dependency_by_name(u, d, m, NULL, true);
if (r < 0) if (r < 0)
log_error_unit(u->id, "[%s:%u] Failed to add dependency on %s, ignoring: %s", log_error_unit(u->id, "[%s:%u] Failed to add dependency on %s, ignoring: %s",

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Fri Feb 21 16:04:54 UTC 2014 - werner@suse.de
- Modify patch 1018-Make-LSB-Skripts-know-about-Required-and-Should.patch
to avoid WantedBy for Should-Start/Start-Before/Start-After SysVinit
scripts (bnc#863217)
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Feb 20 12:22:15 UTC 2014 - werner@suse.de Thu Feb 20 12:22:15 UTC 2014 - werner@suse.de