diff options
author | Linus Nielsen Feltzing <linus@haxx.se> | 2007-01-08 11:24:11 +0000 |
---|---|---|
committer | Linus Nielsen Feltzing <linus@haxx.se> | 2007-01-08 11:24:11 +0000 |
commit | d4651994110612c476a2b65dfa0f9b4f138fca68 (patch) | |
tree | 28a4ed8c9b06a200b670516c700c9a2baa3d2081 | |
parent | 55123424c896feb6581b086f5cac87c1d6df562f (diff) | |
download | curl-d4651994110612c476a2b65dfa0f9b4f138fca68.tar.gz |
Correct error code for CCC/SSL shutdown failure
-rw-r--r-- | include/curl/curl.h | 4 | ||||
-rw-r--r-- | lib/ftp.c | 6 | ||||
-rw-r--r-- | lib/sslgen.c | 6 | ||||
-rw-r--r-- | lib/strerror.c | 4 |
4 files changed, 12 insertions, 8 deletions
diff --git a/include/curl/curl.h b/include/curl/curl.h index 8bbdd1b24..f41067614 100644 --- a/include/curl/curl.h +++ b/include/curl/curl.h @@ -397,8 +397,8 @@ typedef enum { generic so the error message will be of interest when this has happened */ - CURLE_FTP_SSL_CCC_FAILED, /* 80 - Failed to clear the FTP command - channel */ + CURLE_SSL_SHUTDOWN_FAILED, /* 80 - Failed to shut down the SSL + connection */ CURL_LAST /* never use! */ } CURLcode; @@ -2563,8 +2563,10 @@ static CURLcode ftp_statemach_act(struct connectdata *conn) /* First shut down the SSL layer (note: this call will block) */ result = Curl_ssl_shutdown(conn, FIRSTSOCKET); - if(result) - return CURLE_FTP_SSL_CCC_FAILED; + if(result) { + failf(conn->data, "Failed to clear the command channel (CCC)"); + return result; + } /* Then continue as normal */ result = ftp_state_pwd(conn); diff --git a/lib/sslgen.c b/lib/sslgen.c index cc9642b66..33f038017 100644 --- a/lib/sslgen.c +++ b/lib/sslgen.c @@ -401,10 +401,12 @@ CURLcode Curl_ssl_shutdown(struct connectdata *conn, int sockindex) { if(conn->ssl[sockindex].use) { #ifdef USE_SSLEAY - return Curl_ossl_shutdown(conn, sockindex); + if(Curl_ossl_shutdown(conn, sockindex)) + return CURLE_SSL_SHUTDOWN_FAILED; #else #ifdef USE_GNUTLS - return Curl_gtls_shutdown(conn, sockindex); + if(Curl_gtls_shutdown(conn, sockindex)) + return CURLE_SSL_SHUTDOWN_FAILED; #else (void)conn; (void)sockindex; diff --git a/lib/strerror.c b/lib/strerror.c index 2634dffdb..6304fe89d 100644 --- a/lib/strerror.c +++ b/lib/strerror.c @@ -244,8 +244,8 @@ curl_easy_strerror(CURLcode error) case CURLE_FTP_SSL_FAILED: return "Requested FTP SSL level failed"; - case CURLE_FTP_SSL_CCC_FAILED: - return "Failed to clear the FTP command channel"; + case CURLE_SSL_SHUTDOWN_FAILED: + return "Failed to shut down the SSL connection"; case CURLE_SEND_FAIL_REWIND: return "Send failed since rewinding of the data stream failed"; |