Kaydet (Commit) 36cbc08f authored tarafından Martin v. Löwis's avatar Martin v. Löwis

Patch #1359217: Ignore 2xx response before 150 response.

Will backport to 2.5.
üst 056dac1b
......@@ -325,6 +325,14 @@ class FTP:
if rest is not None:
self.sendcmd("REST %s" % rest)
resp = self.sendcmd(cmd)
# Some servers apparently send a 200 reply to
# a LIST or STOR command, before the 150 reply
# (and way before the 226 reply). This seems to
# be in violation of the protocol (which only allows
# 1xx or error messages for LIST), so we just discard
# this response.
if resp[0] == '2':
resp = self.getresp()
if resp[0] != '1':
raise error_reply, resp
else:
......@@ -332,6 +340,9 @@ class FTP:
if rest is not None:
self.sendcmd("REST %s" % rest)
resp = self.sendcmd(cmd)
# See above.
if resp[0] == '2':
resp = self.getresp()
if resp[0] != '1':
raise error_reply, resp
conn, sockaddr = sock.accept()
......
......@@ -98,6 +98,9 @@ Core and builtins
Library
-------
- Patch #1359217: Process 2xx response in an ftplib transfer
that precedes an 1xx response.
- Patch #1355023: support whence argument for GzipFile.seek.
- Patch #1065257: Support passing open files as body in
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment