support for CURLOPT_FTP_USE_EPRT added
This commit is contained in:
		@@ -1080,7 +1080,8 @@ CURLcode ftp_use_port(struct connectdata *conn)
 | 
			
		||||
    return CURLE_FTP_PORT_FAILED;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  for (modep = (char **)mode; modep && *modep; modep++) {
 | 
			
		||||
  for (modep = (char **)(data->set.ftp_use_eprt?&mode[0]:&mode[2]);
 | 
			
		||||
       modep && *modep; modep++) {
 | 
			
		||||
    int lprtaf, eprtaf;
 | 
			
		||||
    int alen=0, plen=0;
 | 
			
		||||
    
 | 
			
		||||
 
 | 
			
		||||
@@ -284,6 +284,7 @@ CURLcode Curl_open(struct SessionHandle **curl)
 | 
			
		||||
 | 
			
		||||
  data->set.httpreq = HTTPREQ_GET; /* Default HTTP request */
 | 
			
		||||
  data->set.ftp_use_epsv = TRUE;   /* FTP defaults to EPSV operations */
 | 
			
		||||
  data->set.ftp_use_eprt = TRUE;   /* FTP defaults to EPRT operations */
 | 
			
		||||
 | 
			
		||||
  data->set.dns_cache_timeout = 60; /* Timeout every 60 seconds by default */
 | 
			
		||||
 | 
			
		||||
@@ -634,6 +635,10 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option, ...)
 | 
			
		||||
    data->set.ftp_use_port = data->set.ftpport?1:0;
 | 
			
		||||
    break;
 | 
			
		||||
 | 
			
		||||
  case CURLOPT_FTP_USE_EPRT:
 | 
			
		||||
    data->set.ftp_use_eprt = va_arg(param, long)?TRUE:FALSE;
 | 
			
		||||
    break;
 | 
			
		||||
 | 
			
		||||
  case CURLOPT_FTP_USE_EPSV:
 | 
			
		||||
    data->set.ftp_use_epsv = va_arg(param, long)?TRUE:FALSE;
 | 
			
		||||
    break;
 | 
			
		||||
 
 | 
			
		||||
@@ -759,6 +759,7 @@ struct UserDefined {
 | 
			
		||||
  bool reuse_fresh;      /* do not re-use an existing connection  */
 | 
			
		||||
  bool expect100header;  /* TRUE if we added Expect: 100-continue */
 | 
			
		||||
  bool ftp_use_epsv;     /* if EPSV is to be attempted or not */
 | 
			
		||||
  bool ftp_use_eprt;     /* if EPRT is to be attempted or not */
 | 
			
		||||
  bool no_signal;        /* do not use any signal/alarm handler */
 | 
			
		||||
 | 
			
		||||
  bool global_dns_cache;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user