mirror of
https://github.com/curl/curl.git
synced 2024-12-27 06:59:43 +08:00
b2954e66e8
As pointed out in Bug report #3579064, curl_multi_perform() would wrongly use a blocking mechanism internally for some commands which could lead to for example a very long block if the LIST response never showed. The solution was to make sure to properly continue to use the multi interface non-blocking state machine. The new test 1501 verifies the fix. Bug: http://curl.haxx.se/bug/view.cgi?id=3579064 Reported by: Guido Berhoerster
54 lines
570 B
Plaintext
54 lines
570 B
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
FTP
|
|
RETR
|
|
multi
|
|
LIST
|
|
</keywords>
|
|
</info>
|
|
|
|
# Server-side
|
|
<reply>
|
|
<data>
|
|
</data>
|
|
<servercmd>
|
|
DELAY LIST 2
|
|
DELAY TYPE 2
|
|
</servercmd>
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
ftp
|
|
</server>
|
|
<tool>
|
|
lib1501
|
|
</tool>
|
|
<name>
|
|
FTP with multi interface and slow LIST response
|
|
</name>
|
|
<command>
|
|
ftp://%HOSTIP:%FTPPORT/1501/
|
|
</command>
|
|
</client>
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<errorcode>
|
|
0
|
|
</errorcode>
|
|
<protocol>
|
|
USER anonymous
|
|
PASS ftp@example.com
|
|
PWD
|
|
CWD 1501
|
|
EPSV
|
|
TYPE A
|
|
LIST
|
|
QUIT
|
|
</protocol>
|
|
|
|
</verify>
|
|
</testcase>
|