commit e25eb35f11b0419fe50791b3760f1d4016bf8a8b Author: Nick Mathewson nickm@torproject.org Date: Fri Aug 2 10:04:21 2013 -0400
Actually use the cloexec argument in the !defined(SOCK_CLOEXEC) case --- src/common/compat.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/src/common/compat.c b/src/common/compat.c index af8f288..8aab12a 100644 --- a/src/common/compat.c +++ b/src/common/compat.c @@ -1084,10 +1084,12 @@ tor_open_socket_with_extensions(int domain, int type, int protocol, return s;
#if defined(FD_CLOEXEC) - if (fcntl(s, F_SETFD, FD_CLOEXEC) == -1) { - log_warn(LD_FS,"Couldn't set FD_CLOEXEC: %s", strerror(errno)); - tor_close_socket_simple(s); - return TOR_INVALID_SOCKET; + if (cloexec) { + if (fcntl(s, F_SETFD, FD_CLOEXEC) == -1) { + log_warn(LD_FS,"Couldn't set FD_CLOEXEC: %s", strerror(errno)); + tor_close_socket_simple(s); + return TOR_INVALID_SOCKET; + } } #endif