Staging
v0.8.1
https://github.com/python/cpython
Revision 1789bbdd3e03023951a39933ef12dee0a03be616 authored by Miss Islington (bot) on 01 August 2019, 16:36:46 UTC, committed by Ned Deily on 01 August 2019, 16:36:46 UTC
Some crafted email header would cause the get_parameter method to run in an
infinite loop causing a DoS attack surface when parsing those headers. This
patch fixes that by making sure the DQUOTE character is handled to prevent
going into an infinite loop.
(cherry picked from commit a4a994bd3e619cbaff97610a1cee8ffa87c672f5)

Co-authored-by: Abhilash Raj <maxking@users.noreply.github.com>
1 parent 79a47e2
History
Tip revision: 1789bbdd3e03023951a39933ef12dee0a03be616 authored by Miss Islington (bot) on 01 August 2019, 16:36:46 UTC
bpo-37461: Fix infinite loop in parsing of specially crafted email headers (GH-14794) (GH-14817)
Tip revision: 1789bbd
File Mode Size
clinic
Python-ast.c -rw-r--r-- 263.0 KB
README -rw-r--r-- 62 bytes
_warnings.c -rw-r--r-- 35.6 KB
asdl.c -rw-r--r-- 1.4 KB
ast.c -rw-r--r-- 160.5 KB
bltinmodule.c -rw-r--r-- 81.1 KB
ceval.c -rw-r--r-- 172.0 KB
ceval_gil.h -rw-r--r-- 8.9 KB
codecs.c -rw-r--r-- 45.0 KB
compile.c -rw-r--r-- 150.6 KB
condvar.h -rw-r--r-- 11.0 KB
dtoa.c -rw-r--r-- 78.5 KB
dup2.c -rw-r--r-- 705 bytes
dynamic_annotations.c -rw-r--r-- 6.6 KB
dynload_aix.c -rw-r--r-- 5.7 KB
dynload_dl.c -rw-r--r-- 581 bytes
dynload_hpux.c -rw-r--r-- 1.9 KB
dynload_next.c -rw-r--r-- 3.9 KB
dynload_shlib.c -rw-r--r-- 3.3 KB
dynload_stub.c -rw-r--r-- 186 bytes
dynload_win.c -rw-r--r-- 10.0 KB
errors.c -rw-r--r-- 32.2 KB
fileutils.c -rw-r--r-- 45.5 KB
formatter_unicode.c -rw-r--r-- 50.3 KB
frozen.c -rw-r--r-- 1.7 KB
frozenmain.c -rw-r--r-- 2.7 KB
future.c -rw-r--r-- 4.9 KB
getargs.c -rw-r--r-- 72.3 KB
getcompiler.c -rw-r--r-- 369 bytes
getcopyright.c -rw-r--r-- 511 bytes
getopt.c -rw-r--r-- 3.4 KB
getplatform.c -rw-r--r-- 130 bytes
getversion.c -rw-r--r-- 289 bytes
graminit.c -rw-r--r-- 43.3 KB
import.c -rw-r--r-- 57.8 KB
importdl.c -rw-r--r-- 7.1 KB
importdl.h -rw-r--r-- 487 bytes
importlib.h -rw-r--r-- 96.2 KB
importlib_external.h -rw-r--r-- 129.7 KB
makeopcodetargets.py -rwxr-xr-x 1.6 KB
marshal.c -rw-r--r-- 50.3 KB
modsupport.c -rw-r--r-- 14.8 KB
mysnprintf.c -rw-r--r-- 3.3 KB
mystrtoul.c -rw-r--r-- 8.1 KB
opcode_targets.h -rw-r--r-- 6.3 KB
peephole.c -rw-r--r-- 30.7 KB
pyarena.c -rw-r--r-- 5.5 KB
pyctype.c -rw-r--r-- 7.7 KB
pyfpe.c -rw-r--r-- 621 bytes
pyhash.c -rw-r--r-- 13.0 KB
pylifecycle.c -rw-r--r-- 46.8 KB
pymath.c -rw-r--r-- 1.6 KB
pystate.c -rw-r--r-- 27.5 KB
pystrcmp.c -rw-r--r-- 613 bytes
pystrhex.c -rw-r--r-- 1.6 KB
pystrtod.c -rw-r--r-- 40.1 KB
pythonrun.c -rw-r--r-- 43.3 KB
pytime.c -rw-r--r-- 19.8 KB
random.c -rw-r--r-- 17.8 KB
sigcheck.c -rw-r--r-- 529 bytes
strdup.c -rw-r--r-- 247 bytes
structmember.c -rw-r--r-- 8.6 KB
symtable.c -rw-r--r-- 56.9 KB
sysmodule.c -rw-r--r-- 70.0 KB
thread.c -rw-r--r-- 12.4 KB
thread_foobar.h -rw-r--r-- 2.2 KB
thread_nt.h -rw-r--r-- 9.6 KB
thread_pthread.h -rw-r--r-- 18.6 KB
traceback.c -rw-r--r-- 22.1 KB
wordcode_helpers.h -rw-r--r-- 1.2 KB

README

back to top