diff options
author | Christian Heimes <christian@python.org> | 2018-02-24 01:35:08 (GMT) |
---|---|---|
committer | Nathaniel J. Smith <njs@pobox.com> | 2018-02-24 01:35:08 (GMT) |
commit | 11a1493bc4198f1def5e572049485779cf54dc57 (patch) | |
tree | 8ad419e997569f9a9d05ea7e213d5092086608fa /Modules/clinic | |
parent | 82ab13d756a04eab1dae58629473b95ddf363484 (diff) | |
download | cpython-11a1493bc4198f1def5e572049485779cf54dc57.zip cpython-11a1493bc4198f1def5e572049485779cf54dc57.tar.gz cpython-11a1493bc4198f1def5e572049485779cf54dc57.tar.bz2 |
[bpo-28414] Make all hostnames in SSL module IDN A-labels (GH-5128)
Previously, the ssl module stored international domain names (IDNs)
as U-labels. This is problematic for a number of reasons -- for
example, it made it impossible for users to use a different version
of IDNA than the one built into Python.
After this change, we always convert to A-labels as soon as possible,
and use them for all internal processing. In particular, server_hostname
attribute is now an A-label, and on the server side there's a new
sni_callback that receives the SNI servername as an A-label rather than
a U-label.
Diffstat (limited to 'Modules/clinic')
-rw-r--r-- | Modules/clinic/_ssl.c.h | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/Modules/clinic/_ssl.c.h b/Modules/clinic/_ssl.c.h index 32743e7..d1a9afc 100644 --- a/Modules/clinic/_ssl.c.h +++ b/Modules/clinic/_ssl.c.h @@ -650,19 +650,6 @@ PyDoc_STRVAR(_ssl__SSLContext_set_ecdh_curve__doc__, #endif /* !defined(OPENSSL_NO_ECDH) */ -PyDoc_STRVAR(_ssl__SSLContext_set_servername_callback__doc__, -"set_servername_callback($self, method, /)\n" -"--\n" -"\n" -"Set a callback that will be called when a server name is provided by the SSL/TLS client in the SNI extension.\n" -"\n" -"If the argument is None then the callback is disabled. The method is called\n" -"with the SSLSocket, the server name as a string, and the SSLContext object.\n" -"See RFC 6066 for details of the SNI extension."); - -#define _SSL__SSLCONTEXT_SET_SERVERNAME_CALLBACK_METHODDEF \ - {"set_servername_callback", (PyCFunction)_ssl__SSLContext_set_servername_callback, METH_O, _ssl__SSLContext_set_servername_callback__doc__}, - PyDoc_STRVAR(_ssl__SSLContext_cert_store_stats__doc__, "cert_store_stats($self, /)\n" "--\n" @@ -1168,4 +1155,4 @@ exit: #ifndef _SSL_ENUM_CRLS_METHODDEF #define _SSL_ENUM_CRLS_METHODDEF #endif /* !defined(_SSL_ENUM_CRLS_METHODDEF) */ -/*[clinic end generated code: output=3d42305ed0ad162a input=a9049054013a1b77]*/ +/*[clinic end generated code: output=84e1fd89aff9b0f7 input=a9049054013a1b77]*/ |