FTP: prevent the multi interface from blocking
authorDaniel Stenberg <daniel@haxx.se>
Sun, 4 Nov 2012 17:22:48 +0000 (18:22 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Sun, 4 Nov 2012 18:05:39 +0000 (19:05 +0100)
commitb2954e66e87be7414a4508f8167ca531e653bea8
treef7efa072bdae808c52f7bded50d1a75cde2df82f
parent7c0f201075029a7c87c5cfe84f0405bb08441fbf
FTP: prevent the multi interface from blocking

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
lib/ftp.c
lib/pingpong.c
tests/data/Makefile.am
tests/data/test1501 [new file with mode: 0644]
tests/data/test591
tests/data/test592
tests/libtest/.gitignore
tests/libtest/Makefile.inc
tests/libtest/lib1501.c [new file with mode: 0644]