summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBert JW Regeer <bertjw@regeer.org>2016-06-11 19:51:25 -0600
committerBert JW Regeer <bertjw@regeer.org>2016-06-11 19:51:25 -0600
commitd8bbaff84174cfe77c071194e7efb44ad3ce63e4 (patch)
tree1577c9736ce5157b29be45b2ec2ff73d41364a41
parent7c63ad06f354de68d233e5b0556cee601eaf3704 (diff)
downloadwaitress-d8bbaff84174cfe77c071194e7efb44ad3ce63e4.tar.gz
Add wildcard host support
-rw-r--r--waitress/adjustments.py3
-rw-r--r--waitress/tests/test_adjustments.py7
2 files changed, 10 insertions, 0 deletions
diff --git a/waitress/adjustments.py b/waitress/adjustments.py
index f94ea20..f86ece5 100644
--- a/waitress/adjustments.py
+++ b/waitress/adjustments.py
@@ -246,6 +246,9 @@ class Adjustments(object):
if '[' in host and ']' in host: # pragma: nocover
host = host.strip('[').rstrip(']')
+ if host == '*':
+ host = None
+
for s in socket.getaddrinfo(
host,
port,
diff --git a/waitress/tests/test_adjustments.py b/waitress/tests/test_adjustments.py
index b566463..5c8985a 100644
--- a/waitress/tests/test_adjustments.py
+++ b/waitress/tests/test_adjustments.py
@@ -160,6 +160,13 @@ class TestAdjustments(unittest.TestCase):
[('127.0.0.1', 9090),
('127.0.0.1', 8080)])
+ def test_wildcard_listen(self):
+ inst = self._makeOne(listen='*:8080')
+
+ bind_pairs = [sockaddr[:2] for (_, _, _, sockaddr) in inst.listen]
+
+ self.assertTrue(len(bind_pairs) >= 1)
+
def test_ipv6_no_port(self): # pragma: nocover
if not self._hasIPv6():
return