Staging
v0.5.1
https://github.com/python/cpython
Revision 7529754d26f5e744ae25bee56fdc1937bcf08c7e authored by Christian Heimes on 22 September 2018, 05:10:06 UTC, committed by Miss Islington (bot) on 22 September 2018, 05:10:06 UTC


OpenSSL follows the convention that whenever you call a function, it
returns an error indicator value; and if this value is negative, then
you need to go look at the actual error code to see what happened.

Commit c6fd1c1c3a introduced a small mistake in
_ssl__SSLSocket_shutdown_impl: instead of checking whether the error
indicator was negative, it started checking whether the actual error
code was negative, and it turns out that the error codes are never
negative. So the effect was that 'unwrap()' lost the ability to raise
SSL errors.

https://bugs.python.org/issue34759.
(cherry picked from commit c0da582b227f311126e278b5553a7fa89c79b054)

Co-authored-by: Nathaniel J. Smith <njs@pobox.com>



https://bugs.python.org/issue34759
1 parent d1b336e
History
Tip revision: 7529754d26f5e744ae25bee56fdc1937bcf08c7e authored by Christian Heimes on 22 September 2018, 05:10:06 UTC
[3.6] bpo-34759: Fix error handling in ssl 'unwrap()' (GH-9468) (GH-9492)
Tip revision: 7529754
File Mode Size
Python-ast.h -rw-r--r-- 21.8 KB
Python.h -rw-r--r-- 2.9 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.2 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-- 2.9 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-- 3.9 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.3 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

back to top