aboutsummaryrefslogtreecommitdiffstats
path: root/src/system/fd_util.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-01-01Copyright year 2015Max Kellermann1-1/+1
2014-03-15system/fd_util: export fd_set_cloexec()Max Kellermann1-1/+1
2014-03-15configure.ac: always define _GNU_SOURCE on LinuxMax Kellermann1-4/+0
Make sure glibc gives us all features.
2014-01-13copyright year 2014Max Kellermann1-1/+1
2013-10-29fd_util: avoid unnecessary fcntl() callsMax Kellermann1-6/+8
2013-08-07Makefile.am: move sources to libsystem.aMax Kellermann1-0/+0
2013-08-06configure.ac: add option --enable-eventfdMax Kellermann1-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.
2013-01-10fd_util: support eventfd()Max Kellermann1-0/+14
2011-09-20fd_util: add function close_socket()Max Kellermann1-0/+10
Wrap close(), use closesocket() on WIN32/WinSock.
2011-07-01fd_util: add function socketpair_cloexec_nonblock()Max Kellermann1-0/+23
2011-01-29copyright year 2011Max Kellermann1-1/+1
2010-09-23fd_util: work around aliasing warning in recvmsg_cloexec()Max Kellermann1-2/+2
2010-08-03fd_util: add function dup_cloexec()Max Kellermann1-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.
2010-08-03fd_util: add function recvmsg_cloexec()Max Kellermann1-0/+27
2010-08-03fd_util: add function socketpair_cloexec()Max Kellermann1-0/+24
2010-05-18fd_util: fd_set_cloexec() returns a value on WIN32Max Kellermann1-0/+2
This function is empty on WIN32, but we need to return a value.
2010-01-17fd_util: include ws2tcpip.h for socklen_tMax Kellermann1-0/+1
2010-01-17fd_util: fixed WIN32 versions of pipe()Max Kellermann1-2/+2
Use the correct parameter name.
2009-12-31Update copyright notices.Avuton Olrich1-1/+1
2009-11-11fd_util: don't call fd_set_nonblock() if open() has failedMax Kellermann1-1/+2
This fixes an assertion failure.
2009-11-11added missing config.h includes for extended LFS supportMax Kellermann1-1/+1
All sources which might work with large files must include config.h, to get Large File Support on 32 bit platforms.
2009-11-10fd_util: removed creat_cloexec()Max Kellermann1-21/+1
Add a "mode" argument to open_cloexec() instead.
2009-11-10fd_util: added function pipe_cloexec()Max Kellermann1-2/+24
Same as pipe_cloexec_nonblock(), but doesn't set non-blocking mode.
2009-11-08fd_util: added missing NONBLOCK fallback for socket()Max Kellermann1-1/+3
2009-11-08fd_util: relicense under BSD 2-clauseMax Kellermann1-11/+20
We'll copy this code to libmpdclient, and that's easier if its license is BSD.
2009-11-08fd_util: added O_NONBLOCK functionsMax Kellermann1-7/+38
Changed the wrappers for pipe(), socket(), accept(). On WIN32, this does not work for pipe().
2009-11-08fd_util: unexport fd_set_cloexec()Max Kellermann1-1/+1
This function is used only internally.
2009-11-07inotify: set close-on-exec flagMax Kellermann1-0/+26
Added wrapper for inotify_init1() to fd_util.c.
2009-11-07set the close-on-exec flag on all file descriptorsMax Kellermann1-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.