nsjail: don't add connections to the proxy map if launching a new process failed
This commit is contained in:
parent
608618ea7b
commit
d3ba64756d
13
nsjail.cc
13
nsjail.cc
@ -240,16 +240,25 @@ static int listenMode(nsjconf_t* nsjconf) {
|
||||
PLOG_E("pipe");
|
||||
continue;
|
||||
}
|
||||
|
||||
pid_t pid =
|
||||
subproc::runChild(nsjconf, connfd, in[0], out[1], out[1]);
|
||||
|
||||
close(in[0]);
|
||||
close(out[1]);
|
||||
|
||||
if (pid <= 0) {
|
||||
close(in[1]);
|
||||
close(out[0]);
|
||||
close(connfd);
|
||||
} else {
|
||||
nsjconf->pipes.push_back({
|
||||
.sock_fd = connfd,
|
||||
.pipe_in = in[1],
|
||||
.pipe_out = out[0],
|
||||
.pid = pid,
|
||||
});
|
||||
close(in[0]);
|
||||
close(out[1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
subproc::reapProc(nsjconf);
|
||||
|
Loading…
Reference in New Issue
Block a user