diff options
Diffstat (limited to 'src/progman.c')
-rw-r--r-- | src/progman.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/progman.c b/src/progman.c index 15b8c44..97216b8 100644 --- a/src/progman.c +++ b/src/progman.c | |||
@@ -1392,6 +1392,9 @@ prog_start (struct prog *prog) | |||
1392 | prog->v.p.comp->mode == pies_comp_inetd || | 1392 | prog->v.p.comp->mode == pies_comp_inetd || |
1393 | prog->v.p.comp->mode == pies_comp_pass_fd) | 1393 | prog->v.p.comp->mode == pies_comp_pass_fd) |
1394 | close (prog->v.p.socket); | 1394 | close (prog->v.p.socket); |
1395 | else if (is_sysvinit (prog->v.p.comp)) | ||
1396 | sysvinit_acct (SYSV_ACCT_PROC_START, "", prog->tag, pid, ""); | ||
1397 | |||
1395 | prog->pid = pid; | 1398 | prog->pid = pid; |
1396 | prog->v.p.status = status_enabled; | 1399 | prog->v.p.status = status_enabled; |
1397 | debug (1, (_("%s started, pid=%lu"), prog->tag, (unsigned long) pid)); | 1400 | debug (1, (_("%s started, pid=%lu"), prog->tag, (unsigned long) pid)); |
@@ -2492,10 +2495,14 @@ progman_cleanup (int expect_term) | |||
2492 | } | 2495 | } |
2493 | else if (prog->v.p.comp->mode >= pies_mark_sysvinit) | 2496 | else if (prog->v.p.comp->mode >= pies_mark_sysvinit) |
2494 | { | 2497 | { |
2498 | sysvinit_acct (SYSV_ACCT_PROC_STOP, "", prog->tag, pid, ""); | ||
2495 | prog->v.p.status = status_finished; | 2499 | prog->v.p.status = status_finished; |
2496 | } | 2500 | } |
2497 | else | 2501 | else |
2498 | { | 2502 | { |
2503 | if (is_sysvinit (prog->v.p.comp)) | ||
2504 | sysvinit_acct (SYSV_ACCT_PROC_STOP, "", prog->tag, pid, ""); | ||
2505 | |||
2499 | prog->v.p.status = status_enabled; | 2506 | prog->v.p.status = status_enabled; |
2500 | prog_stop_dependents (prog); | 2507 | prog_stop_dependents (prog); |
2501 | if (!expect_term) | 2508 | if (!expect_term) |