]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
nspawn: close pipe on error 8283/head
authorLennart Poettering <lennart@poettering.net>
Mon, 26 Feb 2018 19:51:04 +0000 (20:51 +0100)
committerLennart Poettering <lennart@poettering.net>
Wed, 28 Feb 2018 09:01:16 +0000 (10:01 +0100)
src/nspawn/nspawn-setuid.c

index c4ad172512296eb6449da65adcb558d4ac86c106..46cdcd2e843b6bfb5e9347303cc15bdc75ef467f 100644 (file)
@@ -48,11 +48,13 @@ static int spawn_getent(const char *database, const char *key, pid_t *rpid) {
                 return log_error_errno(errno, "Failed to allocate pipe: %m");
 
         r = safe_fork("(getent)", FORK_RESET_SIGNALS|FORK_DEATHSIG|FORK_LOG, &pid);
-        if (r < 0)
+        if (r < 0) {
+                safe_close_pair(pipe_fds);
                 return r;
+        }
         if (r == 0) {
-                int nullfd;
                 char *empty_env = NULL;
+                int nullfd;
 
                 if (dup3(pipe_fds[1], STDOUT_FILENO, 0) < 0)
                         _exit(EXIT_FAILURE);