From: Lennart Poettering Date: Wed, 2 Jun 2010 17:15:42 +0000 (+0200) Subject: service: change default service type to 'simple' since that is the future X-Git-Tag: v1~240 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=1f48cf56cb2693b84fdc76dc8df0b048ed50ef43 service: change default service type to 'simple' since that is the future --- diff --git a/src/service.c b/src/service.c index 8ff7b7313..2ce95f5a9 100644 --- a/src/service.c +++ b/src/service.c @@ -340,9 +340,6 @@ static int service_load_sysv_path(Service *s, const char *path) { goto finish; } - s->type = SERVICE_FORKING; - s->restart = SERVICE_ONCE; - free(s->sysv_path); if (!(s->sysv_path = strdup(path))) { r = -ENOMEM; @@ -650,8 +647,10 @@ static int service_load_sysv_path(Service *s, const char *path) { s->timeout_usec = 0; /* Special setting for all SysV services */ + s->type = SERVICE_FORKING; s->valid_no_process = true; s->kill_mode = KILL_PROCESS_GROUP; + s->restart = SERVICE_ONCE; u->meta.load_state = UNIT_LOADED; r = 0; diff --git a/src/service.h b/src/service.h index 40bd57e25..5242de58f 100644 --- a/src/service.h +++ b/src/service.h @@ -56,8 +56,8 @@ typedef enum ServiceRestart { } ServiceRestart; typedef enum ServiceType { - SERVICE_FORKING, /* forks by itself (i.e. traditional daemons) */ SERVICE_SIMPLE, /* we fork and go on right-away (i.e. modern socket activated daemons) */ + SERVICE_FORKING, /* forks by itself (i.e. traditional daemons) */ SERVICE_FINISH, /* we fork and wait until the program finishes (i.e. programs like fsck which run and need to finish before we continue) */ SERVICE_DBUS, /* we fork and wait until a specific D-Bus name appears on the bus */ _SERVICE_TYPE_MAX, diff --git a/units/emergency.service b/units/emergency.service index 3cbca3d01..924723fef 100644 --- a/units/emergency.service +++ b/units/emergency.service @@ -12,8 +12,7 @@ Description=Emergency Shell [Service] ExecStart=/bin/sh -Type=simple StandardInput=tty Restart=restart-always RestartSec=0 -KillMode=process +KillMode=process-group diff --git a/units/fedora/prefdm.service b/units/fedora/prefdm.service index 291910239..3428026c5 100644 --- a/units/fedora/prefdm.service +++ b/units/fedora/prefdm.service @@ -14,4 +14,3 @@ Conflicts=shutdown.target [Service] ExecStart=/etc/X11/prefdm -nodaemon -Type=simple diff --git a/units/fedora/rc-local.service b/units/fedora/rc-local.service index cb0700700..bd67aab62 100644 --- a/units/fedora/rc-local.service +++ b/units/fedora/rc-local.service @@ -17,7 +17,6 @@ Names=rc-local.service local.service [Service] ExecStart=/etc/rc.local start -Type=simple TimeoutSec=0 StandardInput=tty ValidNoProcess=yes diff --git a/units/gentoo/xdm.service b/units/gentoo/xdm.service index 8370ef24f..ac1df7572 100644 --- a/units/gentoo/xdm.service +++ b/units/gentoo/xdm.service @@ -14,4 +14,3 @@ Conflicts=shutdown.target [Service] ExecStart=/etc/init.d/xdm start -Type=simple diff --git a/units/getty@.service.m4 b/units/getty@.service.m4 index 20ee6e90f..1ada4ffd0 100644 --- a/units/getty@.service.m4 +++ b/units/getty@.service.m4 @@ -18,7 +18,6 @@ Conflicts=shutdown.target [Service] Environment=TERM=linux -Type=simple ExecStart=GETTY %I Restart=restart-always RestartSec=0 diff --git a/units/systemd-initctl.service.in b/units/systemd-initctl.service.in index 6c9365380..7450e07e6 100644 --- a/units/systemd-initctl.service.in +++ b/units/systemd-initctl.service.in @@ -12,4 +12,3 @@ Description=systemd /dev/initctl Compatibility Daemon [Service] ExecStart=@rootlibexecdir@/systemd-initctl -Type=simple diff --git a/units/systemd-logger.service.in b/units/systemd-logger.service.in index 5fc053203..200443897 100644 --- a/units/systemd-logger.service.in +++ b/units/systemd-logger.service.in @@ -13,4 +13,3 @@ After=@SPECIAL_SYSLOG_SERVICE@ [Service] ExecStart=@rootlibexecdir@/systemd-logger -Type=simple