CODING_STYLE: mention that dup() should not be used

This commit is contained in:
Lennart Poettering 2015-04-03 14:26:22 +02:00
parent d95a74ed11
commit 9ff3e22aa9
1 changed files with 7 additions and 0 deletions

View File

@ -232,3 +232,10 @@
"return" to exit from the main function of a process. If you
fork()ed off a child process, please use _exit() instead of exit(),
so that the exit handlers are not run.
- Please never use dup(). Use fcntl(fd, F_DUPFD_CLOEXEC, 3)
instead. For two reason: first, you want O_CLOEXEC set on the new fd
(see above). Second, dup() will happily duplicate your fd as 0, 1,
2, i.e. stdin, stdout, stderr, should those fds be closed. Given the
special semantics of those fds, it's probably a good idea to avoid
them. F_DUPFD_CLOEXEC with "3" as parameter avoids them.