issue3972: HTTPConnection and HTTPSConnection now support a
source_address parameter.
Also cleans up an annotation in the socket documentation.
diff --git a/Doc/library/httplib.rst b/Doc/library/httplib.rst
index d881968..3725933 100644
--- a/Doc/library/httplib.rst
+++ b/Doc/library/httplib.rst
@@ -34,7 +34,7 @@
The module provides the following classes:
-.. class:: HTTPConnection(host[, port[, strict[, timeout]]])
+.. class:: HTTPConnection(host[, port[, strict[, timeout[, source_address]]]])
An :class:`HTTPConnection` instance represents one transaction with an HTTP
server. It should be instantiated passing it a host and optional port
@@ -46,6 +46,8 @@
status line. If the optional *timeout* parameter is given, blocking
operations (like connection attempts) will timeout after that many seconds
(if it is not given, the global default timeout setting is used).
+ The optional *source_address* parameter may be a tuple of a (host, port)
+ to use as the source address the HTTP connection is made from.
For example, the following calls all create instances that connect to the server
at the same host and port::
@@ -60,8 +62,11 @@
.. versionchanged:: 2.6
*timeout* was added.
+ .. versionchanged:: 2.7
+ *source_address* was added.
-.. class:: HTTPSConnection(host[, port[, key_file[, cert_file[, strict[, timeout]]]]])
+
+.. class:: HTTPSConnection(host[, port[, key_file[, cert_file[, strict[, timeout[, source_address]]]]]])
A subclass of :class:`HTTPConnection` that uses SSL for communication with
secure servers. Default port is ``443``. *key_file* is the name of a PEM
@@ -77,6 +82,9 @@
.. versionchanged:: 2.6
*timeout* was added.
+ .. versionchanged:: 2.7
+ *source_address* was added.
+
.. class:: HTTPResponse(sock[, debuglevel=0][, strict=0])
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index 2e0c6d6..98dcceb 100644
--- a/Doc/library/socket.rst
+++ b/Doc/library/socket.rst
@@ -213,13 +213,14 @@
*timeout* is supplied, the global default timeout setting returned by
:func:`getdefaulttimeout` is used.
- .. versionadded:: 2.6
-
If supplied, *source_address* must be a 2-tuple ``(host, port)`` for the
socket to bind to as its source address before connecting. If host or port
are '' or 0 respectively the OS default behavior will be used.
- .. versionadded:: 2.7
+ .. versionadded:: 2.6
+
+ .. versionchanged:: 2.7
+ *source_address* was added.
.. function:: getaddrinfo(host, port[, family[, socktype[, proto[, flags]]]])