From c834213ad52c52431e9ca597862dc81839cabe84 Mon Sep 17 00:00:00 2001 From: Gokhan Sengun Date: Mon, 19 Dec 2011 14:35:20 +0100 Subject: FTP: perform active connections non-blocking 1- Two new error codes are introduced. CURLE_FTP_ACCEPT_FAILED to be set whenever ACCEPTing fails because of FTP server connected. CURLE_FTP_ACCEPT_TIMEOUT to be set whenever ACCEPTing timeouts. Neither of these errors are considered fatal and control connection remains OK because it could just be a firewall blocking server to connect to the client. 2- One new setopt option was introduced. CURLOPT_ACCEPTTIMEOUT_MS It sets the maximum amount of time FTP client is going to wait for a server to connect. Internal default accept timeout is 60 seconds. --- tests/data/test1207 | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'tests/data/test1207') diff --git a/tests/data/test1207 b/tests/data/test1207 index 6ca713196..283e46d5b 100644 --- a/tests/data/test1207 +++ b/tests/data/test1207 @@ -36,12 +36,6 @@ FTP PORT and 421 on download s/^EPRT \|1\|(.*)/EPRT \|1\|/ - -# The protocol part does not include QUIT simply because the error is -# CURLE_OPERATION_TIMEDOUT (28) which is a generic timeout error without -# specificly saying for which connection it concerns, and for timeouts libcurl -# marks the control channel as "invalid". As this test case times out for the -# data connection it could still use the control channel. USER anonymous PASS ftp@example.com @@ -50,9 +44,10 @@ EPRT |1| TYPE I SIZE 1207 RETR 1207 +QUIT -28 +10 -- cgit v1.2.3