From 955da4d03eaa6785aef40a34f440a67d736a4793 Mon Sep 17 00:00:00 2001 From: Seth Michael Larson Date: Tue, 22 Nov 2022 17:59:57 +0000 Subject: [PATCH] [1.26] Strip leading zeros from ports Co-authored-by: Bastian Venthur Co-authored-by: Hasan Ramezani Conflict:NA Reference:https://github.com/urllib3/urllib3/commit/955da4d03eaa6785aef40a34f440a67d736a4793 --- src/urllib3/util/url.py | 2 +- test/test_util.py | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/urllib3/util/url.py b/src/urllib3/util/url.py index 81a03da..8964cef 100644 --- a/src/urllib3/util/url.py +++ b/src/urllib3/util/url.py @@ -63,7 +63,7 @@ IPV6_ADDRZ_RE = re.compile("^" + IPV6_ADDRZ_PAT + "$") BRACELESS_IPV6_ADDRZ_RE = re.compile("^" + IPV6_ADDRZ_PAT[2:-2] + "$") ZONE_ID_RE = re.compile("(" + ZONE_ID_PAT + r")\]$") -_HOST_PORT_PAT = ("^(%s|%s|%s)(?::([0-9]{0,5}))?$") % ( +_HOST_PORT_PAT = ("^(%s|%s|%s)(?::0*([0-9]{0,5}))?$") % ( REG_NAME_PAT, IPV4_PAT, IPV6_ADDRZ_PAT, diff --git a/test/test_util.py b/test/test_util.py index 562c106..f6c8b43 100644 --- a/test/test_util.py +++ b/test/test_util.py @@ -343,6 +343,10 @@ class TestUtil(object): with pytest.raises(LocationParseError): parse_url("https://www.google.com:-80/") + def test_parse_url_remove_leading_zeros(self): + url = parse_url("https://example.com:0000000000080") + assert url.port == 80 + def test_Url_str(self): U = Url("http", host="google.com") assert str(U) == U.url -- 2.27.0