aboutsummaryrefslogtreecommitdiffstats
path: root/src/fd_util.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Makefile.am: move sources to libsystem.aMax Kellermann2013-08-071-353/+0
|
* configure.ac: add option --enable-eventfdMax Kellermann2013-08-061-2/+2
| | | | | | Remove the runtime check for eventfd(), hard-code the feature once it's been selected at compile time. The class WakeFD is splitted into EventFD and EventPipe, using WakeFD as a macro diversion.
* fd_util: support eventfd()Max Kellermann2013-01-101-0/+14
|
* Merge branch 'v0.16.x'Max Kellermann2011-09-201-0/+10
|\
| * fd_util: add function close_socket()Max Kellermann2011-09-201-0/+10
| | | | | | | | Wrap close(), use closesocket() on WIN32/WinSock.
* | fd_util: add function socketpair_cloexec_nonblock()Max Kellermann2011-07-011-0/+23
| |
* | copyright year 2011Max Kellermann2011-01-291-1/+1
|/
* fd_util: work around aliasing warning in recvmsg_cloexec()Max Kellermann2010-09-231-2/+2
|
* fd_util: add function dup_cloexec()Max Kellermann2010-08-031-0/+10
| | | | | | 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.
* fd_util: add function recvmsg_cloexec()Max Kellermann2010-08-031-0/+27
|
* fd_util: add function socketpair_cloexec()Max Kellermann2010-08-031-0/+24
|
* fd_util: fd_set_cloexec() returns a value on WIN32Max Kellermann2010-05-181-0/+2
| | | | This function is empty on WIN32, but we need to return a value.
* fd_util: include ws2tcpip.h for socklen_tMax Kellermann2010-01-171-0/+1
|
* fd_util: fixed WIN32 versions of pipe()Max Kellermann2010-01-171-2/+2
| | | | Use the correct parameter name.
* Update copyright notices.Avuton Olrich2009-12-311-1/+1
|
* 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.