From e75a9ed17684f4f285b3774f83c89d9bf31cbb26 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Fri, 27 Oct 2017 14:59:05 +0200 Subject: [PATCH] execute: some extra asserts In some cases we checked for fd validity already explicitly, let's do this for all our fds. --- src/core/execute.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/core/execute.c b/src/core/execute.c index 6f93f04715..7018322958 100644 --- a/src/core/execute.c +++ b/src/core/execute.c @@ -469,9 +469,13 @@ static int setup_input( } case EXEC_INPUT_SOCKET: + assert(socket_fd >= 0); + return dup2(socket_fd, STDIN_FILENO) < 0 ? -errno : STDIN_FILENO; case EXEC_INPUT_NAMED_FD: + assert(named_iofds[STDIN_FILENO] >= 0); + (void) fd_nonblock(named_iofds[STDIN_FILENO], false); return dup2(named_iofds[STDIN_FILENO], STDIN_FILENO) < 0 ? -errno : STDIN_FILENO; @@ -612,9 +616,12 @@ static int setup_output( case EXEC_OUTPUT_SOCKET: assert(socket_fd >= 0); + return dup2(socket_fd, fileno) < 0 ? -errno : fileno; case EXEC_OUTPUT_NAMED_FD: + assert(named_iofds[fileno] >= 0); + (void) fd_nonblock(named_iofds[fileno], false); return dup2(named_iofds[fileno], fileno) < 0 ? -errno : fileno;