summaryrefslogtreecommitdiffstats
path: root/polyp/util.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2004-09-01 22:36:49 +0000
committerLennart Poettering <lennart@poettering.net>2004-09-01 22:36:49 +0000
commit5f52999c016495be1c34effdacd230a79cb52d0b (patch)
treed4c0cadb808185ae8d8c6b03dea370b33cce78e5 /polyp/util.c
parent348738751c50c7d3c4c9ed22801a0c2cb917b790 (diff)
make use F_CLOEXEC wherever useful
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@174 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'polyp/util.c')
-rw-r--r--polyp/util.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/polyp/util.c b/polyp/util.c
index 0d930118..a3276fdf 100644
--- a/polyp/util.c
+++ b/polyp/util.c
@@ -249,3 +249,18 @@ void pa_reset_priority(void) {
setpriority(PRIO_PROCESS, 0, 0);
}
+
+int pa_fd_set_cloexec(int fd, int b) {
+ int v;
+ assert(fd >= 0);
+
+ if ((v = fcntl(fd, F_GETFD, 0)) < 0)
+ return -1;
+
+ v = (v & ~FD_CLOEXEC) | (b ? FD_CLOEXEC : 0);
+
+ if (fcntl(fd, F_SETFD, v) < 0)
+ return -1;
+
+ return 0;
+}