[issue2628] ftplib Persistent data connection

2021-10-30 Thread Jonathan Bell


Jonathan Bell  added the comment:

The CLA is signed, and I'm again able to work on this.

I was able to update this locally for Python 3 with a minimal test case. What 
specifically were you looking for?

--

___
Python tracker 
<https://bugs.python.org/issue2628>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue2628] ftplib Persistent data connection

2021-10-30 Thread Jonathan Bell


Change by Jonathan Bell :


--
pull_requests: +27604
stage: test needed -> patch review
pull_request: https://github.com/python/cpython/pull/29337

___
Python tracker 
<https://bugs.python.org/issue2628>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue2628] ftplib Persistent data connection

2021-10-31 Thread Jonathan Bell


Jonathan Bell  added the comment:

This issue is 13 years old. The original 2008 patch was used in a production 
environment against an OpenVMS server identifying itself as MadGoat. That use 
case involved downloading documents only, and no write permission was 
available. Therefore the patch only supports RETR. See the debug.log file 
attached to this issue for the server interaction. 

I no longer have a need for BLOCK mode, and don't know what modern servers 
would support it. mikecmcleod revived this issue so perhaps they can provide 
some ability for testing, or perspective on the current needs.

The PR updates the patch to Python 3, and includes a test written against the 
minimal changes required for that 2.7->3.x update.

--

___
Python tracker 
<https://bugs.python.org/issue2628>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue2628] ftplib Persistent data connection

2021-11-01 Thread Jonathan Bell


Jonathan Bell  added the comment:

No practical method exists to verify BLOCK transmission mode, which as 
mentioned earlier, was rarely implemented even when this issue was opened. 
Given that reality, I'm inclined to close this issue.

--

___
Python tracker 
<https://bugs.python.org/issue2628>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue2628] ftplib Persistent data connection

2021-11-01 Thread Jonathan Bell


Jonathan Bell  added the comment:

I should rephrase: There doesn't seem to be a practical way to verify BLOCK 
transmission mode against actual servers in the wild. As the Wikipedia article 
that Giampaolo referenced points out, BLOCK mode is a rarity that was primarily 
supported only by mainframe and minicomputer systems.

Any compliant server not supporting BLOCK should respond with a non-200 
response. The PR sends its request to enter BLOCK mode with self.voidcmd(), 
which handles non-200 responses by raising error_reply.

When I originally wrote that patch in 2008, such a system was running on a DEC 
Alpha under OpenVMS. Within months of the first test suite appearing for 
ftplib, that same vendor replaced their systems. The new server had no BLOCK 
transmission support, but was capable of handling multiple consecutive passive 
mode STREAM data connections without fault.

Even at the time, I couldn't find any other freely available FTP servers 
supporting BLOCK. But STREAM was and continues to be the standard.

Essentially this means that any changes to the existing PR may not be work 
properly with actual servers.

--

___
Python tracker 
<https://bugs.python.org/issue2628>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com