From fcfe78664bf740a7fb059f9817e584a612e09f54 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Fri, 20 Sep 2024 14:20:27 +0200 Subject: [PATCH] [3.12] gh-124217, ipaddress: Add RFC 9637 reserved IPv6 block `3fff::/20` (GH-124240) (#124283) gh-124217, ipaddress: Add RFC 9637 reserved IPv6 block `3fff::/20` (GH-124240) (cherry picked from commit db6eb3640a7d98db6fea17cf9da4cb14504e5571) Signed-off-by: y5c4l3 Co-authored-by: Y5 <124019959+y5c4l3@users.noreply.github.com> --- Lib/ipaddress.py | 2 ++ Lib/test/test_ipaddress.py | 2 ++ .../next/Library/2024-09-19-20-15-00.gh-issue-124217.j0KlQB.rst | 1 + 3 files changed, 5 insertions(+) create mode 100644 Misc/NEWS.d/next/Library/2024-09-19-20-15-00.gh-issue-124217.j0KlQB.rst diff --git a/Lib/ipaddress.py b/Lib/ipaddress.py index 8ca45d68a1df..76031dede8a5 100644 --- a/Lib/ipaddress.py +++ b/Lib/ipaddress.py @@ -2347,6 +2347,8 @@ class _IPv6Constants: IPv6Network('2001:db8::/32'), # IANA says N/A, let's consider it not globally reachable to be safe IPv6Network('2002::/16'), + # RFC 9637: https://www.rfc-editor.org/rfc/rfc9637.html#section-6-2.2 + IPv6Network('3fff::/20'), IPv6Network('fc00::/7'), IPv6Network('fe80::/10'), ] diff --git a/Lib/test/test_ipaddress.py b/Lib/test/test_ipaddress.py index e674158ac0a3..3c8a928b91cd 100644 --- a/Lib/test/test_ipaddress.py +++ b/Lib/test/test_ipaddress.py @@ -2408,6 +2408,8 @@ class IpaddrUnitTest(unittest.TestCase): self.assertTrue(ipaddress.ip_address('2001:30::').is_global) self.assertFalse(ipaddress.ip_address('2001:40::').is_global) self.assertFalse(ipaddress.ip_address('2002::').is_global) + # gh-124217: conform with RFC 9637 + self.assertFalse(ipaddress.ip_address('3fff::').is_global) # some generic IETF reserved addresses self.assertEqual(True, ipaddress.ip_address('100::').is_reserved) diff --git a/Misc/NEWS.d/next/Library/2024-09-19-20-15-00.gh-issue-124217.j0KlQB.rst b/Misc/NEWS.d/next/Library/2024-09-19-20-15-00.gh-issue-124217.j0KlQB.rst new file mode 100644 index 000000000000..46f9866f8d42 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2024-09-19-20-15-00.gh-issue-124217.j0KlQB.rst @@ -0,0 +1 @@ +Add RFC 9637 reserved IPv6 block ``3fff::/20`` in :mod:`ipaddress` module. -- 2.47.3