Skip to content

Commit

Permalink
Update get_server_hostname to support IPv6
Browse files Browse the repository at this point in the history
  • Loading branch information
digitalresistor committed Jun 3, 2016
1 parent a6d2976 commit 8e40b0c
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions waitress/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ def __init__(self,
self.set_reuse_addr()
self.bind_server_socket()
self.effective_host, self.effective_port = self.getsockname()
self.server_name = self.get_server_name(self.adj.host)
self.server_name = self.get_server_name(self.effective_host)
self.active_channels = {}
if _start:
self.accept_connections()
Expand All @@ -166,12 +166,13 @@ def get_server_name(self, ip):
server_name = str(ip)
else:
server_name = str(self.socketmod.gethostname())

# Convert to a host name if necessary.
for c in server_name:
if c != '.' and not c.isdigit():
return server_name
try:
if server_name == '0.0.0.0':
if server_name == '0.0.0.0' or server_name == '::':
return 'localhost'
server_name = self.socketmod.gethostbyaddr(server_name)[0]
except socket.error: # pragma: no cover
Expand Down

0 comments on commit 8e40b0c

Please sign in to comment.