python3.9.git
12 months ago[3.11] gh-103848: Adds checks to ensure that bracketed hosts found by urlsplit are...
Miss Islington (bot) [Wed, 10 May 2023 06:35:24 +0000 (23:35 -0700)]
[3.11] gh-103848: Adds checks to ensure that bracketed hosts found by urlsplit are of IPv6 or IPvFuture format (GH-103849) (#104349)

gh-103848: Adds checks to ensure that bracketed hosts found by urlsplit are of IPv6 or IPvFuture format (GH-103849)

* Adds checks to ensure that bracketed hosts found by urlsplit are of IPv6 or IPvFuture format

---------

(cherry picked from commit 29f348e232e82938ba2165843c448c2b291504c5)

Co-authored-by: JohnJamesUtley <81572567+JohnJamesUtley@users.noreply.github.com>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
Gbp-Pq: Name 0027-3.11-gh-103848-Adds-checks-to-ensure-that-bracketed-.patch

12 months ago[3.9] gh-124651: Quote template strings in `venv` activation scripts (GH-124712)...
Victor Stinner [Mon, 4 Nov 2024 15:16:35 +0000 (16:16 +0100)]
[3.9] gh-124651: Quote template strings in `venv` activation scripts (GH-124712) (GH-126185) (GH-126269) (GH-126301)

(cherry picked from commit ae961ae94bf19c8f8c7fbea3d1c25cc55ce8ae97)

Gbp-Pq: Name 0026-3.9-gh-124651-Quote-template-strings-in-venv-activat.patch

12 months ago[3.9] gh-123270: Replaced SanitizedNames with a more surgical fix. (GH-123354) (...
Jason R. Coombs [Wed, 4 Sep 2024 15:46:48 +0000 (11:46 -0400)]
[3.9] gh-123270: Replaced SanitizedNames with a more surgical fix. (GH-123354) (#123432)

Applies changes from zipp 3.20.1 and jaraco/zippGH-124
(cherry picked from commit 2231286d78d328c2f575e0b05b16fe447d1656d6)
(cherry picked from commit 17b77bb41409259bad1cd6c74761c18b6ab1e860)

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
Gbp-Pq: Name 0025-3.9-gh-123270-Replaced-SanitizedNames-with-a-more-su.patch

12 months ago[3.9] gh-123067: Fix quadratic complexity in parsing "-quoted cookie values with...
Miss Islington (bot) [Wed, 4 Sep 2024 15:49:40 +0000 (17:49 +0200)]
[3.9] gh-123067: Fix quadratic complexity in parsing "-quoted cookie values with backslashes (GH-123075) (#123107)

This fixes CVE-2024-7592.
(cherry picked from commit 44e458357fca05ca0ae2658d62c8c595b048b5ef)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Gbp-Pq: Name 0024-3.9-gh-123067-Fix-quadratic-complexity-in-parsing-qu.patch

12 months ago[3.9] gh-121650: Encode newlines in headers, and verify headers are sound (GH-122233...
Łukasz Langa [Wed, 4 Sep 2024 15:39:02 +0000 (17:39 +0200)]
[3.9] gh-121650: Encode newlines in headers, and verify headers are sound (GH-122233) (#122610)

Per RFC 2047:

> [...] these encoding schemes allow the
> encoding of arbitrary octet values, mail readers that implement this
> decoding should also ensure that display of the decoded data on the
> recipient's terminal will not cause unwanted side-effects

It seems that the "quoted-word" scheme is a valid way to include
a newline character in a header value, just like we already allow
undecodable bytes or control characters.
They do need to be properly quoted when serialized to text, though.

This should fail for custom fold() implementations that aren't careful
about newlines.

(cherry picked from commit 097633981879b3c9de9a1dd120d3aa585ecc2384)

Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Bas Bloemsaat <bas@bloemsaat.org>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Gbp-Pq: Name 0023-3.9-gh-121650-Encode-newlines-in-headers-and-verify-.patch

12 months ago[3.9] gh-121285: Remove backtracking when parsing tarfile headers (GH-121286) (#123641)
Seth Michael Larson [Wed, 4 Sep 2024 15:46:01 +0000 (10:46 -0500)]
[3.9] gh-121285: Remove backtracking when parsing tarfile headers (GH-121286) (#123641)

* Remove backtracking when parsing tarfile headers
* Rewrite PAX header parsing to be stricter
* Optimize parsing of GNU extended sparse headers v0.0

(cherry picked from commit 34ddb64d088dd7ccc321f6103d23153256caa5d4)

Co-authored-by: Seth Michael Larson <seth@python.org>
Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
Gbp-Pq: Name 0022-3.9-gh-121285-Remove-backtracking-when-parsing-tarfi.patch

12 months ago[3.9] gh-113171: gh-65056: Fix "private" (non-global) IP address ranges (GH-113179...
Petr Viktorin [Tue, 7 May 2024 09:57:58 +0000 (11:57 +0200)]
[3.9] gh-113171: gh-65056: Fix "private" (non-global) IP address ranges (GH-113179) (GH-113186) (GH-118177) (GH-118472)

The _private_networks variables, used by various is_private
implementations, were missing some ranges and at the same time had
overly strict ranges (where there are more specific ranges considered
globally reachable by the IANA registries).

This patch updates the ranges with what was missing or otherwise
incorrect.

100.64.0.0/10 is left alone, for now, as it's been made special in [1].

The _address_exclude_many() call returns 8 networks for IPv4, 121
networks for IPv6.

[1] https://github.com/python/cpython/issues/61602

In 3.10 and below, is_private checks whether the network and broadcast
address are both private.
In later versions (where the test wss backported from), it checks
whether they both are in the same private network.

For 0.0.0.0/0, both 0.0.0.0 and 255.225.255.255 are private,
but one is in 0.0.0.0/8 ("This network") and the other in
255.255.255.255/32 ("Limited broadcast").

---------

Co-authored-by: Jakub Stasiak <jakub@stasiak.at>
Gbp-Pq: Name 0021-3.9-gh-113171-gh-65056-Fix-private-non-global-IP-add.patch

12 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>
Gbp-Pq: Name 0020-3.9-gh-109858-Protect-zipfile-from-quoted-overlap-zi.patch

12 months ago[3.9] gh-114572: Fix locking in cert_store_stats and get_ca_certs (#118109)
Seth Michael Larson [Fri, 10 May 2024 11:46:12 +0000 (06:46 -0500)]
[3.9] gh-114572: Fix locking in cert_store_stats and get_ca_certs (#118109)

Gbp-Pq: Name 0019-3.9-gh-114572-Fix-locking-in-cert_store_stats-and-ge.patch

12 months 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>
Gbp-Pq: Name 0018-3.9-gh-108342-Make-ssl-TestPreHandshakeClose-more-re.patch

12 months 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>
Gbp-Pq: Name 0017-3.9-gh-108342-Break-ref-cycle-in-SSLSocket._create-e.patch

12 months 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>
Gbp-Pq: Name 0016-3.9-gh-108310-Fix-CVE-2023-40217-Check-for-avoid-the.patch

12 months ago[3.9] [CVE-2023-27043] gh-102988: Reject malformed addresses in email.parseaddr(...
Petr Viktorin [Fri, 6 Sep 2024 11:13:54 +0000 (13:13 +0200)]
[3.9] [CVE-2023-27043] gh-102988: Reject malformed addresses in email.parseaddr() (GH-111116) (#123769)

Detect email address parsing errors and return empty tuple to
indicate the parsing error (old API). Add an optional 'strict'
parameter to getaddresses() and parseaddr() functions. Patch by
Thomas Dwyer.

(cherry picked from commit 4a153a1d3b18803a684cd1bcc2cdf3ede3dbae19)

Co-authored-by: Victor Stinner <vstinner@python.org>
Co-Authored-By: Thomas Dwyer <github@tomd.tel>
Gbp-Pq: Name 0015-3.9-CVE-2023-27043-gh-102988-Reject-malformed-addres.patch

12 months agobpo-27513: email.utils.getaddresses() now handles Header objects (GH-13797) (#27245)
Miss Islington (bot) [Mon, 19 Jul 2021 17:28:56 +0000 (10:28 -0700)]
bpo-27513: email.utils.getaddresses() now handles Header objects (GH-13797) (#27245)

getaddresses() should be able to handle a Header object if passed
one.

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 89f4c34797de2f0e5045da2b97c1c8cbbb42fbb2)

Co-authored-by: Zackery Spytz <zspytz@gmail.com>
Gbp-Pq: Name 0014-bpo-27513-email.utils.getaddresses-now-handles-Heade.patch

12 months 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>
Gbp-Pq: Name 0013-3.9-gh-102153-Start-stripping-C0-control-and-space-c.patch

12 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>
Gbp-Pq: Name 0012-3.9-gh-91133-tempfile.TemporaryDirectory-fix-symlink.patch

12 months 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>
Gbp-Pq: Name 0011-3.9-gh-98433-Fix-quadratic-time-idna-decoding.-GH-99.patch

12 months 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>
Gbp-Pq: Name 0010-3.9-gh-97514-Don-t-use-Linux-abstract-sockets-for-mu.patch

12 months agobpo-36384: Leading zeros in IPv4 addresses are no longer tolerated (GH-25099) (GH...
Miss Islington (bot) [Sun, 2 May 2021 13:49:03 +0000 (06:49 -0700)]
bpo-36384: Leading zeros in IPv4 addresses are no longer tolerated (GH-25099) (GH-25815)

Reverts commit e653d4d8e820a7a004ad399530af0135b45db27a and makes
parsing even more strict. Like socket.inet_pton() any leading zero
is now treated as invalid input.

Signed-off-by: Christian Heimes <christian@python.org>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
(cherry picked from commit 60ce8f0be6354ad565393ab449d8de5d713f35bc)

Gbp-Pq: Name 0009-bpo-36384-Leading-zeros-in-IPv4-addresses-are-no-lon.patch

12 months agogh-87389: Fix an open redirection vulnerability in http.server. (GH-93879) (GH-94093)
Miss Islington (bot) [Wed, 22 Jun 2022 08:42:02 +0000 (01:42 -0700)]
gh-87389: Fix an open redirection vulnerability in http.server. (GH-93879) (GH-94093)

Fix an open redirection vulnerability in the `http.server` module when
an URI path starts with `//` that could produce a 301 Location header
with a misleading target.  Vulnerability discovered, and logic fix
proposed, by Hamza Avvan (@hamzaavvan).

Test and comments authored by Gregory P. Smith [Google].
(cherry picked from commit 4abab6b603dd38bec1168e9a37c40a48ec89508e)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
Gbp-Pq: Name 0008-gh-87389-Fix-an-open-redirection-vulnerability-in-ht.patch

12 months agobpo-43285 Make ftplib not trust the PASV response. (GH-24838)
Miss Islington (bot) [Mon, 15 Mar 2021 19:02:45 +0000 (12:02 -0700)]
bpo-43285 Make ftplib not trust the PASV response. (GH-24838)

bpo-43285: Make ftplib not trust the PASV response.

The IPv4 address value returned from the server in response to the PASV command
should not be trusted.  This prevents a malicious FTP server from using the
response to probe IPv4 address and port combinations on the client network.

Instead of using the returned address, we use the IP address we're
already connected to.  This is the strategy other ftp clients adopted,
and matches the only strategy available for the modern IPv6 EPSV command
where the server response must return a port number and nothing else.

For the rare user who _wants_ this ugly behavior, set a `trust_server_pasv_ipv4_address`
attribute on your `ftplib.FTP` instance to True.
(cherry picked from commit 0ab152c6b5d95caa2dc1a30fa96e10258b5f188e)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
Gbp-Pq: Name 0007-bpo-43285-Make-ftplib-not-trust-the-PASV-response.-G.patch

12 months agobpo-44022: Improve the regression test. (GH-26503)
Miss Islington (bot) [Thu, 3 Jun 2021 04:10:22 +0000 (21:10 -0700)]
bpo-44022: Improve the regression test. (GH-26503)

It wasn't actually detecting the regression due to the
assertion being too lenient.
(cherry picked from commit e60ab843cbb016fb6ff8b4f418641ac05a9b2fcc)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
Gbp-Pq: Name 0006-bpo-44022-Improve-the-regression-test.-GH-26503.patch

12 months agobpo-44022: Fix http client infinite line reading (DoS) after a HTTP 100 Continue...
Miss Islington (bot) [Wed, 5 May 2021 23:05:52 +0000 (16:05 -0700)]
bpo-44022: Fix http client infinite line reading (DoS) after a HTTP 100 Continue (GH-25916)

Fixes http.client potential denial of service where it could get stuck reading lines from a malicious server after a 100 Continue response.

Co-authored-by: Gregory P. Smith <greg@krypto.org>
(cherry picked from commit 47895e31b6f626bc6ce47d175fe9d43c1098909d)

Co-authored-by: Gen Xu <xgbarry@gmail.com>
Gbp-Pq: Name 0005-bpo-44022-Fix-http-client-infinite-line-reading-DoS-.patch

12 months agobpo-43075: Fix ReDoS in urllib AbstractBasicAuthHandler (GH-24391) (GH-25247)
Miss Islington (bot) [Wed, 7 Apr 2021 15:58:04 +0000 (08:58 -0700)]
bpo-43075: Fix ReDoS in urllib AbstractBasicAuthHandler (GH-24391) (GH-25247)

Fix Regular Expression Denial of Service (ReDoS) vulnerability in
urllib.request.AbstractBasicAuthHandler. The ReDoS-vulnerable regex
has quadratic worst-case complexity and it allows cause a denial of
service when identifying crafted invalid RFCs. This ReDoS issue is on
the client side and needs remote attackers to control the HTTP server.
(cherry picked from commit 7215d1ae25525c92b026166f9d5cac85fb1defe1)

Co-authored-by: Yeting Li <liyt@ios.ac.cn>
Co-authored-by: Yeting Li <liyt@ios.ac.cn>
Gbp-Pq: Name 0004-bpo-43075-Fix-ReDoS-in-urllib-AbstractBasicAuthHandl.patch

12 months agobpo-42988: Remove the pydoc getfile feature (GH-25015)
Miss Islington (bot) [Mon, 29 Mar 2021 13:08:00 +0000 (06:08 -0700)]
bpo-42988: Remove the pydoc getfile feature (GH-25015)

CVE-2021-3426: Remove the "getfile" feature of the pydoc module which
could be abused to read arbitrary files on the disk (directory
traversal vulnerability). Moreover, even source code of Python
modules can contain sensitive data like passwords. Vulnerability
reported by David Schwörer.
(cherry picked from commit 9b999479c0022edfc9835a8a1f06e046f3881048)

Co-authored-by: Victor Stinner <vstinner@python.org>
Gbp-Pq: Name 0003-bpo-42988-Remove-the-pydoc-getfile-feature-GH-25015.patch

12 months 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>
Gbp-Pq: Name 0002-3.9-gh-95778-CVE-2020-10735-Prevent-DoS-by-very-larg.patch

12 months 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>
Gbp-Pq: Name 0001-3.9-gh-68966-Make-mailcap-refuse-to-match-unsafe-fil.patch

12 months agompdecimal-2.5.1
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
mpdecimal-2.5.1

Gbp-Pq: Name mpdecimal-2.5.1.diff

12 months agosphinx3
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
sphinx3

Gbp-Pq: Name sphinx3.diff

12 months agohurd_kfreebsd_thread_native_id
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
hurd_kfreebsd_thread_native_id

Gbp-Pq: Name hurd_kfreebsd_thread_native_id.diff

12 months agosysconfigdata-name
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
sysconfigdata-name

Gbp-Pq: Name sysconfigdata-name.diff

12 months agoUse aligned access for _sha3 module on ARM.
Dave Jones [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
Use aligned access for _sha3 module on ARM.

Gbp-Pq: Name arm-alignment.diff

12 months agoargparse-no-shutil
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
argparse-no-shutil

Gbp-Pq: Name argparse-no-shutil.diff

12 months agobuild-math-object
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
build-math-object

Gbp-Pq: Name build-math-object.diff

12 months agoAdd the option to build Texinfo-format documentation.
Benjamin Moody [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
Add the option to build Texinfo-format documentation.

Bug-Debian: https://bugs.debian.org/881959
Last-Update: 2017-11-27

Gbp-Pq: Name doc-build-texinfo.diff

12 months agolocal-doc-references
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
local-doc-references

Gbp-Pq: Name local-doc-references.diff

12 months agopydoc-use-pager
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
pydoc-use-pager

# DP: pydoc: use the pager command if available.

# DP: pydoc: use the pager command if available.

Gbp-Pq: Name pydoc-use-pager.diff

12 months agoreproducible-buildinfo
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
reproducible-buildinfo

# DP: Build getbuildinfo.o with DATE/TIME values when defined

# DP: Build getbuildinfo.o with DATE/TIME values when defined

Gbp-Pq: Name reproducible-buildinfo.diff

12 months agomangle-fstack-protector
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
mangle-fstack-protector

# DP: When using GCC versions older than 4.9, automagically mangle
# DP: -fstack-protector-strong to -fstack-protector

# DP: When using GCC versions older than 4.9, automagically mangle
# DP: -fstack-protector-strong to -fstack-protector

Gbp-Pq: Name mangle-fstack-protector.diff

12 months agoensurepip-disabled
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
ensurepip-disabled

# DP: Disable ensurepip for the system installation, only enable it for virtual environments.

# DP: Disable ensurepip for the system installation, only enable it for virtual environments.

Gbp-Pq: Name ensurepip-disabled.diff

12 months agoensurepip-wheels
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
ensurepip-wheels

Gbp-Pq: Name ensurepip-wheels.diff

12 months agodisable-some-tests
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
disable-some-tests

# DP: Disable some failing tests we are not interested in

# DP: Disable some failing tests we are not interested in

Gbp-Pq: Name disable-some-tests.diff

12 months agotempfile-minimal
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
tempfile-minimal

# DP: Avoid shutil import when it is not available.

# DP: Avoid shutil import when it is not available.

Gbp-Pq: Name tempfile-minimal.diff

12 months agomultiarch-extname
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
multiarch-extname

# DP: Make sure to rename extensions to a tag including the MULTIARCH name

# DP: Make sure to rename extensions to a tag including the MULTIARCH name

this patch can be dropped for python3.5 final, if the upstream chage is kept.

Gbp-Pq: Name multiarch-extname.diff

12 months agotest-no-random-order
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
test-no-random-order

# DP: Don't run the test suite in random order.

# DP: Don't run the test suite in random order.

Gbp-Pq: Name test-no-random-order.diff

12 months agoext-no-libpython-link
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
ext-no-libpython-link

# DP: Don't link extensions with the shared libpython library.

# DP: Don't link extensions with the shared libpython library.

Gbp-Pq: Name ext-no-libpython-link.diff

12 months agolib2to3-no-pickled-grammar
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
lib2to3-no-pickled-grammar

Gbp-Pq: Name lib2to3-no-pickled-grammar.diff

12 months agomultiarch
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
multiarch

Gbp-Pq: Name multiarch.diff

12 months agoctypes-arm
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
ctypes-arm

Gbp-Pq: Name ctypes-arm.diff

12 months agolib-argparse
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
lib-argparse

# DP: argparse.py: Make the gettext import conditional

# DP: argparse.py: Make the gettext import conditional

Gbp-Pq: Name lib-argparse.diff

12 months agodisable-sem-check
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
disable-sem-check

# DP: Assume working semaphores, don't rely on running kernel for the check.

# DP: Assume working semaphores, don't rely on running kernel for the check.

Gbp-Pq: Name disable-sem-check.diff

12 months agolangpack-gettext
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
langpack-gettext

# DP: Description: support alternative gettext tree in
# DP: /usr/share/locale-langpack; if a file is present in both trees,
# DP: prefer the newer one
# DP: Upstream status: Ubuntu-Specific

# DP: Description: support alternative gettext tree in
# DP: /usr/share/locale-langpack; if a file is present in both trees,
# DP: prefer the newer one
# DP: Upstream status: Ubuntu-Specific

Gbp-Pq: Name langpack-gettext.diff

12 months agoprofiled-build
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
profiled-build

# DP: Ignore errors in the profile task.

# DP: Ignore errors in the profile task.

Gbp-Pq: Name profiled-build.diff

12 months agobdist-wininst-notfound
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
bdist-wininst-notfound

# DP: suggest installation of the pythonX.Y-dev package, if bdist_wininst
# DP: cannot find the wininst-* files.

# DP: suggest installation of the pythonX.Y-dev package, if bdist_wininst
# DP: cannot find the wininst-* files.

Gbp-Pq: Name bdist-wininst-notfound.diff

12 months agosetup-modules
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
setup-modules

Gbp-Pq: Name setup-modules.diff

12 months agolink-opt
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
link-opt

# DP: Call the linker with -O1 -Bsymbolic-functions

# DP: Call the linker with -O1 -Bsymbolic-functions

Gbp-Pq: Name link-opt.diff

12 months agogdbm-import
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
gdbm-import

# DP: suggest installation of python3-gdbm package on failing _gdbm import

# DP: suggest installation of python3-gdbm package on failing _gdbm import

Gbp-Pq: Name gdbm-import.diff

12 months agotkinter-import
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
tkinter-import

# DP: suggest installation of python-tk package on failing _tkinter import

# DP: suggest installation of python-tk package on failing _tkinter import

Gbp-Pq: Name tkinter-import.diff

12 months agodistutils-sysconfig-2
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
distutils-sysconfig-2

Gbp-Pq: Name distutils-sysconfig-2.diff

12 months agodistutils-sysconfig
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
distutils-sysconfig

# DP: Get CONFIGURE_CFLAGS, CONFIGURE_CPPFLAGS, CONFIGURE_LDFLAGS from
# DP: the python build, when CFLAGS, CPPFLAGS, LDSHARED) are not set
# DP: in the environment.

# DP: Get CONFIGURE_CFLAGS, CONFIGURE_CPPFLAGS, CONFIGURE_LDFLAGS from
# DP: the python build, when CFLAGS, CPPFLAGS, LDSHARED) are not set
# DP: in the environment.

Gbp-Pq: Name distutils-sysconfig.diff

12 months agodistutils-link
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
distutils-link

# DP: Don't add standard library dirs to library_dirs and runtime_library_dirs.

# DP: Don't add standard library dirs to library_dirs and runtime_library_dirs.

Gbp-Pq: Name distutils-link.diff

12 months agolocale-module
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
locale-module

# DP:   * Lib/locale.py:
# DP:     - Don't map 'utf8', 'utf-8' to 'utf', which is not a known encoding
# DP:       for glibc.

# DP:   * Lib/locale.py:
# DP:     - Don't map 'utf8', 'utf-8' to 'utf', which is not a known encoding
# DP:       for glibc.

Gbp-Pq: Name locale-module.diff

12 months agodistutils-install-layout
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
distutils-install-layout

# DP: distutils: Add an option --install-layout=deb, which
# DP: - installs into $prefix/dist-packages instead of $prefix/site-packages.
# DP: - doesn't encode the python version into the egg name.

# DP: distutils: Add an option --install-layout=deb, which
# DP: - installs into $prefix/dist-packages instead of $prefix/site-packages.
# DP: - doesn't encode the python version into the egg name.

Gbp-Pq: Name distutils-install-layout.diff

12 months agodeb-locations
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
deb-locations

# DP: adjust locations of directories to debian policy

# DP: adjust locations of directories to debian policy

Gbp-Pq: Name deb-locations.diff

12 months agodeb-setup
Matthias Klose [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
deb-setup

# DP: Don't include /usr/local/include and /usr/local/lib as gcc search paths

# DP: Don't include /usr/local/include and /usr/local/lib as gcc search paths

Gbp-Pq: Name deb-setup.diff

12 months agopython3.9 (3.9.2-1+deb11u2) bullseye-security; urgency=medium
Adrian Bunk [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
python3.9 (3.9.2-1+deb11u2) bullseye-security; urgency=medium

  * Non-maintainer upload by the LTS Team.
  * Fix the binary-all tests.

[dgit import unpatched python3.9 3.9.2-1+deb11u2]

12 months agoImport python3.9_3.9.2-1+deb11u2.debian.tar.xz
Adrian Bunk [Sun, 1 Dec 2024 12:12:57 +0000 (14:12 +0200)]
Import python3.9_3.9.2-1+deb11u2.debian.tar.xz

[dgit import tarball python3.9 3.9.2-1+deb11u2 python3.9_3.9.2-1+deb11u2.debian.tar.xz]

4 years agoImport python3.9_3.9.2.orig.tar.xz
Matthias Klose [Sun, 28 Feb 2021 17:03:44 +0000 (18:03 +0100)]
Import python3.9_3.9.2.orig.tar.xz

[dgit import orig python3.9_3.9.2.orig.tar.xz]