aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/ftp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/ftp.c b/lib/ftp.c
index cc667acdb..a43ee7051 100644
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -677,12 +677,14 @@ CURLcode Curl_ftp_connect(struct connectdata *conn)
if(result)
return result;
- if(ftpcode == 200)
+ if(ftpcode/100 == 2)
/* We have enabled SSL for the data connection! */
conn->ssl[SECONDARYSOCKET].use = TRUE;
-
/* FTP servers typically responds with 500 if they decide to reject
our 'P' request */
+ else if(data->set.ftp_ssl> CURLFTPSSL_CONTROL)
+ /* we failed and bails out */
+ return CURLE_FTP_SSL_FAILED;
}
}