diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2023-02-17 09:25:21 +0900 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2023-02-17 09:49:51 +0900 |
commit | 8f3d186549465c1bd062e1478be700b5a43eda6d (patch) | |
tree | 651dbe68bbe437b14a06186eb5b4053149fce7db | |
parent | ca8b1d68c56129180c4c41c0485cef8ef8df62c8 (diff) | |
download | systemd-8f3d186549465c1bd062e1478be700b5a43eda6d.tar.gz |
activate: use DEFINE_MAIN_FUNC() macro
-rw-r--r-- | src/activate/activate.c | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/src/activate/activate.c b/src/activate/activate.c index 16463a9b93..ef1289f0e3 100644 --- a/src/activate/activate.c +++ b/src/activate/activate.c @@ -16,6 +16,7 @@ #include "fd-util.h" #include "log.h" #include "macro.h" +#include "main-func.h" #include "pretty-print.h" #include "process-util.h" #include "signal-util.h" @@ -432,7 +433,7 @@ static int parse_argv(int argc, char *argv[]) { return 1 /* work to do */; } -int main(int argc, char **argv) { +static int run(int argc, char **argv) { int r, n; int epoll_fd = -EBADF; @@ -442,19 +443,17 @@ int main(int argc, char **argv) { r = parse_argv(argc, argv); if (r <= 0) - return r == 0 ? EXIT_SUCCESS : EXIT_FAILURE; + return r; r = install_chld_handler(); if (r < 0) - return EXIT_FAILURE; + return r; n = open_sockets(&epoll_fd, arg_accept); if (n < 0) - return EXIT_FAILURE; - if (n == 0) { - log_error("No sockets to listen on specified or passed in."); - return EXIT_FAILURE; - } + return n; + if (n == 0) + return log_error_errno(SYNTHETIC_ERRNO(ENOENT), "No sockets to listen on specified or passed in."); for (;;) { struct epoll_event event; @@ -463,20 +462,19 @@ int main(int argc, char **argv) { if (errno == EINTR) continue; - log_error_errno(errno, "epoll_wait() failed: %m"); - return EXIT_FAILURE; + return log_error_errno(errno, "epoll_wait() failed: %m"); } log_info("Communication attempt on fd %i.", event.data.fd); if (arg_accept) { r = do_accept(argv[optind], argv + optind, event.data.fd); if (r < 0) - return EXIT_FAILURE; + return r; } else break; } - exec_process(argv[optind], argv + optind, SD_LISTEN_FDS_START, (size_t) n); - - return EXIT_SUCCESS; + return exec_process(argv[optind], argv + optind, SD_LISTEN_FDS_START, (size_t) n); } + +DEFINE_MAIN_FUNCTION(run); |