aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2007-01-08 11:24:11 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2007-01-08 11:24:11 +0000
commitd4651994110612c476a2b65dfa0f9b4f138fca68 (patch)
tree28a4ed8c9b06a200b670516c700c9a2baa3d2081
parent55123424c896feb6581b086f5cac87c1d6df562f (diff)
Correct error code for CCC/SSL shutdown failure
-rw-r--r--include/curl/curl.h4
-rw-r--r--lib/ftp.c6
-rw-r--r--lib/sslgen.c6
-rw-r--r--lib/strerror.c4
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;
diff --git a/lib/ftp.c b/lib/ftp.c
index 56b6cf229..4b6139edf 100644
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -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";