diff options
author | Evgeny Grin (Karlson2k) <k2k@narod.ru> | 2021-08-24 15:56:03 +0300 |
---|---|---|
committer | Evgeny Grin (Karlson2k) <k2k@narod.ru> | 2021-08-24 16:06:10 +0300 |
commit | 4371815fc76e6e9bfa3c977c687bae94300e501b (patch) | |
tree | 0d1938d808f242dc1f2c7366aa33b391f4a7134b | |
parent | 3420745f28705865314aef7138a6a12ef6ec506d (diff) | |
download | libmicrohttpd-4371815fc76e6e9bfa3c977c687bae94300e501b.tar.gz libmicrohttpd-4371815fc76e6e9bfa3c977c687bae94300e501b.zip |
MHD_accept_connection: refactoring to improve readability
-rw-r--r-- | src/microhttpd/daemon.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c index 4d089759..ce14a944 100644 --- a/src/microhttpd/daemon.c +++ b/src/microhttpd/daemon.c | |||
@@ -3519,6 +3519,7 @@ MHD_accept_connection (struct MHD_Daemon *daemon) | |||
3519 | MHD_socket fd; | 3519 | MHD_socket fd; |
3520 | bool sk_nonbl; | 3520 | bool sk_nonbl; |
3521 | bool sk_spipe_supprs; | 3521 | bool sk_spipe_supprs; |
3522 | bool sk_cloexec; | ||
3522 | 3523 | ||
3523 | #ifdef MHD_USE_THREADS | 3524 | #ifdef MHD_USE_THREADS |
3524 | mhd_assert ( (0 == (daemon->options & MHD_USE_INTERNAL_POLLING_THREAD)) || \ | 3525 | mhd_assert ( (0 == (daemon->options & MHD_USE_INTERNAL_POLLING_THREAD)) || \ |
@@ -3544,6 +3545,7 @@ MHD_accept_connection (struct MHD_Daemon *daemon) | |||
3544 | #else /* MHD_WINSOCK_SOCKETS */ | 3545 | #else /* MHD_WINSOCK_SOCKETS */ |
3545 | sk_spipe_supprs = true; /* Nothing to suppress on W32 */ | 3546 | sk_spipe_supprs = true; /* Nothing to suppress on W32 */ |
3546 | #endif /* MHD_WINSOCK_SOCKETS */ | 3547 | #endif /* MHD_WINSOCK_SOCKETS */ |
3548 | sk_cloexec = (SOCK_CLOEXEC_OR_ZERO != 0); | ||
3547 | #else /* ! USE_ACCEPT4 */ | 3549 | #else /* ! USE_ACCEPT4 */ |
3548 | s = accept (fd, | 3550 | s = accept (fd, |
3549 | addr, | 3551 | addr, |
@@ -3554,6 +3556,7 @@ MHD_accept_connection (struct MHD_Daemon *daemon) | |||
3554 | #else /* MHD_WINSOCK_SOCKETS */ | 3556 | #else /* MHD_WINSOCK_SOCKETS */ |
3555 | sk_spipe_supprs = true; /* Nothing to suppress on W32 */ | 3557 | sk_spipe_supprs = true; /* Nothing to suppress on W32 */ |
3556 | #endif /* MHD_WINSOCK_SOCKETS */ | 3558 | #endif /* MHD_WINSOCK_SOCKETS */ |
3559 | sk_cloexec = false; | ||
3557 | #endif /* ! USE_ACCEPT4 */ | 3560 | #endif /* ! USE_ACCEPT4 */ |
3558 | if ( (MHD_INVALID_SOCKET == s) || | 3561 | if ( (MHD_INVALID_SOCKET == s) || |
3559 | (addrlen <= 0) ) | 3562 | (addrlen <= 0) ) |
@@ -3624,17 +3627,18 @@ MHD_accept_connection (struct MHD_Daemon *daemon) | |||
3624 | } | 3627 | } |
3625 | else | 3628 | else |
3626 | sk_nonbl = true; | 3629 | sk_nonbl = true; |
3627 | #endif /* !USE_ACCEPT4 || !HAVE_SOCK_NONBLOCK */ | 3630 | |
3628 | #if ! defined(USE_ACCEPT4) || ! defined(SOCK_CLOEXEC) | 3631 | if (! sk_cloexec && ! MHD_socket_noninheritable_ (s)) |
3629 | if (! MHD_socket_noninheritable_ (s)) | ||
3630 | { | 3632 | { |
3631 | #ifdef HAVE_MESSAGES | 3633 | #ifdef HAVE_MESSAGES |
3632 | MHD_DLOG (daemon, | 3634 | MHD_DLOG (daemon, |
3633 | _ ("Failed to set noninheritable mode on incoming connection " \ | 3635 | _ ("Failed to set noninheritable mode on incoming connection " \ |
3634 | "socket.\n")); | 3636 | "socket.\n")); |
3635 | #endif | 3637 | #else /* ! HAVE_MESSAGES */ |
3638 | (void) 0; /* Mute compiler warning */ | ||
3639 | #endif /* ! HAVE_MESSAGES */ | ||
3636 | } | 3640 | } |
3637 | #endif /* !USE_ACCEPT4 || !SOCK_CLOEXEC */ | 3641 | |
3638 | #if defined(MHD_socket_nosignal_) | 3642 | #if defined(MHD_socket_nosignal_) |
3639 | if (! sk_spipe_supprs && ! MHD_socket_nosignal_ (s)) | 3643 | if (! sk_spipe_supprs && ! MHD_socket_nosignal_ (s)) |
3640 | { | 3644 | { |