[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r13313 - gnunet/src/util
From: |
gnunet |
Subject: |
[GNUnet-SVN] r13313 - gnunet/src/util |
Date: |
Wed, 20 Oct 2010 15:12:00 +0200 |
Author: grothoff
Date: 2010-10-20 15:12:00 +0200 (Wed, 20 Oct 2010)
New Revision: 13313
Modified:
gnunet/src/util/disk.c
Log:
fix setting close on exec
Modified: gnunet/src/util/disk.c
===================================================================
--- gnunet/src/util/disk.c 2010-10-20 13:05:34 UTC (rev 13312)
+++ gnunet/src/util/disk.c 2010-10-20 13:12:00 UTC (rev 13313)
@@ -1642,6 +1642,7 @@
#endif
}
+
/**
* Creates an interprocess channel
*
@@ -1672,24 +1673,34 @@
ret = pipe (fd);
if (ret == -1)
{
+ eno = errno;
+ GNUNET_log_strerror (GNUNET_ERROR_TYPE_ERROR, "pipe");
GNUNET_free (p);
+ errno = eno;
return NULL;
}
p->fd[0]->fd = fd[0];
p->fd[1]->fd = fd[1];
ret = 0;
flags = fcntl (fd[0], F_GETFL);
- flags |= FD_CLOEXEC;
if (!blocking)
flags |= O_NONBLOCK;
if (0 > fcntl (fd[0], F_SETFL, flags))
ret = -1;
+ flags = fcntl (fd[0], F_GETFD);
+ flags |= FD_CLOEXEC;
+ if (0 > fcntl (fd[0], F_SETFD, flags))
+ ret = -1;
+
flags = fcntl (fd[1], F_GETFL);
- flags |= FD_CLOEXEC;
if (!blocking)
flags |= O_NONBLOCK;
if (0 > fcntl (fd[1], F_SETFL, flags))
ret = -1;
+ flags = fcntl (fd[1], F_GETFD);
+ flags |= FD_CLOEXEC;
+ if (0 > fcntl (fd[1], F_SETFD, flags))
+ ret = -1;
if (ret == -1)
{
eno = errno;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r13313 - gnunet/src/util,
gnunet <=