]> granicus.if.org Git - python/commitdiff
Issue #22564: ssl doc: mention asyncio in the non-blocking section
authorVictor Stinner <victor.stinner@gmail.com>
Fri, 10 Oct 2014 10:45:10 +0000 (12:45 +0200)
committerVictor Stinner <victor.stinner@gmail.com>
Fri, 10 Oct 2014 10:45:10 +0000 (12:45 +0200)
Doc/library/ssl.rst

index 6489ecfc25793a4583269e566903b67b7651d36c..095a83192952587750075816ad8899f4dda16101 100644 (file)
@@ -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: