summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉric <earaujo@caravan.coop>2022-12-30 16:21:15 -0500
committerGitHub <noreply@github.com>2022-12-30 13:21:15 -0800
commit46521826cb1883e29e4640f94089dd92c57efc5b (patch)
treecf6e466a674e73c5fb8f339383776e7e033faa19
parentf4fcfdf8c593611f98b9358cc0c5604c15306465 (diff)
downloadcpython-git-46521826cb1883e29e4640f94089dd92c57efc5b.tar.gz
gh-95778: add doc missing in some places (GH-100627)
-rw-r--r--Misc/python.man9
-rw-r--r--Python/initconfig.c2
2 files changed, 11 insertions, 0 deletions
diff --git a/Misc/python.man b/Misc/python.man
index 1705eeb0c9..bf7cf767d1 100644
--- a/Misc/python.man
+++ b/Misc/python.man
@@ -358,6 +358,10 @@ Set implementation-specific option. The following options are available:
-X frozen_modules=[on|off]: whether or not frozen modules should be used.
The default is "on" (or "off" if you are running a local build).
+ -X int_max_str_digits=number: limit the size of int<->str conversions.
+ This helps avoid denial of service attacks when parsing untrusted data.
+ The default is sys.int_info.default_max_str_digits. 0 disables.
+
.TP
.B \-x
Skip the first line of the source. This is intended for a DOS
@@ -531,6 +535,11 @@ values.
The integer must be a decimal number in the range [0,4294967295]. Specifying
the value 0 will disable hash randomization.
+.IP PYTHONINTMAXSTRDIGITS
+Limit the maximum digit characters in an int value
+when converting from a string and when converting an int back to a str.
+A value of 0 disables the limit. Conversions to or from bases 2, 4, 8,
+16, and 32 are never limited.
.IP PYTHONMALLOC
Set the Python memory allocators and/or install debug hooks. The available
memory allocators are
diff --git a/Python/initconfig.c b/Python/initconfig.c
index d05099cd99..d7b2dc4a29 100644
--- a/Python/initconfig.c
+++ b/Python/initconfig.c
@@ -180,6 +180,8 @@ static const char usage_envvars[] =
"PYTHONDEBUG : enable parser debug mode (-d)\n"
"PYTHONDONTWRITEBYTECODE : don't write .pyc files (-B)\n"
"PYTHONINSPECT : inspect interactively after running script (-i)\n"
+"PYTHONINTMAXSTRDIGITS : limit max digit characters in an int value\n"
+" (-X int_max_str_digits=number)\n"
"PYTHONNOUSERSITE : disable user site directory (-s)\n"
"PYTHONOPTIMIZE : enable level 1 optimizations (-O)\n"
"PYTHONUNBUFFERED : disable stdout/stderr buffering (-u)\n"