exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit 800c54b19e9dd705a18e39e090d6227614b34f58
parent 06f5621fbac43c59b15fa4ef9e0fe92b828cec5b
Author: Christian Grothoff <christian@grothoff.org>
Date:   Fri,  6 Oct 2017 21:06:47 +0200

do not potentially pass -1 to fcntl()

Diffstat:
Msrc/exchange/taler-exchange-httpd.c | 37+++++++++++++++++++++++++++----------
1 file changed, 27 insertions(+), 10 deletions(-)

diff --git a/src/exchange/taler-exchange-httpd.c b/src/exchange/taler-exchange-httpd.c @@ -1015,37 +1015,54 @@ main (int argc, listen_fds = getenv ("LISTEN_FDS"); if ( (NULL != listen_pid) && (NULL != listen_fds) && - (getpid() == strtol (listen_pid, NULL, 10)) && - ( (1 == strtoul (listen_fds, NULL, 10)) || - (2 == strtoul (listen_fds, NULL, 10)) ) ) + (getpid() == strtol (listen_pid, + NULL, + 10)) && + ( (1 == strtoul (listen_fds, + NULL, + 10)) || + (2 == strtoul (listen_fds, + NULL, + 10)) ) ) { int flags; fh = 3; - flags = fcntl (fh, F_GETFD); - if ( (-1 == flags) && (EBADF == errno) ) + flags = fcntl (fh, + F_GETFD); + if ( (-1 == flags) && + (EBADF == errno) ) { fprintf (stderr, "Bad listen socket passed, ignored\n"); fh = -1; } flags |= FD_CLOEXEC; - if (0 != fcntl (fh, F_SETFD, flags)) + if ( (-1 != fh) && + (0 != fcntl (fh, + F_SETFD, + flags)) ) GNUNET_log_strerror (GNUNET_ERROR_TYPE_ERROR, "fcntl"); - if (2 == strtoul (listen_fds, NULL, 10)) + if (2 == strtoul (listen_fds, + NULL, + 10)) { fh_admin = 4; - flags = fcntl (fh_admin, F_GETFD); - if ( (-1 == flags) && (EBADF == errno) ) + flags = fcntl (fh_admin, + F_GETFD); + if ( (-1 == flags) && + (EBADF == errno) ) { fprintf (stderr, "Bad listen socket passed, ignored\n"); fh_admin = -1; } flags |= FD_CLOEXEC; - if (0 != fcntl (fh_admin, F_SETFD, flags)) + if (0 != fcntl (fh_admin, + F_SETFD, + flags)) GNUNET_log_strerror (GNUNET_ERROR_TYPE_ERROR, "fcntl"); }