<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Include/internal/pystate.h, branch 3.7</title>
<subtitle>github.com: python/cpython.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/'/>
<entry>
<title>[3.7] gh-95778: CVE-2020-10735: Prevent DoS by very large int() (GH-96504)</title>
<updated>2022-09-06T05:24:36+00:00</updated>
<author>
<name>Gregory P. Smith</name>
<email>greg@krypto.org</email>
</author>
<published>2022-09-06T05:24:36+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=15ec1afd4fcd2da1e2d2b256c562fb42d8d886a2'/>
<id>15ec1afd4fcd2da1e2d2b256c562fb42d8d886a2</id>
<content type='text'>
Converting between `int` and `str` in bases other than 2
(binary), 4, 8 (octal), 16 (hexadecimal), or 32 such as base 10 (decimal) now
raises a `ValueError` if the number of digits in string form is above a
limit to avoid potential denial of service attacks due to the algorithmic
complexity. This is a mitigation for CVE-2020-10735
(https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-10735).

This new limit can be configured or disabled by environment variable, command
line flag, or :mod:`sys` APIs. See the `Integer String Conversion Length
Limitation` documentation.  The default limit is 4300
digits in string form.

Patch by Gregory P. Smith [Google] and Christian Heimes [Red Hat] with feedback
from Victor Stinner, Thomas Wouters, Steve Dower, Ned Deily, and Mark Dickinson.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Converting between `int` and `str` in bases other than 2
(binary), 4, 8 (octal), 16 (hexadecimal), or 32 such as base 10 (decimal) now
raises a `ValueError` if the number of digits in string form is above a
limit to avoid potential denial of service attacks due to the algorithmic
complexity. This is a mitigation for CVE-2020-10735
(https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-10735).

This new limit can be configured or disabled by environment variable, command
line flag, or :mod:`sys` APIs. See the `Integer String Conversion Length
Limitation` documentation.  The default limit is 4300
digits in string form.

Patch by Gregory P. Smith [Google] and Christian Heimes [Red Hat] with feedback
from Victor Stinner, Thomas Wouters, Steve Dower, Ned Deily, and Mark Dickinson.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-36356: pymain_free() calls _PyRuntime_Finalize() (GH-12436)</title>
<updated>2019-03-19T14:08:17+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@redhat.com</email>
</author>
<published>2019-03-19T14:08:17+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=935250d6f3ac7ba91e1ea8e6ca63aaf7f605e291'/>
<id>935250d6f3ac7ba91e1ea8e6ca63aaf7f605e291</id>
<content type='text'>
Ensure that _PyRuntime_Finalize() is always call. This change fix a
few memory leaks when running "python3 -V".</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Ensure that _PyRuntime_Finalize() is always call. This change fix a
few memory leaks when running "python3 -V".</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-32604: Remove xid registry. (#6813)</title>
<updated>2018-05-15T13:56:18+00:00</updated>
<author>
<name>Eric Snow</name>
<email>ericsnowcurrently@gmail.com</email>
</author>
<published>2018-05-15T13:56:18+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=6bd0c476c58ca0046969f70dc2a4e4dfb3268062'/>
<id>6bd0c476c58ca0046969f70dc2a4e4dfb3268062</id>
<content type='text'>
Remove the interpreters testing helper (and xid registry).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove the interpreters testing helper (and xid registry).</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-32604: Clean up created subinterpreters before runtime finalization. (gh-5710)</title>
<updated>2018-02-17T02:15:24+00:00</updated>
<author>
<name>Miss Islington (bot)</name>
<email>31488909+miss-islington@users.noreply.github.com</email>
</author>
<published>2018-02-17T02:15:24+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=3db05a3a9c109f49d54b4965852e41c657e9b117'/>
<id>3db05a3a9c109f49d54b4965852e41c657e9b117</id>
<content type='text'>
(cherry picked from commit 4c6955e2b0ccf88c705f8d1fac685a8e65f9699e)

Co-authored-by: Eric Snow &lt;ericsnowcurrently@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit 4c6955e2b0ccf88c705f8d1fac685a8e65f9699e)

Co-authored-by: Eric Snow &lt;ericsnowcurrently@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-32604: Expose the subinterpreters C-API in a "private" stdlib module. (gh-1748)</title>
<updated>2018-01-30T01:23:44+00:00</updated>
<author>
<name>Eric Snow</name>
<email>ericsnowcurrently@gmail.com</email>
</author>
<published>2018-01-30T01:23:44+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=7f8bfc9b9a8381ddb768421b5dd5cbd970266190'/>
<id>7f8bfc9b9a8381ddb768421b5dd5cbd970266190</id>
<content type='text'>
The module is primarily intended for internal use in the test suite.  Building the module under Windows will come in a follow-up PR.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The module is primarily intended for internal use in the test suite.  Building the module under Windows will come in a follow-up PR.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-31901: atexit callbacks should be run at subinterpreter shutdown (#4611)</title>
<updated>2017-12-20T10:17:58+00:00</updated>
<author>
<name>Marcel Plch</name>
<email>gmarcel.plch@gmail.com</email>
</author>
<published>2017-12-20T10:17:58+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=776407fe893fd42972c7e3f71423d9d86741d07c'/>
<id>776407fe893fd42972c7e3f71423d9d86741d07c</id>
<content type='text'>
Change atexit behavior and PEP-489 multiphase init support.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change atexit behavior and PEP-489 multiphase init support.
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-32030: Rewrite _PyMainInterpreterConfig (#4854)</title>
<updated>2017-12-14T01:20:52+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>victor.stinner@gmail.com</email>
</author>
<published>2017-12-14T01:20:52+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=b5fd9ad05e0f15f8272b8f1b829af22077230584'/>
<id>b5fd9ad05e0f15f8272b8f1b829af22077230584</id>
<content type='text'>
_PyMainInterpreterConfig now contains Python objects, whereas
_PyCoreConfig contains wchar_t* strings.

Core config:

* Rename _PyMainInterpreterConfig_ReadEnv() to _PyCoreConfig_ReadEnv()
* Move 3 strings from _PyMainInterpreterConfig to _PyCoreConfig:
  module_search_path_env, home, program_name.
* Add _PyCoreConfig_Clear()
* _PyPathConfig_Calculate() now takes core config rather than main
  config
* _PyMainInterpreterConfig_Read() now requires also a core config

Main config:

* Add _PyMainInterpreterConfig.module_search_path: sys.path list
* Add _PyMainInterpreterConfig.argv: sys.argv list
* _PyMainInterpreterConfig_Read() now computes module_search_path</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
_PyMainInterpreterConfig now contains Python objects, whereas
_PyCoreConfig contains wchar_t* strings.

Core config:

* Rename _PyMainInterpreterConfig_ReadEnv() to _PyCoreConfig_ReadEnv()
* Move 3 strings from _PyMainInterpreterConfig to _PyCoreConfig:
  module_search_path_env, home, program_name.
* Add _PyCoreConfig_Clear()
* _PyPathConfig_Calculate() now takes core config rather than main
  config
* _PyMainInterpreterConfig_Read() now requires also a core config

Main config:

* Add _PyMainInterpreterConfig.module_search_path: sys.path list
* Add _PyMainInterpreterConfig.argv: sys.argv list
* _PyMainInterpreterConfig_Read() now computes module_search_path</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-32030: Simplify _PyCoreConfig_INIT macro (#4728)</title>
<updated>2017-12-05T14:12:41+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>victor.stinner@gmail.com</email>
</author>
<published>2017-12-05T14:12:41+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=33c377ed9b6cb3b9493005314c4e0cfa7517ea65'/>
<id>33c377ed9b6cb3b9493005314c4e0cfa7517ea65</id>
<content type='text'>
* Simplify _PyCoreConfig_INIT, _PyMainInterpreterConfig_INIT,
  _PyPathConfig_INIT macros: no need to set fields to 0/NULL, it's
  redundant (the C language sets them to 0/NULL for us).
* Fix typo: pymain_run_statup() =&gt; pymain_run_startup()
* Remove a few XXX/TODO</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Simplify _PyCoreConfig_INIT, _PyMainInterpreterConfig_INIT,
  _PyPathConfig_INIT macros: no need to set fields to 0/NULL, it's
  redundant (the C language sets them to 0/NULL for us).
* Fix typo: pymain_run_statup() =&gt; pymain_run_startup()
* Remove a few XXX/TODO</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)" (#4694)</title>
<updated>2017-12-04T12:39:15+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>victor.stinner@gmail.com</email>
</author>
<published>2017-12-04T12:39:15+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=31a8393cf6a74c870c3484dd68500619f6232c6d'/>
<id>31a8393cf6a74c870c3484dd68500619f6232c6d</id>
<content type='text'>
* Revert "bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)"

This reverts commit 13badcbc60cdbfae1dba1683fd2fae9d70717143.

Re-apply commits:

* "bpo-32030: _PyPathConfig_Init() sets home and program_name (#4673)"
  commit af5a895073c24637c094772b27526b94a12ec897.
* "bpo-32030: Fix config_get_program_name() on macOS (#4669)"
  commit e23c06e2b03452c9aaf0dae52296c85e572f9bcd.
* "bpo-32030: Add Python/pathconfig.c (#4668)"
  commit 0ea395ae964c9cd0f499e2ef0d0030c971201220.
* "bpo-32030: Don't call _PyPathConfig_Fini() in Py_FinalizeEx() (#4667)"
  commit ebac19dad6263141d5db0a2c923efe049dba99d2.
* "bpo-32030: Fix Py_GetPath(): init program_name (#4665)"
  commit 9ac3d8882712c9675c3d2f9f84af6b5729575cde.

* Fix compilation error on macOS
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Revert "bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)"

This reverts commit 13badcbc60cdbfae1dba1683fd2fae9d70717143.

Re-apply commits:

* "bpo-32030: _PyPathConfig_Init() sets home and program_name (#4673)"
  commit af5a895073c24637c094772b27526b94a12ec897.
* "bpo-32030: Fix config_get_program_name() on macOS (#4669)"
  commit e23c06e2b03452c9aaf0dae52296c85e572f9bcd.
* "bpo-32030: Add Python/pathconfig.c (#4668)"
  commit 0ea395ae964c9cd0f499e2ef0d0030c971201220.
* "bpo-32030: Don't call _PyPathConfig_Fini() in Py_FinalizeEx() (#4667)"
  commit ebac19dad6263141d5db0a2c923efe049dba99d2.
* "bpo-32030: Fix Py_GetPath(): init program_name (#4665)"
  commit 9ac3d8882712c9675c3d2f9f84af6b5729575cde.

* Fix compilation error on macOS
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)</title>
<updated>2017-12-02T19:36:00+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2017-12-02T19:36:00+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=13badcbc60cdbfae1dba1683fd2fae9d70717143'/>
<id>13badcbc60cdbfae1dba1683fd2fae9d70717143</id>
<content type='text'>
* Revert "bpo-32030: _PyPathConfig_Init() sets home and program_name (#4673)"

This reverts commit af5a895073c24637c094772b27526b94a12ec897.

* Revert "bpo-32030: Fix config_get_program_name() on macOS (#4669)"

This reverts commit e23c06e2b03452c9aaf0dae52296c85e572f9bcd.

* Revert "bpo-32030: Add Python/pathconfig.c (#4668)"

This reverts commit 0ea395ae964c9cd0f499e2ef0d0030c971201220.

* Revert "bpo-32030: Don't call _PyPathConfig_Fini() in Py_FinalizeEx() (#4667)"

This reverts commit ebac19dad6263141d5db0a2c923efe049dba99d2.

* Revert "bpo-32030: Fix Py_GetPath(): init program_name (#4665)"

This reverts commit 9ac3d8882712c9675c3d2f9f84af6b5729575cde.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Revert "bpo-32030: _PyPathConfig_Init() sets home and program_name (#4673)"

This reverts commit af5a895073c24637c094772b27526b94a12ec897.

* Revert "bpo-32030: Fix config_get_program_name() on macOS (#4669)"

This reverts commit e23c06e2b03452c9aaf0dae52296c85e572f9bcd.

* Revert "bpo-32030: Add Python/pathconfig.c (#4668)"

This reverts commit 0ea395ae964c9cd0f499e2ef0d0030c971201220.

* Revert "bpo-32030: Don't call _PyPathConfig_Fini() in Py_FinalizeEx() (#4667)"

This reverts commit ebac19dad6263141d5db0a2c923efe049dba99d2.

* Revert "bpo-32030: Fix Py_GetPath(): init program_name (#4665)"

This reverts commit 9ac3d8882712c9675c3d2f9f84af6b5729575cde.
</pre>
</div>
</content>
</entry>
</feed>
