Loading CHANGES +10 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,15 @@ Dan F (31 August 2007) - Made some of the error strings returned by the *strerror functions more generic, and more consistent with each other. - Renamed the curl_ftpssl enum to curl_usessl and its enumerated constants, creating macros for backward compatibility: CURLFTPSSL_NONE => CURLUSESSL_NONE CURLFTPSSL_TRY => CURLUSESSL_TRY CURLFTPSSL_CONTROL => CURLUSESSL_CONTROL CURLFTPSSL_ALL => CURLUSESSL_ALL CURLFTPSSL_LAST => CURLUSESSL_LAST Dan F (30 August 2007) - Renamed several libcurl error codes and options to make them more general and allow reuse by multiple protocols. Several unused error codes were Loading Loading @@ -39,6 +48,7 @@ Dan F (30 August 2007) CURLE_FTP_ACCESS_DENIED => CURLE_REMOTE_ACCESS_DENIED CURLE_FTP_COULDNT_SET_BINARY => CURLE_FTP_COULDNT_SET_TYPE CURLE_FTP_SSL_FAILED => CURLE_USE_SSL_FAILED CURLE_FTP_QUOTE_ERROR => CURLE_QUOTE_ERROR CURLE_TFTP_DISKFULL => CURLE_REMOTE_DISK_FULL CURLE_TFTP_EXISTS => CURLE_REMOTE_FILE_EXISTS Loading docs/libcurl/curl_easy_setopt.3 +8 −7 Original line number Diff line number Diff line Loading @@ -940,16 +940,17 @@ This option has no effect if PORT, EPRT or EPSV is used instead of PASV. Pass a long using one of the values from below, to make libcurl use your desired level of SSL for the ftp transfer. (Added in 7.11.0) (This option was known as CURLOPT_FTP_SSL up to 7.16.4) (This option was known as CURLOPT_FTP_SSL up to 7.16.4, and the constants were known as CURLFTPSSL_*) .RS .IP CURLFTPSSL_NONE .IP CURLUSESSL_NONE Don't attempt to use SSL. .IP CURLFTPSSL_TRY .IP CURLUSESSL_TRY Try using SSL, proceed as normal otherwise. .IP CURLFTPSSL_CONTROL Require SSL for the control connection or fail with \fICURLE_FTP_SSL_FAILED\fP. .IP CURLFTPSSL_ALL Require SSL for all communication or fail with \fICURLE_FTP_SSL_FAILED\fP. .IP CURLUSESSL_CONTROL Require SSL for the control connection or fail with \fICURLE_USE_SSL_FAILED\fP. .IP CURLUSESSL_ALL Require SSL for all communication or fail with \fICURLE_USE_SSL_FAILED\fP. .RE .IP CURLOPT_FTPSSLAUTH Pass a long using one of the values from below, to alter how libcurl issues Loading docs/libcurl/libcurl-errors.3 +1 −1 Original line number Diff line number Diff line Loading @@ -173,7 +173,7 @@ Unrecognized transfer encoding Invalid LDAP URL .IP "CURLE_FILESIZE_EXCEEDED (63)" Maximum file size exceeded .IP "CURLE_FTP_SSL_FAILED (64)" .IP "CURLE_USE_SSL_FAILED (64)" Requested FTP SSL level failed .IP "CURLE_SEND_FAIL_REWIND (65)" When doing a send operation curl had to rewind the data to retransmit, but the Loading include/curl/curl.h +22 −7 Original line number Diff line number Diff line Loading @@ -381,7 +381,7 @@ typedef enum { CURLE_BAD_CONTENT_ENCODING, /* 61 - Unrecognized transfer encoding */ CURLE_LDAP_INVALID_URL, /* 62 - Invalid LDAP URL */ CURLE_FILESIZE_EXCEEDED, /* 63 - Maximum file size exceeded */ CURLE_FTP_SSL_FAILED, /* 64 - Requested FTP SSL level failed */ CURLE_USE_SSL_FAILED, /* 64 - Requested FTP SSL level failed */ CURLE_SEND_FAIL_REWIND, /* 65 - Sending the data requires a rewind that failed */ CURLE_SSL_ENGINE_INITFAILED, /* 66 - failed to initialise ENGINE */ Loading Loading @@ -439,6 +439,7 @@ typedef enum { #define CURLE_TFTP_DISKFULL CURLE_REMOTE_DISK_FULL #define CURLE_TFTP_EXISTS CURLE_REMOTE_FILE_EXISTS #define CURLE_HTTP_RANGE_ERROR CURLE_RANGE_ERROR #define CURLE_FTP_SSL_FAILED CURLE_USE_SSL_FAILED /* The following were added earlier */ Loading Loading @@ -492,12 +493,26 @@ typedef enum { /* parameter for the CURLOPT_USE_SSL option */ typedef enum { CURLFTPSSL_NONE, /* do not attempt to use SSL */ CURLFTPSSL_TRY, /* try using SSL, proceed anyway otherwise */ CURLFTPSSL_CONTROL, /* SSL for the control connection or fail */ CURLFTPSSL_ALL, /* SSL for all communication or fail */ CURLFTPSSL_LAST /* not an option, never use */ } curl_ftpssl; CURLUSESSL_NONE, /* do not attempt to use SSL */ CURLUSESSL_TRY, /* try using SSL, proceed anyway otherwise */ CURLUSESSL_CONTROL, /* SSL for the control connection or fail */ CURLUSESSL_ALL, /* SSL for all communication or fail */ CURLUSESSL_LAST /* not an option, never use */ } curl_usessl; #ifndef CURL_NO_OLDIES /* define this to test if your app builds with all the obsolete stuff removed! */ /* Backwards compatibility with older names */ /* These are scheduled to disappear by 2009 */ #define CURLFTPSSL_NONE CURLUSESSL_NONE #define CURLFTPSSL_TRY CURLUSESSL_TRY #define CURLFTPSSL_CONTROL CURLUSESSL_CONTROL #define CURLFTPSSL_ALL CURLUSESSL_ALL #define CURLFTPSSL_LAST CURLUSESSL_LAST #define curl_ftpssl curl_usessl #endif /*!CURL_NO_OLDIES*/ /* parameter for the CURLOPT_FTP_SSL_CCC option */ typedef enum { Loading lib/ftp.c +7 −7 Original line number Diff line number Diff line Loading @@ -2465,9 +2465,9 @@ static CURLcode ftp_statemach_act(struct connectdata *conn) /* remain in this same state */ } else { if(data->set.ftp_ssl > CURLFTPSSL_TRY) /* we failed and CURLFTPSSL_CONTROL or CURLFTPSSL_ALL is set */ result = CURLE_FTP_SSL_FAILED; if(data->set.ftp_ssl > CURLUSESSL_TRY) /* we failed and CURLUSESSL_CONTROL or CURLUSESSL_ALL is set */ result = CURLE_USE_SSL_FAILED; else /* ignore the failure and continue */ result = ftp_state_user(conn); Loading Loading @@ -2497,7 +2497,7 @@ static CURLcode ftp_statemach_act(struct connectdata *conn) */ if(!conn->ssl[SECONDARYSOCKET].use) { NBFTPSENDF(conn, "PROT %c", data->set.ftp_ssl == CURLFTPSSL_CONTROL ? 'C' : 'P'); data->set.ftp_ssl == CURLUSESSL_CONTROL ? 'C' : 'P'); state(conn, FTP_PROT); } else { Loading @@ -2512,12 +2512,12 @@ static CURLcode ftp_statemach_act(struct connectdata *conn) if(ftpcode/100 == 2) /* We have enabled SSL for the data connection! */ conn->ssl[SECONDARYSOCKET].use = (bool)(data->set.ftp_ssl != CURLFTPSSL_CONTROL); (bool)(data->set.ftp_ssl != CURLUSESSL_CONTROL); /* FTP servers typically responds with 500 if they decide to reject our 'P' request */ else if(data->set.ftp_ssl> CURLFTPSSL_CONTROL) else if(data->set.ftp_ssl > CURLUSESSL_CONTROL) /* we failed and bails out */ return CURLE_FTP_SSL_FAILED; return CURLE_USE_SSL_FAILED; if(data->set.ftp_ccc) { /* CCC - Clear Command Channel Loading Loading
CHANGES +10 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,15 @@ Dan F (31 August 2007) - Made some of the error strings returned by the *strerror functions more generic, and more consistent with each other. - Renamed the curl_ftpssl enum to curl_usessl and its enumerated constants, creating macros for backward compatibility: CURLFTPSSL_NONE => CURLUSESSL_NONE CURLFTPSSL_TRY => CURLUSESSL_TRY CURLFTPSSL_CONTROL => CURLUSESSL_CONTROL CURLFTPSSL_ALL => CURLUSESSL_ALL CURLFTPSSL_LAST => CURLUSESSL_LAST Dan F (30 August 2007) - Renamed several libcurl error codes and options to make them more general and allow reuse by multiple protocols. Several unused error codes were Loading Loading @@ -39,6 +48,7 @@ Dan F (30 August 2007) CURLE_FTP_ACCESS_DENIED => CURLE_REMOTE_ACCESS_DENIED CURLE_FTP_COULDNT_SET_BINARY => CURLE_FTP_COULDNT_SET_TYPE CURLE_FTP_SSL_FAILED => CURLE_USE_SSL_FAILED CURLE_FTP_QUOTE_ERROR => CURLE_QUOTE_ERROR CURLE_TFTP_DISKFULL => CURLE_REMOTE_DISK_FULL CURLE_TFTP_EXISTS => CURLE_REMOTE_FILE_EXISTS Loading
docs/libcurl/curl_easy_setopt.3 +8 −7 Original line number Diff line number Diff line Loading @@ -940,16 +940,17 @@ This option has no effect if PORT, EPRT or EPSV is used instead of PASV. Pass a long using one of the values from below, to make libcurl use your desired level of SSL for the ftp transfer. (Added in 7.11.0) (This option was known as CURLOPT_FTP_SSL up to 7.16.4) (This option was known as CURLOPT_FTP_SSL up to 7.16.4, and the constants were known as CURLFTPSSL_*) .RS .IP CURLFTPSSL_NONE .IP CURLUSESSL_NONE Don't attempt to use SSL. .IP CURLFTPSSL_TRY .IP CURLUSESSL_TRY Try using SSL, proceed as normal otherwise. .IP CURLFTPSSL_CONTROL Require SSL for the control connection or fail with \fICURLE_FTP_SSL_FAILED\fP. .IP CURLFTPSSL_ALL Require SSL for all communication or fail with \fICURLE_FTP_SSL_FAILED\fP. .IP CURLUSESSL_CONTROL Require SSL for the control connection or fail with \fICURLE_USE_SSL_FAILED\fP. .IP CURLUSESSL_ALL Require SSL for all communication or fail with \fICURLE_USE_SSL_FAILED\fP. .RE .IP CURLOPT_FTPSSLAUTH Pass a long using one of the values from below, to alter how libcurl issues Loading
docs/libcurl/libcurl-errors.3 +1 −1 Original line number Diff line number Diff line Loading @@ -173,7 +173,7 @@ Unrecognized transfer encoding Invalid LDAP URL .IP "CURLE_FILESIZE_EXCEEDED (63)" Maximum file size exceeded .IP "CURLE_FTP_SSL_FAILED (64)" .IP "CURLE_USE_SSL_FAILED (64)" Requested FTP SSL level failed .IP "CURLE_SEND_FAIL_REWIND (65)" When doing a send operation curl had to rewind the data to retransmit, but the Loading
include/curl/curl.h +22 −7 Original line number Diff line number Diff line Loading @@ -381,7 +381,7 @@ typedef enum { CURLE_BAD_CONTENT_ENCODING, /* 61 - Unrecognized transfer encoding */ CURLE_LDAP_INVALID_URL, /* 62 - Invalid LDAP URL */ CURLE_FILESIZE_EXCEEDED, /* 63 - Maximum file size exceeded */ CURLE_FTP_SSL_FAILED, /* 64 - Requested FTP SSL level failed */ CURLE_USE_SSL_FAILED, /* 64 - Requested FTP SSL level failed */ CURLE_SEND_FAIL_REWIND, /* 65 - Sending the data requires a rewind that failed */ CURLE_SSL_ENGINE_INITFAILED, /* 66 - failed to initialise ENGINE */ Loading Loading @@ -439,6 +439,7 @@ typedef enum { #define CURLE_TFTP_DISKFULL CURLE_REMOTE_DISK_FULL #define CURLE_TFTP_EXISTS CURLE_REMOTE_FILE_EXISTS #define CURLE_HTTP_RANGE_ERROR CURLE_RANGE_ERROR #define CURLE_FTP_SSL_FAILED CURLE_USE_SSL_FAILED /* The following were added earlier */ Loading Loading @@ -492,12 +493,26 @@ typedef enum { /* parameter for the CURLOPT_USE_SSL option */ typedef enum { CURLFTPSSL_NONE, /* do not attempt to use SSL */ CURLFTPSSL_TRY, /* try using SSL, proceed anyway otherwise */ CURLFTPSSL_CONTROL, /* SSL for the control connection or fail */ CURLFTPSSL_ALL, /* SSL for all communication or fail */ CURLFTPSSL_LAST /* not an option, never use */ } curl_ftpssl; CURLUSESSL_NONE, /* do not attempt to use SSL */ CURLUSESSL_TRY, /* try using SSL, proceed anyway otherwise */ CURLUSESSL_CONTROL, /* SSL for the control connection or fail */ CURLUSESSL_ALL, /* SSL for all communication or fail */ CURLUSESSL_LAST /* not an option, never use */ } curl_usessl; #ifndef CURL_NO_OLDIES /* define this to test if your app builds with all the obsolete stuff removed! */ /* Backwards compatibility with older names */ /* These are scheduled to disappear by 2009 */ #define CURLFTPSSL_NONE CURLUSESSL_NONE #define CURLFTPSSL_TRY CURLUSESSL_TRY #define CURLFTPSSL_CONTROL CURLUSESSL_CONTROL #define CURLFTPSSL_ALL CURLUSESSL_ALL #define CURLFTPSSL_LAST CURLUSESSL_LAST #define curl_ftpssl curl_usessl #endif /*!CURL_NO_OLDIES*/ /* parameter for the CURLOPT_FTP_SSL_CCC option */ typedef enum { Loading
lib/ftp.c +7 −7 Original line number Diff line number Diff line Loading @@ -2465,9 +2465,9 @@ static CURLcode ftp_statemach_act(struct connectdata *conn) /* remain in this same state */ } else { if(data->set.ftp_ssl > CURLFTPSSL_TRY) /* we failed and CURLFTPSSL_CONTROL or CURLFTPSSL_ALL is set */ result = CURLE_FTP_SSL_FAILED; if(data->set.ftp_ssl > CURLUSESSL_TRY) /* we failed and CURLUSESSL_CONTROL or CURLUSESSL_ALL is set */ result = CURLE_USE_SSL_FAILED; else /* ignore the failure and continue */ result = ftp_state_user(conn); Loading Loading @@ -2497,7 +2497,7 @@ static CURLcode ftp_statemach_act(struct connectdata *conn) */ if(!conn->ssl[SECONDARYSOCKET].use) { NBFTPSENDF(conn, "PROT %c", data->set.ftp_ssl == CURLFTPSSL_CONTROL ? 'C' : 'P'); data->set.ftp_ssl == CURLUSESSL_CONTROL ? 'C' : 'P'); state(conn, FTP_PROT); } else { Loading @@ -2512,12 +2512,12 @@ static CURLcode ftp_statemach_act(struct connectdata *conn) if(ftpcode/100 == 2) /* We have enabled SSL for the data connection! */ conn->ssl[SECONDARYSOCKET].use = (bool)(data->set.ftp_ssl != CURLFTPSSL_CONTROL); (bool)(data->set.ftp_ssl != CURLUSESSL_CONTROL); /* FTP servers typically responds with 500 if they decide to reject our 'P' request */ else if(data->set.ftp_ssl> CURLFTPSSL_CONTROL) else if(data->set.ftp_ssl > CURLUSESSL_CONTROL) /* we failed and bails out */ return CURLE_FTP_SSL_FAILED; return CURLE_USE_SSL_FAILED; if(data->set.ftp_ccc) { /* CCC - Clear Command Channel Loading