From b45ac1e859212b99609176111f03cccfd036f9cc Mon Sep 17 00:00:00 2001 From: Mike Abdullah Date: Sun, 15 Mar 2015 16:38:38 +0000 Subject: [PATCH] Use request's timeout interval for CURLOPT_FTP_RESPONSE_TIMEOUT --- CURLHandleSource/CURLTransfer.m | 1 + 1 file changed, 1 insertion(+) diff --git a/CURLHandleSource/CURLTransfer.m b/CURLHandleSource/CURLTransfer.m index c66d3c65..7fa32433 100755 --- a/CURLHandleSource/CURLTransfer.m +++ b/CURLHandleSource/CURLTransfer.m @@ -535,6 +535,7 @@ - (CURLcode)setupRequest:(NSURLRequest *)request credential:(NSURLCredential *)c RETURN_IF_FAILED(curl_easy_setopt(_handle, CURLOPT_SSL_VERIFYPEER, (long)[request curl_shouldVerifySSLCertificate])); RETURN_IF_FAILED(curl_easy_setopt(_handle, CURLOPT_SSL_VERIFYHOST, (long)(request.curl_shouldVerifySSLHost ? 2 : 0))); RETURN_IF_FAILED(curl_easy_setopt(_handle, CURLOPT_FTP_USE_EPSV, 0)); // Disable EPSV for FTP transfers. I've found that some servers claim to support EPSV but take a very long time to respond to it, if at all, often causing the overall connection to fail. Note IPv6 connections will ignore this and use EPSV anyway + RETURN_IF_FAILED(curl_easy_setopt(_handle, CURLOPT_FTP_RESPONSE_TIMEOUT, (long)request.timeoutInterval)); // functions RETURN_IF_FAILED([self setOption:CURLOPT_SOCKOPTFUNCTION data:CURLOPT_SOCKOPTDATA function:curlSocketOptFunction]);