]> git.ipfire.org Git - thirdparty/Python/cpython.git/log
thirdparty/Python/cpython.git
18 months ago[3.9] gh-114539: Clarify implicit launching of shells by subprocess (GH-117996) ...
Miss Islington (bot) [Tue, 7 May 2024 08:48:03 +0000 (10:48 +0200)] 
[3.9] gh-114539: Clarify implicit launching of shells by subprocess (GH-117996) (GH-118005)

(cherry picked from commit a4b44d39cd6941cc03590fee7538776728bdfd0a)

Co-authored-by: Steve Dower <steve.dower@python.org>
20 months ago[3.9] gh-116773: Fix overlapped memory corruption crash (GH-116774) (GH-117080)
jkriegshauser [Wed, 27 Mar 2024 15:24:46 +0000 (08:24 -0700)] 
[3.9] gh-116773: Fix overlapped memory corruption crash (GH-116774) (GH-117080)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
20 months ago[3.9] gh-117187: Fix XML tests for vanilla Expat <2.6.0 (GH-117203) (GH-117247)
Miss Islington (bot) [Wed, 27 Mar 2024 13:45:22 +0000 (14:45 +0100)] 
[3.9] gh-117187: Fix XML tests for vanilla Expat <2.6.0 (GH-117203) (GH-117247)

This fixes XML unittest fallout from the https://github.com/python/cpython/issues/115398 security fix.  When configured using `--with-system-expat` on systems with older pre 2.6.0 versions of libexpat, our unittests were failing.

(cherry picked from commit 9f74e86c78853c101a23e938f8e32ea838d8f62e)

Co-authored-by: Sebastian Pipping <sebastian@pipping.org>
20 months agoPost 3.9.19
Łukasz Langa [Tue, 19 Mar 2024 16:18:11 +0000 (17:18 +0100)] 
Post 3.9.19

20 months agoPython 3.9.19 v3.9.19
Łukasz Langa [Tue, 19 Mar 2024 15:48:02 +0000 (16:48 +0100)] 
Python 3.9.19

20 months ago[3.9] gh-115197: Stop resolving host in urllib.request proxy bypass (GH-115210) ...
Miss Islington (bot) [Tue, 19 Mar 2024 10:53:42 +0000 (11:53 +0100)] 
[3.9] gh-115197: Stop resolving host in urllib.request proxy bypass (GH-115210) (GH-116068)

Use of a proxy is intended to defer DNS for the hosts to the proxy itself, rather than a potential for information leak of the host doing DNS resolution itself for any reason.  Proxy bypass lists are strictly name based.  Most implementations of proxy support agree.
(cherry picked from commit c43b26d02eaa103756c250e8d36829d388c5f3be)

Co-authored-by: Weii Wang <weii.wang@canonical.com>
20 months ago[3.9] gh-115398: Expose Expat >=2.6.0 reparse deferral API (CVE-2023-52425) (GH-11562...
Sebastian Pipping [Wed, 6 Mar 2024 23:03:30 +0000 (00:03 +0100)] 
[3.9] gh-115398: Expose Expat >=2.6.0 reparse deferral API (CVE-2023-52425) (GH-115623) (GH-116272)

Allow controlling Expat >=2.6.0 reparse deferral (CVE-2023-52425) by adding five new methods:

- `xml.etree.ElementTree.XMLParser.flush`
- `xml.etree.ElementTree.XMLPullParser.flush`
- `xml.parsers.expat.xmlparser.GetReparseDeferralEnabled`
- `xml.parsers.expat.xmlparser.SetReparseDeferralEnabled`
- `xml.sax.expatreader.ExpatParser.flush`

Based on the "flush" idea from https://github.com/python/cpython/pull/115138#issuecomment-1932444270 .

Includes code suggested-by: Snild Dolkow <snild@sony.com>
and by core dev Serhiy Storchaka.

Co-authored-by: Gregory P. Smith <greg@krypto.org>
21 months ago[3.9] gh-107077: Raise SSLCertVerificationError even if the error is set via SSL_ERRO...
Miss Islington (bot) [Wed, 21 Feb 2024 16:02:34 +0000 (17:02 +0100)] 
[3.9] gh-107077: Raise SSLCertVerificationError even if the error is set via SSL_ERROR_SYSCALL (GH-107586) (#107590)

(cherry picked from commit 77e09192b5f1caf14cd5f92ccb53a4592e83e8bc)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
Co-authored-by: T. Wouters <thomas@python.org>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
21 months ago[3.9] Upgrade bundled libexpat to 2.6.0 (GH-115399) (GH-115474)
Seth Michael Larson [Wed, 21 Feb 2024 12:48:13 +0000 (06:48 -0600)] 
[3.9] Upgrade bundled libexpat to 2.6.0 (GH-115399) (GH-115474)

Manual backport due to code differences.
(cherry picked from commit e071b0d558b2f5cddd5a9fc6afadb4ba109ec77e)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
21 months ago[3.9] gh-115399: Document CVE-2023-52425 under "XML vulnerabilities" (GH-115400)...
Miss Islington (bot) [Wed, 21 Feb 2024 11:45:14 +0000 (12:45 +0100)] 
[3.9] gh-115399: Document CVE-2023-52425 under "XML vulnerabilities" (GH-115400) (GH-115763)

Doc/library/xml.rst: Document CVE-2023-52425 under "XML vulnerabilities"
(cherry picked from commit fbd40ce46e7335a5dbaf48a3aa841be22d7302ba)

Co-authored-by: Sebastian Pipping <sebastian@pipping.org>
21 months ago[3.9] Fix tests for XMLPullParser with Expat 2.6.0 (GH-115133) (GH-115535)
Seth Michael Larson [Wed, 21 Feb 2024 11:22:55 +0000 (05:22 -0600)] 
[3.9] Fix tests for XMLPullParser with Expat 2.6.0 (GH-115133) (GH-115535)

Feeding the parser by too small chunks defers parsing to prevent
CVE-2023-52425. Future versions of Expat may be more reactive.
(cherry picked from commit 4a08e7b3431cd32a0daf22a33421cd3035343dc4)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
21 months ago[3.9] gh-97032: avoid test_squeezer crash on macOS buildbots (GH-115508) (#115655)
Miss Islington (bot) [Wed, 21 Feb 2024 11:17:44 +0000 (12:17 +0100)] 
[3.9] gh-97032: avoid test_squeezer crash on macOS buildbots (GH-115508) (#115655)

(cherry picked from commit 17a6533dbf5ffdfd707c1514a61423d9ac59a9cb)

Co-authored-by: Ned Deily <nad@python.org>
21 months ago[3.9] gh-115349: Pin theme to fix code snippets (GH-115351)
Hugo van Kemenade [Tue, 13 Feb 2024 12:56:59 +0000 (14:56 +0200)] 
[3.9] gh-115349: Pin theme to fix code snippets (GH-115351)

Pin theme to fix code snippets

21 months ago[3.9] Add missing sections to blurbs (GH-114553) (GH-115339)
Miss Islington (bot) [Tue, 13 Feb 2024 12:56:31 +0000 (13:56 +0100)] 
[3.9] Add missing sections to blurbs (GH-114553) (GH-115339)

(cherry picked from commit dc8893af7df706138161d82ce7d1d2f9132d14f9)

Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
21 months ago[3.9] gh-111239: Update Windows build to use zlib 1.3.1 (GH-114877) (GH-115087)
Łukasz Langa [Tue, 6 Feb 2024 15:08:31 +0000 (16:08 +0100)] 
[3.9] gh-111239: Update Windows build to use zlib 1.3.1 (GH-114877) (GH-115087)

(cherry picked from commit 618d7256e78da8200f6e2c6235094a1ef885dca4)

Co-authored-by: Zachary Ware <zach@python.org>
22 months ago[3.9] gh-113659: Skip hidden .pth files (GH-113660) (GH-114146)
Serhiy Storchaka [Wed, 17 Jan 2024 14:28:17 +0000 (16:28 +0200)] 
[3.9] gh-113659: Skip hidden .pth files (GH-113660) (GH-114146)

(cherry picked from commit 74208ed0c440244fb809d8acc97cb9ef51e888e3)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
22 months ago[3.9] gh-107888: Fix test_mmap.test_access_parameter() on macOS 14 (GH-109928) (GH...
Miss Islington (bot) [Wed, 17 Jan 2024 14:10:35 +0000 (15:10 +0100)] 
[3.9] gh-107888: Fix test_mmap.test_access_parameter() on macOS 14 (GH-109928) (GH-114184)

(cherry picked from commit 9dbfe2dc8e7bba25e52f9470ae6969821a365297)

Co-authored-by: Victor Stinner <vstinner@python.org>
22 months ago[3.9] gh-114021: Pin various sphinxcontrib extensions to older versions (GH-114022...
Adam Turner [Wed, 17 Jan 2024 13:48:31 +0000 (13:48 +0000)] 
[3.9] gh-114021: Pin various sphinxcontrib extensions to older versions (GH-114022) (GH-114039)

(cherry picked from commit 94b1d1fa38ada8cf7d196184a04a195c152eed75)

Co-authored-by: Ronald Oussoren <ronaldoussoren@mac.com>
22 months ago[3.9] gh-109858: Protect zipfile from "quoted-overlap" zipbomb (GH-110016) (GH-113915)
Miss Islington (bot) [Wed, 17 Jan 2024 13:48:06 +0000 (14:48 +0100)] 
[3.9] gh-109858: Protect zipfile from "quoted-overlap" zipbomb (GH-110016) (GH-113915)

Raise BadZipFile when try to read an entry that overlaps with other entry or
central directory.
(cherry picked from commit 66363b9a7b9fe7c99eba3a185b74c5fdbf842eba)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
22 months ago[3.9] gh-91133: tempfile.TemporaryDirectory: fix symlink bug in cleanup (GH-99930...
Serhiy Storchaka [Wed, 17 Jan 2024 13:47:47 +0000 (15:47 +0200)] 
[3.9] gh-91133: tempfile.TemporaryDirectory: fix symlink bug in cleanup (GH-99930) (GH-112842)

(cherry picked from commit 81c16cd94ec38d61aa478b9a452436dc3b1b524d)

Co-authored-by: Søren Løvborg <sorenl@unity3d.com>
22 months ago[3.9] bpo-37013: Fix the error handling in socket.if_indextoname() (GH-13503) (GH...
Miss Islington (bot) [Wed, 17 Jan 2024 13:47:26 +0000 (14:47 +0100)] 
[3.9] bpo-37013: Fix the error handling in socket.if_indextoname() (GH-13503) (GH-112600)

* Fix a crash when pass UINT_MAX.
* Fix an integer overflow on 64-bit non-Windows platforms.
(cherry picked from commit 0daf555c6fb3feba77989382135a58215e1d70a5)

Co-authored-by: Zackery Spytz <zspytz@gmail.com>
22 months ago[3.9] gh-109991: Update Windows build to use OpenSSL 1.1.1w (GH-111265)
Zachary Ware [Wed, 17 Jan 2024 13:47:09 +0000 (07:47 -0600)] 
[3.9] gh-109991: Update Windows build to use OpenSSL 1.1.1w (GH-111265)

(cherry picked from commit dcb16c98be61630369227f0d893f8d9262d25cac)

Co-authored-by: Steve Dower <steve.dower@python.org>
22 months ago[3.9] gh-109991: Update GitHub CI workflows to use OpenSSL 3.0.11 and multissltests...
Ned Deily [Wed, 17 Jan 2024 13:46:46 +0000 (08:46 -0500)] 
[3.9] gh-109991: Update GitHub CI workflows to use OpenSSL 3.0.11 and multissltests to use 1.1.1w and 3.0.11. (GH-110008)

(cherry picked from commit c88037d137a98d7c399c7bd74d5117b5bcae1543)

22 months ago[3.9] Fix documentation build by pinning Alabaster version to 0.7.13 (#113815)
Maciej Olko [Wed, 10 Jan 2024 09:35:38 +0000 (10:35 +0100)] 
[3.9] Fix documentation build by pinning Alabaster version to 0.7.13 (#113815)

Alabaster is Sphinx's dependency. Alabaster 0.7.14 released on 2024-01-08 dropped support for Sphinx 3.3 and earlier.

https://alabaster.readthedocs.io/en/latest/changelog.html

23 months ago[3.9] gh-112160: Add 'regen-configure' make target (#112164)
Seth Michael Larson [Wed, 6 Dec 2023 23:26:24 +0000 (17:26 -0600)] 
[3.9] gh-112160: Add 'regen-configure' make target (#112164)

Add 'regen-configure' make target

2 years ago[3.9] gh-101180: Fix a bug where iso2022_jp_3 and iso2022_jp_2004 codecs read out...
Łukasz Langa [Mon, 6 Nov 2023 17:44:50 +0000 (18:44 +0100)] 
[3.9] gh-101180: Fix a bug where iso2022_jp_3 and iso2022_jp_2004 codecs read out of bounds (gh-111695) (gh-111780)

(cherry picked from commit c8faa3568afd255708096f6aa8df0afa80cf7697)

Co-authored-by: Masayuki Moriyama <masayuki.moriyama@miraclelinux.com>
2 years ago[3.9] gh-109002: Ensure only one wheel for each vendored package (GH-109003) (#109008)
Miss Islington (bot) [Wed, 6 Sep 2023 18:01:05 +0000 (11:01 -0700)] 
[3.9] gh-109002: Ensure only one wheel for each vendored package (GH-109003) (#109008)

Output with one wheel:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
Verifying checksum for /Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl.
Expected digest: 7ccf472345f20d35bdc9d1841ff5f313260c2c33fe417f48c30ac46cccabf5be
Actual digest:   7ccf472345f20d35bdc9d1841ff5f313260c2c33fe417f48c30ac46cccabf5be
::notice file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl::Successfully verified the checksum of the pip wheel.
```

Output with two wheels:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
::error file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-22.0.4-py3-none-any.whl::Found more than one wheel for package pip.

::error file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl::Found more than one wheel for package pip.
```

Output without wheels:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
::error file=::Could not find a pip wheel on disk.
```
(cherry picked from commit f8a047941f2e4a1848700c21d58a08c9ec6a9c68)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2 years ago[3.9] CI: Bump GitHub Actions (GH-108879) (#108893)
Hugo van Kemenade [Tue, 5 Sep 2023 20:39:06 +0000 (14:39 -0600)] 
[3.9] CI: Bump GitHub Actions (GH-108879) (#108893)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2 years ago[3.9] [3.10] Add a dummy .rtfd.yml file to silence invalid failing webhooks (GH-10890...
Miss Islington (bot) [Tue, 5 Sep 2023 15:37:59 +0000 (08:37 -0700)] 
[3.9] [3.10] Add a dummy .rtfd.yml file to silence invalid failing webhooks (GH-108908) (#108925)

(cherry picked from commit 5970435b26fc85c83490bc915c894ea7dd0fbf21)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2 years agoPost 3.9.18
Łukasz Langa [Thu, 24 Aug 2023 19:18:58 +0000 (21:18 +0200)] 
Post 3.9.18

2 years agoPython 3.9.18 v3.9.18
Łukasz Langa [Thu, 24 Aug 2023 17:51:41 +0000 (19:51 +0200)] 
Python 3.9.18

2 years agoFix invalid string escape
Łukasz Langa [Thu, 24 Aug 2023 17:44:27 +0000 (19:44 +0200)] 
Fix invalid string escape

2 years ago[3.9] gh-108342: Make ssl TestPreHandshakeClose more reliable (GH-108370) (#108407)
Łukasz Langa [Thu, 24 Aug 2023 10:09:11 +0000 (12:09 +0200)] 
[3.9] gh-108342: Make ssl TestPreHandshakeClose more reliable (GH-108370) (#108407)

* In preauth tests of test_ssl, explicitly break reference cycles
  invoving SingleConnectionTestServerThread to make sure that the
  thread is deleted. Otherwise, the test marks the environment as
  altered because the threading module sees a "dangling thread"
  (SingleConnectionTestServerThread). This test leak was introduced
  by the test added for the fix of issue gh-108310.
* Use support.SHORT_TIMEOUT instead of hardcoded 1.0 or 2.0 seconds
  timeout.
* SingleConnectionTestServerThread.run() catchs TimeoutError
* Fix a race condition (missing synchronization) in
  test_preauth_data_to_tls_client(): the server now waits until the
  client connect() completed in call_after_accept().
* test_https_client_non_tls_response_ignored() calls server.join()
  explicitly.
* Replace "localhost" with server.listener.getsockname()[0].
(cherry picked from commit 592bacb6fc0833336c0453e818e9b95016e9fd47)

Co-authored-by: Victor Stinner <vstinner@python.org>
2 years ago[3.9] gh-108342: Break ref cycle in SSLSocket._create() exc (GH-108344) (#108351)
Miss Islington (bot) [Wed, 23 Aug 2023 10:10:49 +0000 (03:10 -0700)] 
[3.9] gh-108342: Break ref cycle in SSLSocket._create() exc (GH-108344) (#108351)

Explicitly break a reference cycle when SSLSocket._create() raises an
exception. Clear the variable storing the exception, since the
exception traceback contains the variables and so creates a reference
cycle.

This test leak was introduced by the test added for the fix of GH-108310.
(cherry picked from commit 64f99350351bc46e016b2286f36ba7cd669b79e3)

Co-authored-by: Victor Stinner <vstinner@python.org>
2 years ago[3.9] gh-107565: Update multissltests and GitHub CI workflows to use OpenSSL 1.1...
Ned Deily [Tue, 22 Aug 2023 18:28:57 +0000 (14:28 -0400)] 
[3.9] gh-107565: Update multissltests and GitHub CI workflows to use OpenSSL 1.1.1v, 3.0.10, and 3.1.2. (#108123)

[3.9] gh-107565: Update multissltests and GitHub CI workflows to use  OpenSSL 1.1.1v, 3.0.10, and 3.1.2.

(cherry picked from commit 441797d4ffb12acda257370b9e5e19ed8d6e8a71)

2 years ago[3.9] gh-107845: Fix symlink handling for tarfile.data_filter (GH-107846) (#108274)
Petr Viktorin [Tue, 22 Aug 2023 18:28:10 +0000 (20:28 +0200)] 
[3.9] gh-107845: Fix symlink handling for tarfile.data_filter (GH-107846) (#108274)

(cherry picked from commit acbd3f9c5c5f23e95267714e41236140d84fe962)

Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Lumír 'Frenzy' Balhar <frenzy.madness@gmail.com>
2 years ago[3.9] gh-99612: Fix PyUnicode_DecodeUTF8Stateful() for ASCII-only data (GH-99613...
Serhiy Storchaka [Tue, 22 Aug 2023 18:25:15 +0000 (21:25 +0300)] 
[3.9] gh-99612: Fix PyUnicode_DecodeUTF8Stateful() for ASCII-only data (GH-99613) (GH-107224) (#107231)

Previously *consumed was not set in this case.
(cherry picked from commit f08e52ccb027f6f703302b8c1a82db9fd3934270).
(cherry picked from commit b8b3e6afc0a48c3cbb7c36d2f73e332edcd6058c)

2 years ago[3.9] gh-108310: Fix CVE-2023-40217: Check for & avoid the ssl pre-close flaw (#108320)
Łukasz Langa [Tue, 22 Aug 2023 17:57:10 +0000 (19:57 +0200)] 
[3.9] gh-108310: Fix CVE-2023-40217: Check for & avoid the ssl pre-close flaw (#108320)

gh-108310: Fix CVE-2023-40217: Check for & avoid the ssl pre-close flaw

Instances of `ssl.SSLSocket` were vulnerable to a bypass of the TLS handshake
and included protections (like certificate verification) and treating sent
unencrypted data as if it were post-handshake TLS encrypted data.

The vulnerability is caused when a socket is connected, data is sent by the
malicious peer and stored in a buffer, and then the malicious peer closes the
socket within a small timing window before the other peers’ TLS handshake can
begin. After this sequence of events the closed socket will not immediately
attempt a TLS handshake due to not being connected but will also allow the
buffered data to be read as if a successful TLS handshake had occurred.

Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org>
2 years ago[3.9] CI: Bump macOS build to use OpenSSL v3.0 (GH-105538) (#105871)
Erlend E. Aasland [Wed, 5 Jul 2023 11:20:44 +0000 (13:20 +0200)] 
[3.9] CI: Bump macOS build to use OpenSSL v3.0 (GH-105538) (#105871)

(cherry picked from commit 34e93d3998bab8acd651c50724eb1977f4860a08)

Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2 years ago[3.9] [3.11] Add single value `agen.athrow(value)` signature to the 3.11 docs gh...
Miss Islington (bot) [Wed, 5 Jul 2023 11:18:49 +0000 (04:18 -0700)] 
[3.9] [3.11] Add single value `agen.athrow(value)` signature to the 3.11 docs gh-105269  (GH-105468) (#105477)

(cherry picked from commit acf3916e84158308660ed07c474a564e045d6884)

Co-authored-by: Federico Caselli <CaselIT@users.noreply.github.com>
2 years agoPost 3.9.17
Łukasz Langa [Tue, 6 Jun 2023 12:17:01 +0000 (14:17 +0200)] 
Post 3.9.17

2 years agoPython 3.9.17 v3.9.17
Łukasz Langa [Tue, 6 Jun 2023 09:32:53 +0000 (11:32 +0200)] 
Python 3.9.17

2 years ago[3.9] gh-105184: document that marshal functions can fail and need to be checked...
Miss Islington (bot) [Mon, 5 Jun 2023 15:42:16 +0000 (08:42 -0700)] 
[3.9] gh-105184: document that marshal functions can fail and need to be checked with PyErr_Occurred (GH-105185) (#105221)

(cherry picked from commit ee26ca13a129da8cf549409d0a1b2e892ff2b4ec)

Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2 years ago[3.9] gh-103142: Upgrade binary builds and CI to OpenSSL 1.1.1u (GH-105174) (GH-10520...
Gregory P. Smith [Mon, 5 Jun 2023 15:41:51 +0000 (08:41 -0700)] 
[3.9] gh-103142: Upgrade binary builds and CI to OpenSSL 1.1.1u (GH-105174) (GH-105200) (#105205)

Upgrade builds to OpenSSL 1.1.1u.

Also updates _ssl_data_111.h from OpenSSL 1.1.1u, _ssl_data_300.h from 3.0.9.

Manual edits to the _ssl_data_300.h file prevent it from removing any
existing definitions in case those exist in some peoples builds and were
important (avoiding regressions during backporting).

(cherry picked from commit ede89af)

Co-authored-by: Ned Deily <nad@python.org>
2 years ago[3.9] Update GitHub CI workflow for macOS. (GH-105303)
Ned Deily [Mon, 5 Jun 2023 06:23:32 +0000 (02:23 -0400)] 
[3.9] Update GitHub CI workflow for macOS. (GH-105303)

2 years ago[3.9] gh-68966: fix versionchanged in docs (GH-105298)
Ned Deily [Mon, 5 Jun 2023 03:56:15 +0000 (23:56 -0400)] 
[3.9] gh-68966: fix versionchanged in docs (GH-105298)

2 years ago[3.9] gh-102153: Start stripping C0 control and space chars in `urlsplit` (GH-102508...
Miss Islington (bot) [Mon, 22 May 2023 10:42:37 +0000 (03:42 -0700)] 
[3.9] gh-102153: Start stripping C0 control and space chars in `urlsplit` (GH-102508) (GH-104575) (GH-104592) (#104593)

gh-102153: Start stripping C0 control and space chars in `urlsplit` (GH-102508)

`urllib.parse.urlsplit` has already been respecting the WHATWG spec a bit GH-25595.

This adds more sanitizing to respect the "Remove any leading C0 control or space from input" [rule](https://url.spec.whatwg.org/GH-url-parsing:~:text=Remove%20any%20leading%20and%20trailing%20C0%20control%20or%20space%20from%20input.) in response to [CVE-2023-24329](https://nvd.nist.gov/vuln/detail/CVE-2023-24329).

I simplified the docs by eliding the state of the world explanatory
paragraph in this security release only backport.  (people will see
that in the mainline /3/ docs)

(cherry picked from commit 2f630e1ce18ad2e07428296532a68b11dc66ad10)
(cherry picked from commit 610cc0ab1b760b2abaac92bd256b96191c46b941)
(cherry picked from commit f48a96a28012d28ae37a2f4587a780a5eb779946)

Co-authored-by: Illia Volochii <illia.volochii@gmail.com>
Co-authored-by: Gregory P. Smith [Google] <greg@krypto.org>
2 years ago[3.9] gh-99889: Fix directory traversal security flaw in uu.decode() (GH-104096)...
Miss Islington (bot) [Mon, 22 May 2023 10:41:30 +0000 (03:41 -0700)] 
[3.9] gh-99889: Fix directory traversal security flaw in uu.decode() (GH-104096) (#104331)

(cherry picked from commit 0aeda297931820436a50b78f4f7f0597274b5df4)

Co-authored-by: Sam Carroll <70000253+samcarroll42@users.noreply.github.com>
2 years ago[3.9] gh-104049: do not expose on-disk location from SimpleHTTPRequestHandler (GH...
Miss Islington (bot) [Mon, 22 May 2023 10:40:50 +0000 (03:40 -0700)] 
[3.9] gh-104049: do not expose on-disk location from SimpleHTTPRequestHandler (GH-104067) (#104120)

Do not expose the local server's on-disk location from `SimpleHTTPRequestHandler` when generating a directory index. (unnecessary information disclosure)

(cherry picked from commit c7c3a60c88de61a79ded9fdaf6bc6a29da4efb9a)

Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2 years ago[3.9] gh-103935: Use `io.open_code()` when executing code in trace and profile module...
Steve Dower [Mon, 22 May 2023 10:40:30 +0000 (11:40 +0100)] 
[3.9] gh-103935: Use `io.open_code()` when executing code in trace and profile modules (GH-103947) (#103953)

Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2 years ago[3.9] gh-102950: Implement PEP 706 – Filter for tarfile.extractall (GH-102953) (...
Petr Viktorin [Mon, 15 May 2023 16:53:58 +0000 (18:53 +0200)] 
[3.9] gh-102950: Implement PEP 706 – Filter for tarfile.extractall (GH-102953) (#104382)

Backport of c8c3956d905e019101038b018129a4c90c9c9b8f

2 years ago[3.9] GH-102126: fix deadlock at shutdown when clearing thread states (GH-102222... 104073/head
Kumar Aditya [Tue, 28 Mar 2023 08:55:36 +0000 (14:25 +0530)] 
[3.9] GH-102126: fix deadlock at shutdown when clearing thread states (GH-102222) (#102236)

(cherry picked from commit 5f11478ce7fda826d399530af4c5ca96c592f144)

2 years ago[3.9] gh-101997: Update bundled pip version to 23.0.1 (GH-101998). (#102243)
Pradyun Gedam [Tue, 28 Mar 2023 08:52:56 +0000 (09:52 +0100)] 
[3.9] gh-101997: Update bundled pip version to 23.0.1 (GH-101998). (#102243)

(cherry picked from commit 89d9ff0f48c51a85920c7372a7df4a2204e32ea5)

2 years ago[3.9] gh-102627: Replace address pointing toward malicious web page (GH-102630) ...
Miss Islington (bot) [Mon, 13 Mar 2023 23:28:36 +0000 (16:28 -0700)] 
[3.9] gh-102627: Replace address pointing toward malicious web page (GH-102630) (GH-102666)

(cherry picked from commit 61479d46848bc7a7f9b571b0b09c4a4b4436d839)

Co-authored-by: Blind4Basics <32236948+Blind4Basics@users.noreply.github.com>
Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2 years ago[3.9] gh-101726: Update the OpenSSL version to 1.1.1t (GH-101727) (GH-101751)
Steve Dower [Tue, 7 Mar 2023 23:01:22 +0000 (23:01 +0000)] 
[3.9] gh-101726: Update the OpenSSL version to 1.1.1t (GH-101727) (GH-101751)

Fixes CVE-2023-0286 (High) and a couple of Medium security issues.
https://www.openssl.org/news/secadv/20230207.txt

Co-authored-by: Gregory P. Smith <greg@krypto.org>
Co-authored-by: Ned Deily <nad@python.org>
2 years ago[3.9] gh-101981: Fix Ubuntu SSL tests with OpenSSL (3.1.0-beta1) CI i… (#102094)
Dong-hee Na [Tue, 21 Feb 2023 16:33:23 +0000 (01:33 +0900)] 
[3.9] gh-101981: Fix Ubuntu SSL tests with OpenSSL (3.1.0-beta1) CI i… (#102094)

[3.9] gh-101981: Fix Ubuntu SSL tests with OpenSSL (3.1.0-beta1) CI issue (gh-102079)

2 years ago[3.9] gh-101283: Improved fallback logic for subprocess with shell=True on Windows...
Miss Islington (bot) [Thu, 9 Feb 2023 09:59:40 +0000 (01:59 -0800)] 
[3.9] gh-101283: Improved fallback logic for subprocess with shell=True on Windows (GH-101286) (#101709)

Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
Co-authored-by: Steve Dower <steve.dower@microsoft.com>
2 years agogh-101422: (docs) TarFile default errorlevel argument is 1, not 0 (GH-101424)
Miss Islington (bot) [Mon, 30 Jan 2023 18:21:08 +0000 (10:21 -0800)] 
gh-101422: (docs) TarFile default errorlevel argument is 1, not 0 (GH-101424)

(cherry picked from commit ea232716d3de1675478db3a302629ba43194c967)

Co-authored-by: Owain Davies <116417456+OTheDev@users.noreply.github.com>
2 years ago[3.9] Bump Azure Pipelines to ubuntu-22.04 (GH-101089) (#101214)
Miss Islington (bot) [Sat, 21 Jan 2023 19:38:52 +0000 (11:38 -0800)] 
[3.9] Bump Azure Pipelines to ubuntu-22.04 (GH-101089) (#101214)

(cherry picked from commit c22a55c8b4f142ff679880ec954691d5920b7845)

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2 years ago[3.9] gh-100180: Update Windows installer to OpenSSL 1.1.1s (GH-100903) (#100904)
Steve Dower [Fri, 20 Jan 2023 22:22:50 +0000 (22:22 +0000)] 
[3.9] gh-100180: Update Windows installer to OpenSSL 1.1.1s (GH-100903) (#100904)

2 years ago[3.9] GH-100892: Fix race in clearing `threading.local` (GH-100922) (#100939)
Kumar Aditya [Fri, 20 Jan 2023 22:21:40 +0000 (03:51 +0530)] 
[3.9] GH-100892: Fix race in clearing `threading.local` (GH-100922) (#100939)

[3.9] [3.10] GH-100892: Fix race in clearing `threading.local` (GH-100922).
(cherry picked from commit 762745a124cbc297cf2fe6f3ec9ca1840bb2e873)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>.
(cherry picked from commit 683e9fe30ecd024f5508b2a33316752870100a96)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
2 years ago[3.9] gh-95778: add doc missing in some places (GH-100627). (#101066)
Éric [Fri, 20 Jan 2023 22:21:00 +0000 (17:21 -0500)] 
[3.9] gh-95778: add doc missing in some places (GH-100627). (#101066)

(cherry picked from commit 46521826cb1883e29e4640f94089dd92c57efc5b)

Co-authored-by: Éric <earaujo@caravan.coop>
2 years ago[3.9] Correct CVE-2020-10735 documentation (GH-100306). (#100697)
Gregory P. Smith [Fri, 20 Jan 2023 22:20:32 +0000 (14:20 -0800)] 
[3.9] Correct CVE-2020-10735 documentation (GH-100306). (#100697)

(cherry picked from commit 1cf3d78c92eb07dc09d15cc2e773b0b1b9436825)
(cherry picked from commit 88fe8d701af3316c8869ea18ea1c7acec6f68c04)

Co-authored-by: Jeremy Paige <ucodery@gmail.com>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
2 years ago[3.9] Update copyright year in README (GH-100863) (GH-100865) (GH-100866)
Miss Islington (bot) [Mon, 9 Jan 2023 03:11:49 +0000 (19:11 -0800)] 
[3.9] Update copyright year in README (GH-100863) (GH-100865) (GH-100866)

(cherry picked from commit 30a6cc418a60fccb91ba574b552203425e594c47)

Co-authored-by: Ned Deily <nad@python.org>
Co-authored-by: HARSHA VARDHAN <75431678+Thunder-007@users.noreply.github.com>
2 years ago[3.9] Update copyright years to 2023. (gh-100851)
Benjamin Peterson [Sun, 8 Jan 2023 23:00:10 +0000 (17:00 -0600)] 
[3.9] Update copyright years to 2023. (gh-100851)

* [3.9] Update copyright years to 2023. (gh-100848).
(cherry picked from commit 11f99323c2ae0ec428c370a335695e3d8d4afc1d)

Co-authored-by: Benjamin Peterson <benjamin@python.org>
* Update additional copyright years to 2023.

Co-authored-by: Ned Deily <nad@python.org>
2 years agoClarify that every thread has its own default context in contextvars (GH-99246)
Miss Islington (bot) [Tue, 20 Dec 2022 11:57:08 +0000 (03:57 -0800)] 
Clarify that every thread has its own default context in contextvars (GH-99246)

(cherry picked from commit cb60b6131bc2bb11c48a15f808914d8b242b9fc5)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2 years agoPost 3.9.16
Łukasz Langa [Tue, 6 Dec 2022 18:50:26 +0000 (19:50 +0100)] 
Post 3.9.16

2 years agoPython 3.9.16 v3.9.16
Łukasz Langa [Tue, 6 Dec 2022 17:59:46 +0000 (18:59 +0100)] 
Python 3.9.16

2 years ago[3.9] gh-100001: Omit control characters in http.server stderr logs. (GH-100002)...
Miss Islington (bot) [Tue, 6 Dec 2022 10:22:12 +0000 (02:22 -0800)] 
[3.9] gh-100001: Omit control characters in http.server stderr logs. (GH-100002) (#100032)

* gh-100001: Omit control characters in http.server stderr logs. (GH-100002)

Replace control characters in http.server.BaseHTTPRequestHandler.log_message with an escaped \xHH sequence to avoid causing problems for the terminal the output is printed to.
(cherry picked from commit d8ab0a4dfa48f881b4ac9ab857d2e9de42f72828)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
* also escape \s (backport of PR #100038).

* add versionadded and remove extra 'to'

Co-authored-by: Gregory P. Smith <greg@krypto.org>
3 years ago[3.9] gh-87604: Avoid publishing list of active per-interpreter audit hooks via the...
Steve Dower [Mon, 21 Nov 2022 18:13:33 +0000 (18:13 +0000)] 
[3.9] gh-87604: Avoid publishing list of active per-interpreter audit hooks via the gc module (GH-99373) (GH-99493)

3 years ago[3.9] gh-98433: Fix quadratic time idna decoding. (GH-99092) (GH-99222) (#99230)
Miss Islington (bot) [Thu, 10 Nov 2022 15:57:41 +0000 (07:57 -0800)] 
[3.9] gh-98433: Fix quadratic time idna decoding. (GH-99092) (GH-99222) (#99230)

There was an unnecessary quadratic loop in idna decoding. This restores
the behavior to linear.

(cherry picked from commit d315722564927c7202dd6e111dc79eaf14240b0d)
(cherry picked from commit a6f6c3a3d6f2b580f2d87885c9b8a9350ad7bf15)

Co-authored-by: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
3 years ago[3.9] gh-97514: Don't use Linux abstract sockets for multiprocessing (GH-98501) ...
Miss Islington (bot) [Fri, 28 Oct 2022 10:08:30 +0000 (03:08 -0700)] 
[3.9] gh-97514: Don't use Linux abstract sockets for multiprocessing (GH-98501) (#98504)

Linux abstract sockets are insecure as they lack any form of filesystem
permissions so their use allows anyone on the system to inject code into
the process.

This removes the default preference for abstract sockets in
multiprocessing introduced in Python 3.9+ via
https://github.com/python/cpython/pull/18866 while fixing
https://github.com/python/cpython/issues/84031.

Explicit use of an abstract socket by a user now generates a
RuntimeWarning.  If we choose to keep this warning, it should be
backported to the 3.7 and 3.8 branches.
(cherry picked from commit 49f61068f49747164988ffc5a442d2a63874fc17)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
3 years ago[3.9] gh-98517: Fix buffer overflows in _sha3 module (GH-98519) (#98526)
Miss Islington (bot) [Fri, 28 Oct 2022 10:08:06 +0000 (03:08 -0700)] 
[3.9] gh-98517: Fix buffer overflows in _sha3 module (GH-98519) (#98526)

This is a port of the applicable part of XKCP's fix [1] for
CVE-2022-37454 and avoids the segmentation fault and the infinite
loop in the test cases published in [2].

[1]: https://github.com/XKCP/XKCP/commit/fdc6fef075f4e81d6b1bc38364248975e08e340a
[2]: https://mouha.be/sha-3-buffer-overflow/

Regression test added by: Gregory P. Smith [Google LLC] <greg@krypto.org>
(cherry picked from commit 0e4e058602d93b88256ff90bbef501ba20be9dd3)

Co-authored-by: Theo Buehler <botovq@users.noreply.github.com>
3 years ago[3.9] gh-98739: Update libexpat from 2.4.9 to 2.5.0 (GH-98742) (#98786)
Miss Islington (bot) [Fri, 28 Oct 2022 10:07:32 +0000 (03:07 -0700)] 
[3.9] gh-98739: Update libexpat from 2.4.9 to 2.5.0 (GH-98742) (#98786)

Update libexpat from 2.4.9 to 2.5.0 to address CVE-2022-43680.

Co-authored-by: Shaun Walbridge <shaun.walbridge@gmail.com>
(cherry picked from commit 3e07f827b359617664ad0880f218f17ae4483299)

3 years ago[3.9] gh-96710: Make the test timing more lenient for the int/str DoS regression...
Miss Islington (bot) [Tue, 11 Oct 2022 21:13:54 +0000 (14:13 -0700)] 
[3.9] gh-96710: Make the test timing more lenient for the int/str DoS regression test. (GH-96717) (#98196)

gh-96710: Make the test timing more lenient for the int/str DoS regression test. (GH-96717)

A regression would still absolutely fail and even a flaky pass isn't
harmful as it'd fail most of the time across our N system test runs.

Windows has a low resolution timer and CI systems are prone to odd
timing so this just gives more leeway to avoid flakiness.
(cherry picked from commit 11e3548fd1d3445ccde971d613633b58d73c3016)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
3 years ago[3.9] gh-68966: Make mailcap refuse to match unsafe filenames/types/params (GH-91993...
Miss Islington (bot) [Tue, 11 Oct 2022 21:13:18 +0000 (14:13 -0700)] 
[3.9] gh-68966: Make mailcap refuse to match unsafe filenames/types/params (GH-91993) (#98190)

gh-68966: Make mailcap refuse to match unsafe filenames/types/params (GH-91993)
(cherry picked from commit b9509ba7a9c668b984dab876c7926fe1dc5aa0ba)

Co-authored-by: Petr Viktorin <encukou@gmail.com>
3 years agoPost 3.9.15
Łukasz Langa [Tue, 11 Oct 2022 15:38:29 +0000 (17:38 +0200)] 
Post 3.9.15

3 years agoPython 3.9.15 v3.9.15
Łukasz Langa [Tue, 11 Oct 2022 14:48:37 +0000 (16:48 +0200)] 
Python 3.9.15

3 years ago[3.9] gh-91708: Revert params note in urllib.parse.urlparse table (GH-96699) (#98054)
Miss Islington (bot) [Fri, 7 Oct 2022 20:53:39 +0000 (13:53 -0700)] 
[3.9] gh-91708: Revert params note in urllib.parse.urlparse table (GH-96699) (#98054)

Revert params note in urllib.parse.urlparse table
(cherry picked from commit eed80458e8e776d15fa862da71dcce58c47e2ca7)

Co-authored-by: Stanley <46876382+slateny@users.noreply.github.com>
3 years ago[3.9] gh-94208: Add even more TLS version/protocol checks for FreeBSD (#98037)
Łukasz Langa [Fri, 7 Oct 2022 18:49:28 +0000 (11:49 -0700)] 
[3.9] gh-94208: Add even more TLS version/protocol checks for FreeBSD (#98037)

Otherwise, buildbot builds would fail since there's no TLS 1.0/1.1 support.

3 years ago[3.9] gh-97897: Prevent os.mkfifo and os.mknod segfaults with macOS 13 SDK (GH-97944...
Miss Islington (bot) [Thu, 6 Oct 2022 19:14:32 +0000 (12:14 -0700)] 
[3.9] gh-97897: Prevent os.mkfifo and os.mknod segfaults with macOS 13 SDK (GH-97944) (#97968)

The macOS 13 SDK includes support for the `mkfifoat` and `mknodat` system calls.
 Using the `dir_fd` option with either `os.mkfifo` or `os.mknod` could result in a
 segfault if cpython is built with the macOS 13 SDK but run on an earlier
 version of macOS. Prevent this by adding runtime support for detection of
 these system calls ("weaklinking") as is done for other newer syscalls on
 macOS.
(cherry picked from commit 6d0a0191a4e5477bd843e62c24d7f3bcad4fd5fc)

Co-authored-by: Ned Deily <nad@python.org>
3 years ago[3.9] gh-96848: Fix -X int_max_str_digits option parsing (GH-96988) (GH-97574)
Miss Islington (bot) [Tue, 4 Oct 2022 18:57:34 +0000 (11:57 -0700)] 
[3.9] gh-96848: Fix -X int_max_str_digits option parsing (GH-96988) (GH-97574)

gh-96848: Fix -X int_max_str_digits option parsing (GH-96988)

Fix command line parsing: reject "-X int_max_str_digits" option with
no value (invalid) when the PYTHONINTMAXSTRDIGITS environment
variable is set to a valid limit.
(cherry picked from commit 41351662bcd21672d8ccfa62fe44d72027e6bcf8)

Co-authored-by: Victor Stinner <vstinner@python.org>
3 years ago[3.9] gh-96577: Fixes buffer overrun in _msi module (GH-96633) (GH-96657)
Miss Islington (bot) [Tue, 4 Oct 2022 17:06:17 +0000 (10:06 -0700)] 
[3.9] gh-96577: Fixes buffer overrun in _msi module (GH-96633) (GH-96657)

gh-96577: Fixes buffer overrun in _msi module (GH-96633)
(cherry picked from commit 4114bcc9ef7595a07196bcecf9c7d6d39f57f64d)

Co-authored-by: Steve Dower <steve.dower@python.org>
3 years ago[3.9] gh-95778: Mention sys.set_int_max_str_digits() in error message (#96874) (...
Victor Stinner [Tue, 4 Oct 2022 17:05:45 +0000 (19:05 +0200)] 
[3.9] gh-95778: Mention sys.set_int_max_str_digits() in error message (#96874) (#96877)

When ValueError is raised if an integer is larger than the limit,
mention sys.set_int_max_str_digits() in the error message.

(cherry picked from commit e841ffc915e82e5ea6e3b473205417d63494808d)

Co-authored-by: Ned Deily <nad@python.org>
3 years ago[3.9] gh-97005: Update libexpat from 2.4.7 to 2.4.9 (gh-97006) (gh-97012)
Miss Islington (bot) [Tue, 4 Oct 2022 17:04:33 +0000 (10:04 -0700)] 
[3.9] gh-97005: Update libexpat from 2.4.7 to 2.4.9 (gh-97006) (gh-97012)

gh-97005: Update libexpat from 2.4.7 to 2.4.9 (gh-97006)

Co-authored-by: Gregory P. Smith [Google] <greg@krypto.org>
(cherry picked from commit 10e3d398c31cc1695752fc52bc6ca2ce9ef6237e)

Co-authored-by: Dong-hee Na <donghee.na@python.org>
Co-authored-by: Ned Deily <nad@python.org>
3 years ago[3.9] gh-97616: list_resize() checks for integer overflow (GH-97617) (GH-97627)
Miss Islington (bot) [Tue, 4 Oct 2022 17:01:10 +0000 (10:01 -0700)] 
[3.9] gh-97616: list_resize() checks for integer overflow (GH-97617) (GH-97627)

gh-97616: list_resize() checks for integer overflow (GH-97617)

Fix multiplying a list by an integer (list *= int): detect the
integer overflow when the new allocated length is close to the
maximum size.  Issue reported by Jordan Limor.

list_resize() now checks for integer overflow before multiplying the
new allocated length by the list item size (sizeof(PyObject*)).
(cherry picked from commit a5f092f3c469b674b8d9ccbd4e4377230c9ac7cf)

Co-authored-by: Victor Stinner <vstinner@python.org>
3 years ago[3.9] gh-97612: Fix shell injection in get-remote-certificate.py (GH-97613) (GH-97632)
Miss Islington (bot) [Tue, 4 Oct 2022 17:00:16 +0000 (10:00 -0700)] 
[3.9] gh-97612: Fix shell injection in get-remote-certificate.py (GH-97613) (GH-97632)

gh-97612: Fix shell injection in get-remote-certificate.py (GH-97613)

Fix a shell code injection vulnerability in the
get-remote-certificate.py example script. The script no longer uses a
shell to run "openssl" commands. Issue reported and initial fix by
Caleb Shortt.

Remove the Windows code path to send "quit" on stdin to the "openssl
s_client" command: use DEVNULL on all platforms instead.

Co-authored-by: Caleb Shortt <caleb@rgauge.com>
(cherry picked from commit 83a0f44ffd8b398673ae56c310cf5768d359c341)

Co-authored-by: Victor Stinner <vstinner@python.org>
3 years ago[3.9] gh-87597: Document TimeoutExpired.stdout & .stderr types (GH-97685) (GH-97688)
Miss Islington (bot) [Tue, 4 Oct 2022 16:59:07 +0000 (09:59 -0700)] 
[3.9] gh-87597: Document TimeoutExpired.stdout & .stderr types (GH-97685) (GH-97688)

This documents the behavior that has always been the case since timeout
support was introduced in Python 3.3.
(cherry picked from commit b05dd796492160c37c9e15e3882f699f411b3461)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
3 years ago[3.9] gh-96845: Fix docs around importlib.abc.Traversable (GH-97515) (GH-97761)
Jason R. Coombs [Tue, 4 Oct 2022 16:58:34 +0000 (12:58 -0400)] 
[3.9] gh-96845: Fix docs around importlib.abc.Traversable (GH-97515) (GH-97761)

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
3 years agogh-97032: Set tkinter path for macOS CI (GH-97525)
Dong-hee Na [Sat, 24 Sep 2022 19:31:12 +0000 (04:31 +0900)] 
gh-97032: Set tkinter path for macOS CI (GH-97525)

3 years agoPost 3.9.14
Łukasz Langa [Tue, 6 Sep 2022 18:47:37 +0000 (20:47 +0200)] 
Post 3.9.14

3 years agoPython 3.9.14 v3.9.14
Łukasz Langa [Tue, 6 Sep 2022 17:23:34 +0000 (19:23 +0200)] 
Python 3.9.14

3 years ago[3.9] gh-95778: CVE-2020-10735: Prevent DoS by very large int() (#96502)
Gregory P. Smith [Mon, 5 Sep 2022 09:21:03 +0000 (02:21 -0700)] 
[3.9] gh-95778: CVE-2020-10735: Prevent DoS by very large int() (#96502)

* Correctly pre-check for int-to-str conversion (#96537)

Converting a large enough `int` to a decimal string raises `ValueError` as expected. However, the raise comes _after_ the quadratic-time base-conversion algorithm has run to completion. For effective DOS prevention, we need some kind of check before entering the quadratic-time loop. Oops! =)

The quick fix: essentially we catch _most_ values that exceed the threshold up front. Those that slip through will still be on the small side (read: sufficiently fast), and will get caught by the existing check so that the limit remains exact.

The justification for the current check. The C code check is:
```c
max_str_digits / (3 * PyLong_SHIFT) <= (size_a - 11) / 10
```

In GitHub markdown math-speak, writing $M$ for `max_str_digits`, $L$ for `PyLong_SHIFT` and $s$ for `size_a`, that check is:
$$\left\lfloor\frac{M}{3L}\right\rfloor \le \left\lfloor\frac{s - 11}{10}\right\rfloor$$

From this it follows that
$$\frac{M}{3L} < \frac{s-1}{10}$$
hence that
$$\frac{L(s-1)}{M} > \frac{10}{3} > \log_2(10).$$
So
$$2^{L(s-1)} > 10^M.$$
But our input integer $a$ satisfies $|a| \ge 2^{L(s-1)}$, so $|a|$ is larger than $10^M$. This shows that we don't accidentally capture anything _below_ the intended limit in the check.

<!-- gh-issue-number: gh-95778 -->
* Issue: gh-95778
<!-- /gh-issue-number -->

Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org>
Co-authored-by: Christian Heimes <christian@python.org>
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
3 years ago[3.9] gh-91423: Remove bugs.python.org from bugs.rst (GH-91425) (GH-95614)
Shantanu [Thu, 4 Aug 2022 16:14:04 +0000 (09:14 -0700)] 
[3.9] gh-91423: Remove bugs.python.org from bugs.rst (GH-91425) (GH-95614)

Co-authored-by: roy reznik <royreznik@gmail.com>
Co-authored-by: Inada Naoki <songofacandy@gmail.com>
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>.
(cherry picked from commit df81d2892eed3a256eb61ce59304f2173fb0c945)

3 years agogh-95280: Fix test_get_ciphers on systems without RSA key exchange (GH-95282) (GH...
Miss Islington (bot) [Fri, 29 Jul 2022 15:20:06 +0000 (08:20 -0700)] 
gh-95280: Fix test_get_ciphers on systems without RSA key exchange (GH-95282) (GH-95323)

(cherry picked from commit 565403038b75eb64ea483b2757ba30769246d853)

Co-authored-by: Christian Heimes <christian@python.org>
3 years ago[3.9] gh-90359: Update documentation to follow PEP 495. (gh-94800). (gh-94835)
Dong-hee Na [Thu, 28 Jul 2022 19:31:17 +0000 (04:31 +0900)] 
[3.9] gh-90359: Update documentation to follow PEP 495. (gh-94800). (gh-94835)

(cherry picked from commit 07374cce52abb7fd39729dc1b646ca3029b64c64)

Co-authored-by: Dong-hee Na <donghee.na@python.org>
3 years ago[3.9] gh-94208: Add more TLS version/protocol checks for FreeBSD (GH-94347) (GH-95312)
Łukasz Langa [Wed, 27 Jul 2022 21:43:02 +0000 (23:43 +0200)] 
[3.9] gh-94208: Add more TLS version/protocol checks for FreeBSD (GH-94347) (GH-95312)

Three test cases were failing on FreeBSD with latest OpenSSL.
(cherry picked from commit 1bc86c26253befa006c0f52eebb6ed633c7d1e5c)

Co-authored-by: Christian Heimes <christian@python.org>
3 years agogh-94821: Fix autobind of empty unix domain address (GH-94826) (GH-94875)
Miss Islington (bot) [Tue, 26 Jul 2022 10:07:41 +0000 (03:07 -0700)] 
gh-94821: Fix autobind of empty unix domain address (GH-94826) (GH-94875)

When binding a unix socket to an empty address on Linux, the socket is
automatically bound to an available address in the abstract namespace.

    >>> s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
    >>> s.bind("")
    >>> s.getsockname()
    b'\x0075499'

Since python 3.9, the socket is bound to the one address:

    >>> s.getsockname()
    b'\x00'

And trying to bind multiple sockets will fail with:

    Traceback (most recent call last):
      File "/home/nsoffer/src/cpython/Lib/test/test_socket.py", line 5553, in testAutobind
        s2.bind("")
    OSError: [Errno 98] Address already in use

Added 2 tests:
- Auto binding empty address on Linux
- Failing to bind an empty address on other platforms

Fixes f6b3a07b7df6 (bpo-44493: Add missing terminated NUL in sockaddr_un's length (GH-26866)
(cherry picked from commit c22f134211743cd5ad14cec1dd4f527bee542b4c)

Co-authored-by: Nir Soffer <nsoffer@redhat.com>
3 years ago[3.9] gh-90355: Add isolated flag if currently isolated (GH-92857) (GH-94570)
Łukasz Langa [Tue, 5 Jul 2022 16:06:57 +0000 (18:06 +0200)] 
[3.9] gh-90355: Add isolated flag if currently isolated (GH-92857) (GH-94570)

Co-authored-by: Carter Dodd <carter.dodd@gmail.com>
Co-authored-by: Éric <merwok@netwok.org>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit c8556bcf6c0b05ac46bd74880626a2853e7c99a1)

3 years agogh-81054: Document that SimpleHTTPRequestHandler follows symbolic links (GH-94416...
Miss Islington (bot) [Fri, 1 Jul 2022 16:41:54 +0000 (09:41 -0700)] 
gh-81054: Document that SimpleHTTPRequestHandler follows symbolic links (GH-94416) (GH-94494)

(cherry picked from commit 80aaeabb8bd1e6b49598a7e23e0f8d99b3fcecaf)

Co-authored-by: Sam Ezeh <sam.z.ezeh@gmail.com>