]> granicus.if.org Git - python/commitdiff
Fix Issue #4841: timeout is now applied for connections resulting from PORT/EPRT...
authorGiampaolo Rodolà <g.rodola@gmail.com>
Mon, 19 Apr 2010 21:46:28 +0000 (21:46 +0000)
committerGiampaolo Rodolà <g.rodola@gmail.com>
Mon, 19 Apr 2010 21:46:28 +0000 (21:46 +0000)
Lib/ftplib.py
Misc/NEWS

index 31ac526957d213e35de80e0d24c2e76c5cf02dd4..c1cef8efcab27eb94c993e17a837364b96fe412d 100644 (file)
@@ -295,6 +295,8 @@ class FTP:
             resp = self.sendport(host, port)
         else:
             resp = self.sendeprt(host, port)
+        if self.timeout is not _GLOBAL_DEFAULT_TIMEOUT:
+            sock.settimeout(self.timeout)
         return sock
 
     def makepasv(self):
@@ -347,6 +349,8 @@ class FTP:
             if resp[0] != '1':
                 raise error_reply, resp
             conn, sockaddr = sock.accept()
+            if self.timeout is not _GLOBAL_DEFAULT_TIMEOUT:
+                conn.settimeout(self.timeout)
         if resp[:3] == '150':
             # this is conditional in case we received a 125
             size = parse150(resp)
index c7bf380af69270e71558f2d50c7dcf1bcdbde058..9eecb104f1f63cf131651a8b21cde3fb25e6707e 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -20,6 +20,9 @@ Core and Builtins
 Library
 -------
 
+- Issue #4814: timeout parameter is now applied also for connections resulting
+  from PORT/EPRT commands.
+
 - Issue #8463: added missing reference to bztar in shutil's documentation.
 
 - Issue #8438: Remove reference to the missing "surrogateescape" encoding