]> granicus.if.org Git - python/commit
bpo-24334: Cleanup SSLSocket (#5252)
authorChristian Heimes <christian@python.org>
Sat, 24 Feb 2018 20:10:57 +0000 (21:10 +0100)
committerGitHub <noreply@github.com>
Sat, 24 Feb 2018 20:10:57 +0000 (21:10 +0100)
commit141c5e8c2437a9fed95a04c81e400ef725592a17
tree01d9c30cff72bfe58a95cf2013758581adcc7907
parentb18f8bc1a77193c372d79afa79b284028a2842d7
bpo-24334: Cleanup SSLSocket (#5252)

* The SSLSocket is no longer implemented on top of SSLObject to
  avoid an extra level of indirection.
* Owner and session are now handled in the internal constructor.
* _ssl._SSLSocket now uses the same method names as SSLSocket and
  SSLObject.
* Channel binding type check is now handled in C code. Channel binding
  is always available.

The patch also changes the signature of SSLObject.__init__(). In my
opinion it's fine. A SSLObject is not a user-constructable object.
SSLContext.wrap_bio() is the only valid factory.
Lib/ssl.py
Lib/test/test_ssl.py
Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst [new file with mode: 0644]
Modules/_ssl.c
Modules/clinic/_ssl.c.h