Skip to content

Commit

Permalink
Exit if any of the addresses fails to bind
Browse files Browse the repository at this point in the history
  • Loading branch information
gozdal authored and ddzialak committed Oct 2, 2024
1 parent bcca126 commit 6ca374a
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions gunicorn/sock.py
Original file line number Diff line number Diff line change
Expand Up @@ -176,8 +176,8 @@ def create_sockets(conf, log, fds=None):
return listeners

# no sockets is bound, first initialization of gunicorn in this env.
some_sock_succeeded = False
for addr in laddr:
some_sock_succeeded = False
try:
if isinstance(addr, tuple):
addrinfos = socket.getaddrinfo(addr[0], addr[1], type=socket.SOCK_STREAM)
Expand All @@ -188,18 +188,18 @@ def create_sockets(conf, log, fds=None):
continue
for sock_family, _, _, _, sock_addr in addrinfos:
if sock_family == socket.AF_INET:
sock_class = TCPSocket
sock_type = TCPSocket
elif sock_family == socket.AF_INET6:
sock_class = TCP6Socket
sock_type = TCP6Socket
elif sock_family == socket.AF_UNIX:
sock_class = UnixSocket
sock_type = UnixSocket
else:
log.warning("Ignoring unknown socket family: %s", str(sock_family))
continue
sock = None
for i in range(5):
try:
sock = sock_class(sock_addr, conf, log)
sock = sock_type(sock_addr, conf, log)
except OSError as e:
if e.args[0] == errno.EADDRINUSE:
log.error("Connection in use: %s", str(sock_addr))
Expand All @@ -217,9 +217,9 @@ def create_sockets(conf, log, fds=None):
listeners.append(sock)
some_sock_succeeded = True

if not some_sock_succeeded:
log.error("Can't connect to %s", str(addr))
sys.exit(1)
if not some_sock_succeeded:
log.error("Can't connect to %s", str(addr))
sys.exit(1)

return listeners

Expand Down

0 comments on commit 6ca374a

Please sign in to comment.