aboutsummaryrefslogtreecommitdiffstats
path: root/src/fd_util.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* fd_util: don't call fd_set_nonblock() if open() has failedMax Kellermann2009-11-111-1/+2
| | | | This fixes an assertion failure.
* added missing config.h includes for extended LFS supportMax Kellermann2009-11-111-1/+1
| | | | | All sources which might work with large files must include config.h, to get Large File Support on 32 bit platforms.
* fd_util: removed creat_cloexec()Max Kellermann2009-11-101-21/+1
| | | | Add a "mode" argument to open_cloexec() instead.
* fd_util: added function pipe_cloexec()Max Kellermann2009-11-101-2/+24
| | | | Same as pipe_cloexec_nonblock(), but doesn't set non-blocking mode.
* fd_util: added missing NONBLOCK fallback for socket()Max Kellermann2009-11-081-1/+3
|
* fd_util: relicense under BSD 2-clauseMax Kellermann2009-11-081-11/+20
| | | | | We'll copy this code to libmpdclient, and that's easier if its license is BSD.
* fd_util: added O_NONBLOCK functionsMax Kellermann2009-11-081-7/+38
| | | | | Changed the wrappers for pipe(), socket(), accept(). On WIN32, this does not work for pipe().
* fd_util: unexport fd_set_cloexec()Max Kellermann2009-11-081-1/+1
| | | | This function is used only internally.
* inotify: set close-on-exec flagMax Kellermann2009-11-071-0/+26
| | | | Added wrapper for inotify_init1() to fd_util.c.
* set the close-on-exec flag on all file descriptorsMax Kellermann2009-11-071-0/+171
Added the "fd_util" library, which attempts to use the new thread-safe Linux system calls pipe2(), accept4() and the options O_CLOEXEC, SOCK_CLOEXEC. Without these, it falls back to FD_CLOEXEC, which is not thread safe. This is particularly important for the "pipe" output plugin (and others, such as JACK/PulseAudio), because we were heavily leaking file descriptors to child processes.