diff options
author | Lennart Poettering <lennart@poettering.net> | 2011-01-20 18:44:06 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2011-01-20 18:44:09 +0100 |
commit | c06b7a15ea4bd9a6063eb16e1b4ee77ef05714b4 (patch) | |
tree | bdd11d415b9522184258c9e00acad3b574580c3c /src/service.c | |
parent | 26742b3fd8776c6c64e3c1035adc2599ddeb76d1 (diff) |
service: don't allow reload operations for oneshot services
During starting of oneshot we are in START state which we don't want to
combine with the RELOAD state, hence we disallow both at the same time.
Diffstat (limited to 'src/service.c')
-rw-r--r-- | src/service.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/service.c b/src/service.c index 4115e52901..03a858a4ae 100644 --- a/src/service.c +++ b/src/service.c @@ -1029,6 +1029,12 @@ static int service_verify(Service *s) { return -EINVAL; } + if (s->type == SERVICE_ONESHOT && + s->exec_command[SERVICE_EXEC_RELOAD]) { + log_error("%s has an ExecReload setting, which is not allowed for Type=oneshot services. Refusing.", s->meta.id); + return -EINVAL; + } + if (s->type == SERVICE_DBUS && !s->bus_name) { log_error("%s is of type D-Bus but no D-Bus service name has been specified. Refusing.", s->meta.id); return -EINVAL; |