| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Unfortunately, there's no "optimized" implementation here. We can't
use Linux's proprietary system call dup3(), because it would require
us to specify the new descriptor.
|
| |
|
| |
|
| |
|
|
|
|
| |
Add a "mode" argument to open_cloexec() instead.
|
|
|
|
| |
Same as pipe_cloexec_nonblock(), but doesn't set non-blocking mode.
|
|
|
|
|
| |
We'll copy this code to libmpdclient, and that's easier if its license
is BSD.
|
|
|
|
|
| |
Changed the wrappers for pipe(), socket(), accept(). On WIN32, this
does not work for pipe().
|
| |
|
| |
|
|
|
|
| |
This function is used only internally.
|
|
|
|
| |
Added wrapper for inotify_init1() to fd_util.c.
|
|
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.
|