diff options
Diffstat (limited to '')
-rw-r--r-- | src/satd-rm.c | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/src/satd-rm.c b/src/satd-rm.c index f245a1f..6fe0aac 100644 --- a/src/satd-rm.c +++ b/src/satd-rm.c @@ -39,10 +39,7 @@ main(int argc, char *argv[]) char *message = NULL; char **msg_argv = NULL; char **arg; - int rc = 0; - - assert(argc == 3); - t (reopen(STATE_FILENO, O_RDWR)); + DAEMON_PROLOGUE; /* Receive and validate message. */ t (readall(SOCK_FILENO, &message, &n) || !n || message[n - 1]); @@ -54,20 +51,9 @@ main(int argc, char *argv[]) for (arg = msg_argv; *arg; arg++) t (remove_job(*arg, 0) && errno); -done: - /* Cleanup. */ - shutdown(SOCK_FILENO, SHUT_WR); - close(SOCK_FILENO); - close(STATE_FILENO); + DAEMON_CLEANUP_START; free(msg_argv); free(message); - return rc; -fail: - if (send_string(SOCK_FILENO, STDERR_FILENO, argv[0], ": ", strerror(errno), "\n", NULL)) - perror(argv[0]); - rc = 1; - goto done; - - (void) argc; + DAEMON_CLEANUP_END; } |