summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2014-10-10 10:52:43 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2014-10-10 10:52:43 (GMT)
commit29611452b7d6289d4c210075b929a8acc1864df5 (patch)
tree91e05618dfeeeb755ccc34c20c60cc551789d23f
parent805b262d387cce9dede079cff332d85fa1c1233b (diff)
downloadcpython-29611452b7d6289d4c210075b929a8acc1864df5.zip
cpython-29611452b7d6289d4c210075b929a8acc1864df5.tar.gz
cpython-29611452b7d6289d4c210075b929a8acc1864df5.tar.bz2
Issue #22564: ssl doc, add more links to the non-blocking section
-rw-r--r--Doc/library/ssl.rst12
1 files changed, 7 insertions, 5 deletions
diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst
index ed966ee..5e70c8b 100644
--- a/Doc/library/ssl.rst
+++ b/Doc/library/ssl.rst
@@ -1681,7 +1681,7 @@ are finished with the client (or the client is finished with you)::
And go back to listening for new client connections (of course, a real server
would probably handle each client connection in a separate thread, or put
-the sockets in non-blocking mode and use an event loop).
+the sockets in :ref:`non-blocking mode <ssl-nonblocking>` and use an event loop).
.. _ssl-nonblocking:
@@ -1741,7 +1741,8 @@ thus several things you need to be aware of:
.. seealso::
- The :mod:`asyncio` module supports non-blocking SSL sockets and provides a
+ The :mod:`asyncio` module supports :ref:`non-blocking SSL sockets
+ <ssl-nonblocking>` 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
@@ -1802,9 +1803,10 @@ provided.
Some notes related to the use of :class:`SSLObject`:
-- All I/O on an :class:`SSLObject` is non-blocking. This means that for example
- :meth:`~SSLSocket.read` will raise an :exc:`SSLWantReadError` if it needs
- more data than the incoming BIO has available.
+- All I/O on an :class:`SSLObject` is :ref:`non-blocking <ssl-nonblocking>`.
+ This means that for example :meth:`~SSLSocket.read` will raise an
+ :exc:`SSLWantReadError` if it needs more data than the incoming BIO has
+ available.
- There is no module-level ``wrap_bio`` call like there is for
:meth:`~SSLContext.wrap_socket`. An :class:`SSLObject` is always created via