summaryrefslogtreecommitdiff
path: root/Lib/ftplib.py
diff options
context:
space:
mode:
authorGiampaolo RodolĂ  <g.rodola@gmail.com>2010-04-19 21:46:28 +0000
committerGiampaolo RodolĂ  <g.rodola@gmail.com>2010-04-19 21:46:28 +0000
commit607f7c056e19b6418421fd26b6754c906868672f (patch)
tree0a619c2945340b3b8cb869b01b2a6c8893d89e9f /Lib/ftplib.py
parent8a12f940fe99ec087977ad07a5331520237b9cfb (diff)
downloadcpython-git-607f7c056e19b6418421fd26b6754c906868672f.tar.gz
Fix Issue #4841: timeout is now applied for connections resulting from PORT/EPRT commands
Diffstat (limited to 'Lib/ftplib.py')
-rw-r--r--Lib/ftplib.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/Lib/ftplib.py b/Lib/ftplib.py
index 31ac526957..c1cef8efca 100644
--- a/Lib/ftplib.py
+++ b/Lib/ftplib.py
@@ -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)