Staging
v0.8.1
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
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)
bpo-37461: Fix infinite loop in parsing of specially crafted email headers (GH-14794) (GH-14817)
Tip revision: 1789bbd
File | Mode | Size |
---|---|---|
Python-ast.h | -rw-r--r-- | 21.8 KB |
Python.h | -rw-r--r-- | 3.1 KB |
abstract.h | -rw-r--r-- | 46.3 KB |
accu.h | -rw-r--r-- | 1016 bytes |
asdl.h | -rw-r--r-- | 1.2 KB |
ast.h | -rw-r--r-- | 477 bytes |
bitset.h | -rw-r--r-- | 792 bytes |
bltinmodule.h | -rw-r--r-- | 264 bytes |
boolobject.h | -rw-r--r-- | 886 bytes |
bytearrayobject.h | -rw-r--r-- | 2.1 KB |
bytes_methods.h | -rw-r--r-- | 3.1 KB |
bytesobject.h | -rw-r--r-- | 8.2 KB |
cellobject.h | -rw-r--r-- | 701 bytes |
ceval.h | -rw-r--r-- | 8.3 KB |
classobject.h | -rw-r--r-- | 1.6 KB |
code.h | -rw-r--r-- | 5.8 KB |
codecs.h | -rw-r--r-- | 6.6 KB |
compile.h | -rw-r--r-- | 2.1 KB |
complexobject.h | -rw-r--r-- | 1.8 KB |
datetime.h | -rw-r--r-- | 9.2 KB |
descrobject.h | -rw-r--r-- | 2.9 KB |
dictobject.h | -rw-r--r-- | 7.0 KB |
dtoa.h | -rw-r--r-- | 458 bytes |
dynamic_annotations.h | -rw-r--r-- | 21.9 KB |
enumobject.h | -rw-r--r-- | 253 bytes |
errcode.h | -rw-r--r-- | 1.5 KB |
eval.h | -rw-r--r-- | 597 bytes |
fileobject.h | -rw-r--r-- | 1.6 KB |
fileutils.h | -rw-r--r-- | 3.4 KB |
floatobject.h | -rw-r--r-- | 4.7 KB |
frameobject.h | -rw-r--r-- | 3.4 KB |
funcobject.h | -rw-r--r-- | 4.0 KB |
genobject.h | -rw-r--r-- | 3.5 KB |
graminit.h | -rw-r--r-- | 1.9 KB |
grammar.h | -rw-r--r-- | 2.0 KB |
import.h | -rw-r--r-- | 4.1 KB |
intrcheck.h | -rw-r--r-- | 513 bytes |
iterobject.h | -rw-r--r-- | 567 bytes |
listobject.h | -rw-r--r-- | 2.8 KB |
longintrepr.h | -rw-r--r-- | 3.7 KB |
longobject.h | -rw-r--r-- | 8.3 KB |
marshal.h | -rw-r--r-- | 803 bytes |
memoryobject.h | -rw-r--r-- | 2.7 KB |
metagrammar.h | -rw-r--r-- | 253 bytes |
methodobject.h | -rw-r--r-- | 3.8 KB |
modsupport.h | -rw-r--r-- | 7.1 KB |
moduleobject.h | -rw-r--r-- | 2.2 KB |
namespaceobject.h | -rw-r--r-- | 349 bytes |
node.h | -rw-r--r-- | 1007 bytes |
object.h | -rw-r--r-- | 39.4 KB |
objimpl.h | -rw-r--r-- | 13.9 KB |
odictobject.h | -rw-r--r-- | 1.3 KB |
opcode.h | -rw-r--r-- | 5.0 KB |
osdefs.h | -rw-r--r-- | 691 bytes |
osmodule.h | -rw-r--r-- | 291 bytes |
parsetok.h | -rw-r--r-- | 2.8 KB |
patchlevel.h | -rw-r--r-- | 1.1 KB |
pgen.h | -rw-r--r-- | 253 bytes |
pgenheaders.h | -rw-r--r-- | 1.2 KB |
py_curses.h | -rw-r--r-- | 4.2 KB |
pyarena.h | -rw-r--r-- | 2.7 KB |
pyatomic.h | -rw-r--r-- | 7.9 KB |
pycapsule.h | -rw-r--r-- | 1.7 KB |
pyctype.h | -rw-r--r-- | 1.3 KB |
pydebug.h | -rw-r--r-- | 1.2 KB |
pydtrace.d | -rw-r--r-- | 863 bytes |
pydtrace.h | -rw-r--r-- | 1.9 KB |
pyerrors.h | -rw-r--r-- | 16.8 KB |
pyexpat.h | -rw-r--r-- | 2.4 KB |
pyfpe.h | -rw-r--r-- | 8.3 KB |
pygetopt.h | -rw-r--r-- | 410 bytes |
pyhash.h | -rw-r--r-- | 4.0 KB |
pylifecycle.h | -rw-r--r-- | 4.0 KB |
pymacconfig.h | -rw-r--r-- | 2.9 KB |
pymacro.h | -rw-r--r-- | 3.4 KB |
pymath.h | -rw-r--r-- | 8.1 KB |
pymem.h | -rw-r--r-- | 8.4 KB |
pyport.h | -rw-r--r-- | 26.9 KB |
pystate.h | -rw-r--r-- | 10.9 KB |
pystrcmp.h | -rw-r--r-- | 436 bytes |
pystrhex.h | -rw-r--r-- | 495 bytes |
pystrtod.h | -rw-r--r-- | 1.4 KB |
pythonrun.h | -rw-r--r-- | 6.6 KB |
pythread.h | -rw-r--r-- | 2.9 KB |
pytime.h | -rw-r--r-- | 7.4 KB |
rangeobject.h | -rw-r--r-- | 629 bytes |
setobject.h | -rw-r--r-- | 3.3 KB |
sliceobject.h | -rw-r--r-- | 2.4 KB |
structmember.h | -rw-r--r-- | 2.0 KB |
structseq.h | -rw-r--r-- | 1.3 KB |
symtable.h | -rw-r--r-- | 4.9 KB |
sysmodule.h | -rw-r--r-- | 1.3 KB |
token.h | -rw-r--r-- | 1.9 KB |
traceback.h | -rw-r--r-- | 3.6 KB |
tupleobject.h | -rw-r--r-- | 2.4 KB |
typeslots.h | -rw-r--r-- | 2.2 KB |
ucnhash.h | -rw-r--r-- | 1.0 KB |
unicodeobject.h | -rw-r--r-- | 79.9 KB |
warnings.h | -rw-r--r-- | 1.7 KB |
weakrefobject.h | -rw-r--r-- | 2.8 KB |
Computing file changes ...