From: Zbigniew Jędrzejewski-Szmek Date: Fri, 15 Mar 2019 14:35:49 +0000 (+0100) Subject: Handle or voidify all calls to close_all_fds() X-Git-Tag: v242-rc1~120^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F12015%2Fhead;p=thirdparty%2Fsystemd.git Handle or voidify all calls to close_all_fds() In activate, it is important that we close the fds. In other cases, meh. --- diff --git a/src/activate/activate.c b/src/activate/activate.c index 7eae9e22c28..35ab08f22d8 100644 --- a/src/activate/activate.c +++ b/src/activate/activate.c @@ -74,7 +74,9 @@ static int open_sockets(int *epoll_fd, bool accept) { except[fd] = fd; log_close(); - close_all_fds(except, 3 + n); + r = close_all_fds(except, 3 + n); + if (r < 0) + return log_error_errno(r, "Failed to close all file descriptors: %m"); } /** Note: we leak some fd's on error here. I doesn't matter diff --git a/src/basic/process-util.c b/src/basic/process-util.c index 86d5c3adb5e..c41a2aa5c9f 100644 --- a/src/basic/process-util.c +++ b/src/basic/process-util.c @@ -1001,7 +1001,7 @@ _noreturn_ void freeze(void) { log_close(); /* Make sure nobody waits for us on a socket anymore */ - close_all_fds(NULL, 0); + (void) close_all_fds(NULL, 0); sync(); diff --git a/src/nspawn/nspawn-setuid.c b/src/nspawn/nspawn-setuid.c index 0026e4e3fc7..f207bcec04e 100644 --- a/src/nspawn/nspawn-setuid.c +++ b/src/nspawn/nspawn-setuid.c @@ -43,7 +43,7 @@ static int spawn_getent(const char *database, const char *key, pid_t *rpid) { if (rearrange_stdio(-1, pipe_fds[1], -1) < 0) _exit(EXIT_FAILURE); - close_all_fds(NULL, 0); + (void) close_all_fds(NULL, 0); (void) rlimit_nofile_safe(); diff --git a/src/nspawn/nspawn-stub-pid1.c b/src/nspawn/nspawn-stub-pid1.c index 5d17df39d9c..ebf4f0f523c 100644 --- a/src/nspawn/nspawn-stub-pid1.c +++ b/src/nspawn/nspawn-stub-pid1.c @@ -67,7 +67,7 @@ int stub_pid1(sd_id128_t uuid) { reset_all_signal_handlers(); log_close(); - close_all_fds(NULL, 0); + (void) close_all_fds(NULL, 0); log_open(); /* Flush out /proc/self/environ, so that we don't leak the environment from the host into the container. Also,