diff options
author | Yann Ylavic <ylavic@apache.org> | 2015-03-20 01:09:21 +0000 |
---|---|---|
committer | Yann Ylavic <ylavic@apache.org> | 2015-03-20 01:09:21 +0000 |
commit | 5efe443673d85ba5e94edbbb4383d9a968f56b94 (patch) | |
tree | 002b0e879f7640f04539ab9be1e2898ae665314f /network_io | |
parent | 44368cd4ee60860484d668c618734908396454cd (diff) | |
download | apr-5efe443673d85ba5e94edbbb4383d9a968f56b94.tar.gz |
Follow up to r1666341: fix missing apr_socket_create() and apr_socket_accept() cases.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1667916 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'network_io')
-rw-r--r-- | network_io/unix/sockets.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/network_io/unix/sockets.c b/network_io/unix/sockets.c index 9fc774ed0..e95ce2c7d 100644 --- a/network_io/unix/sockets.c +++ b/network_io/unix/sockets.c @@ -175,18 +175,21 @@ apr_status_t apr_socket_create(apr_socket_t **new, int ofamily, int type, #ifndef HAVE_SOCK_CLOEXEC { int flags; + apr_status_t rv; if ((flags = fcntl((*new)->socketdes, F_GETFD)) == -1) { + rv = errno; close((*new)->socketdes); (*new)->socketdes = -1; - return errno; + return rv; } flags |= FD_CLOEXEC; if (fcntl((*new)->socketdes, F_SETFD, flags) == -1) { + rv = errno; close((*new)->socketdes); (*new)->socketdes = -1; - return errno; + return rv; } } #endif @@ -357,18 +360,21 @@ apr_status_t apr_socket_accept(apr_socket_t **new, apr_socket_t *sock, #ifndef HAVE_ACCEPT4 { int flags; + apr_status_t rv; if ((flags = fcntl((*new)->socketdes, F_GETFD)) == -1) { + rv = errno; close((*new)->socketdes); (*new)->socketdes = -1; - return errno; + return rv; } flags |= FD_CLOEXEC; if (fcntl((*new)->socketdes, F_SETFD, flags) == -1) { + rv = errno; close((*new)->socketdes); (*new)->socketdes = -1; - return errno; + return rv; } } #endif |