Kaydet (Commit) ff0a5aff authored tarafından Tim Graham's avatar Tim Graham

Fixed #27046 -- Supported IPv6-formatted IPv4 addresses in host validation.

Thanks LaMont Jones for the report and patch.
üst 4c2a6fe7
......@@ -24,7 +24,7 @@ from django.utils.six.moves.urllib.parse import (
)
RAISE_ERROR = object()
host_validation_re = re.compile(r"^([a-z0-9.-]+|\[[a-f0-9]*:[a-f0-9:]+\])(:\d+)?$")
host_validation_re = re.compile(r"^([a-z0-9.-]+|\[[a-f0-9]*:[a-f0-9\.:]+\])(:\d+)?$")
class UnreadablePostError(IOError):
......
......@@ -589,7 +589,7 @@ class HostValidationTests(SimpleTestCase):
ALLOWED_HOSTS=[
'forward.com', 'example.com', 'internal.com', '12.34.56.78',
'[2001:19f0:feee::dead:beef:cafe]', 'xn--4ca9at.com',
'.multitenant.com', 'INSENSITIVE.com',
'.multitenant.com', 'INSENSITIVE.com', '[::ffff:169.254.169.254]',
])
def test_http_get_host(self):
# Check if X_FORWARDED_HOST is provided.
......@@ -641,6 +641,7 @@ class HostValidationTests(SimpleTestCase):
'insensitive.com',
'example.com.',
'example.com.:80',
'[::ffff:169.254.169.254]',
]
for host in legit_hosts:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment