summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2014-10-10 10:45:10 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2014-10-10 10:45:10 (GMT)
commitcfb2a0a8559d6d4b3011f1bc04147d25819c7907 (patch)
treee7480a1a00911af35bb707757bebe36b4d38f7ec /Doc
parentd28fe8c8f461c153b1d3252d52d7b0c494402a4e (diff)
downloadcpython-cfb2a0a8559d6d4b3011f1bc04147d25819c7907.zip
cpython-cfb2a0a8559d6d4b3011f1bc04147d25819c7907.tar.gz
cpython-cfb2a0a8559d6d4b3011f1bc04147d25819c7907.tar.bz2
Issue #22564: ssl doc: mention asyncio in the non-blocking section
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/ssl.rst12
1 files changed, 10 insertions, 2 deletions
diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst
index 6489ecf..095a831 100644
--- a/Doc/library/ssl.rst
+++ b/Doc/library/ssl.rst
@@ -794,7 +794,7 @@ SSL sockets also have the following additional methods and attributes:
instead, and return the number of bytes read.
Raise :exc:`SSLWantReadError` or :exc:`SSLWantWriteError` if the socket is
- non-blocking and the read would block.
+ :ref:`non-blocking <ssl-nonblocking>` and the read would block.
As at any time a re-negotiation is possible, a call to :meth:`read` can also
cause write operations.
@@ -805,7 +805,7 @@ SSL sockets also have the following additional methods and attributes:
*buf* argument must be an object supporting the buffer interface.
Raise :exc:`SSLWantReadError` or :exc:`SSLWantWriteError` if the socket is
- non-blocking and the write would block.
+ :ref:`non-blocking <ssl-nonblocking>` and the write would block.
As at any time a re-negotiation is possible, a call to :meth:`write` can
also cause read operations.
@@ -1691,6 +1691,14 @@ thus several things you need to be aware of:
except ssl.SSLWantWriteError:
select.select([], [sock], [])
+.. seealso::
+
+ The :mod:`asyncio` module supports non-blocking SSL sockets and provides a
+ higher level API. It polls for events using the :mod:`selectors` module and
+ handles :exc:`SSLWantWriteError`, :exc:`SSLWantReadError` and
+ :exc:`BlockingIOError` exceptions. It runs the SSL handshake asynchronously
+ as well.
+
.. _ssl-security: