terminal-util: open /dev/null with O_CLOEXEC in make_stdio_null()
authorLennart Poettering <lennart@poettering.net>
Sat, 23 Dec 2017 23:54:40 +0000 (00:54 +0100)
committerLennart Poettering <lennart@poettering.net>
Mon, 25 Dec 2017 10:48:21 +0000 (11:48 +0100)
commitd8caff6db672ab0f2d8064c61f5ef0e8e8d288ca
treed57c58eeac6c5854938feb880d34b6c1d29d9ff9
parent395195bb42abc37a25fea02f77af5fcce602e371
terminal-util: open /dev/null with O_CLOEXEC in make_stdio_null()

Ultimately, O_CLOEXEC should be off in fd 0, 1, 2, but when we open
/dev/null here it's unlikely to be < 0, and after dupping the fd to 0,
1, 2 we turn off O_CLOEXEC explicitly anyway.

Unless we know that what we are about to open will return 0, 1 or 2 we
should always set O_CLOEXEC in order to be safe to other threads forking
of subprocesses at the wrong moment.
src/basic/terminal-util.c