X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fservice.c;h=1f478f4386b4071daf845ad3e75bf886666ca8e6;hp=184ddf91437f8d4a1e70845e5ff3dca7ce43cc09;hb=0b603b4e76968448c15d726ebf43238210d3d742;hpb=af2d49f70bcff20efaf2d69aecaf4b3e898ff1fa diff --git a/src/service.c b/src/service.c index 184ddf914..1f478f438 100644 --- a/src/service.c +++ b/src/service.c @@ -65,7 +65,7 @@ static const struct { { "boot.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_SYSINIT }, #endif -#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) +#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_FRUGALWARE) /* Debian style rcS.d */ { "rcS.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_SYSINIT }, #endif @@ -273,23 +273,24 @@ static int sysv_translate_facility(const char *name, const char *filename, char "syslog", SPECIAL_SYSLOG_TARGET, "time", SPECIAL_RTC_SET_TARGET, - /* Debian extensions */ + /* common extensions */ + "mail-transfer-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET, + "x-display-manager", SPECIAL_DISPLAY_MANAGER_SERVICE, + "null", NULL, + #if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) "mail-transport-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET, #endif - "mail-transfer-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET, - "x-display-manager", SPECIAL_DISPLAY_MANAGER_SERVICE, #ifdef TARGET_FEDORA - /* Fedora extensions */ "MTA", SPECIAL_MAIL_TRANSFER_AGENT_TARGET, "smtpdaemon", SPECIAL_MAIL_TRANSFER_AGENT_TARGET, "httpd", SPECIAL_HTTP_DAEMON_TARGET, #endif - /* SuSE extensions */ - "null", NULL - +#ifdef TARGET_SUSE + "smtp", SPECIAL_MAIL_TRANSFER_AGENT_TARGET, +#endif }; unsigned i; @@ -1055,7 +1056,7 @@ static int service_load(Unit *u) { if ((r = unit_add_exec_dependencies(u, &s->exec_context)) < 0) return r; - if ((r = unit_add_default_cgroup(u)) < 0) + if ((r = unit_add_default_cgroups(u)) < 0) return r; #ifdef HAVE_SYSV_COMPAT @@ -1609,16 +1610,6 @@ static int service_spawn( goto fail; } -#ifdef HAVE_SYSV_COMPAT - /* Make sure we set TERM=linux for SysV scripts, since some - * require it to be set from the kernel */ - if (s->sysv_path && !strv_env_get(s->meta.manager->environment, "TERM")) - if (!(our_env[n_env++] = strdup("TERM=linux"))) { - r = -ENOMEM; - goto fail; - } -#endif - if (!(final_env = strv_env_merge(2, s->meta.manager->environment, our_env,