[Python-checkins] r87659 - in python/branches/release27-maint: Doc/library/socket.rst Doc/library/ssl.rst
antoine.pitrou
python-checkins at python.org
Sun Jan 2 23:39:10 CET 2011
Author: antoine.pitrou
Date: Sun Jan 2 23:39:10 2011
New Revision: 87659
Log:
Merged revisions 87653-87655 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r87653 | antoine.pitrou | 2011-01-02 23:06:53 +0100 (dim., 02 janv. 2011) | 3 lines
Clarify behaviour of close() and shutdown() on sockets.
........
r87654 | antoine.pitrou | 2011-01-02 23:09:27 +0100 (dim., 02 janv. 2011) | 3 lines
Add a shutdown() call in the server example.
........
r87655 | antoine.pitrou | 2011-01-02 23:12:22 +0100 (dim., 02 janv. 2011) | 3 lines
Some nits.
........
Modified:
python/branches/release27-maint/ (props changed)
python/branches/release27-maint/Doc/library/socket.rst
python/branches/release27-maint/Doc/library/ssl.rst
Modified: python/branches/release27-maint/Doc/library/socket.rst
==============================================================================
--- python/branches/release27-maint/Doc/library/socket.rst (original)
+++ python/branches/release27-maint/Doc/library/socket.rst Sun Jan 2 23:39:10 2011
@@ -515,6 +515,9 @@
Module :mod:`SocketServer`
Classes that simplify writing network servers.
+ Module :mod:`ssl`
+ A TLS/SSL wrapper for socket objects.
+
.. _socket-objects:
@@ -551,6 +554,12 @@
remote end will receive no more data (after queued data is flushed). Sockets are
automatically closed when they are garbage-collected.
+ .. note::
+ :meth:`close()` releases the resource associated with a connection but
+ does not necessarily close the connection immediately. If you want
+ to close the connection in a timely fashion, call :meth:`shutdown()`
+ before :meth:`close()`.
+
.. method:: socket.connect(address)
Modified: python/branches/release27-maint/Doc/library/ssl.rst
==============================================================================
--- python/branches/release27-maint/Doc/library/ssl.rst (original)
+++ python/branches/release27-maint/Doc/library/ssl.rst Sun Jan 2 23:39:10 2011
@@ -1,8 +1,8 @@
-:mod:`ssl` --- SSL wrapper for socket objects
-=============================================
+:mod:`ssl` --- TLS/SSL wrapper for socket objects
+=================================================
.. module:: ssl
- :synopsis: SSL wrapper for socket objects
+ :synopsis: TLS/SSL wrapper for socket objects
.. moduleauthor:: Bill Janssen <bill.janssen at gmail.com>
@@ -582,13 +582,17 @@
for it::
while True:
- newsocket, fromaddr = bindsocket.accept()
- connstream = ssl.wrap_socket(newsocket,
- server_side=True,
- certfile="mycertfile",
- keyfile="mykeyfile",
- ssl_version=ssl.PROTOCOL_TLSv1)
- deal_with_client(connstream)
+ newsocket, fromaddr = bindsocket.accept()
+ connstream = ssl.wrap_socket(newsocket,
+ server_side=True,
+ certfile="mycertfile",
+ keyfile="mykeyfile",
+ ssl_version=ssl.PROTOCOL_TLSv1)
+ try:
+ deal_with_client(connstream)
+ finally:
+ connstream.shutdown(socket.SHUT_RDWR)
+ connstream.close()
Then you'd read data from the ``connstream`` and do something with it till you
are finished with the client (or the client is finished with you)::
@@ -604,7 +608,6 @@
break
data = connstream.read()
# finished with client
- connstream.close()
And go back to listening for new client connections.
More information about the Python-checkins
mailing list