X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=service.c;h=53d5505c2ea16b007607291f7e32faf54b3d8763;hb=3251df7dd7e88571108c1dc8a6c9f66cf891321b;hp=1aeb5fbf2b637cec04661b081500db891f8bc26e;hpb=bd77d0fccccb7c94d1dd52d2e535feb7156e3220;p=elogind.git diff --git a/service.c b/service.c index 1aeb5fbf2..53d5505c2 100644 --- a/service.c +++ b/service.c @@ -481,6 +481,10 @@ static int service_load_sysv_path(Service *s, const char *path) { if ((r = sysv_exec_commands(s)) < 0) goto finish; + if ((r = unit_add_dependency_by_name(u, UNIT_REQUIRES, SPECIAL_SYSINIT_SERVICE)) < 0 || + (r = unit_add_dependency_by_name(u, UNIT_AFTER, SPECIAL_SYSINIT_SERVICE)) < 0) + goto finish; + r = 1; finish: @@ -510,7 +514,7 @@ static int service_load_sysv_name(Service *s, const char *name) { r = service_load_sysv_path(s, path); free(path); - if (r >= 0) + if (r != 0) return r; } @@ -612,11 +616,13 @@ static void service_dump(Unit *u, FILE *f, const char *prefix) { "%sService State: %s\n" "%sPermissionsStartOnly: %s\n" "%sRootDirectoryStartOnly: %s\n" - "%sValidNoProcess: %s\n", + "%sValidNoProcess: %s\n" + "%sType: %s\n", prefix, service_state_to_string(s->state), prefix, yes_no(s->permissions_start_only), prefix, yes_no(s->root_directory_start_only), - prefix, yes_no(s->valid_no_process)); + prefix, yes_no(s->valid_no_process), + prefix, service_type_to_string(s->type)); if (s->pid_file) fprintf(f,