include: make CURLE_HTTP3 use a new error code

To avoid potential issues with error code reuse.

Reported-by: Christoph M. Becker
Assisted-by: Dan Fandrich
Fixes #4601
Closes #4627
This commit is contained in:
Daniel Stenberg 2019-11-21 11:37:44 +01:00
parent e1f66ee3bf
commit f70da9c17e
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2
4 changed files with 9 additions and 5 deletions

View File

@ -256,6 +256,9 @@ Stream error in the HTTP/2 framing layer.
An API function was called from inside a callback. An API function was called from inside a callback.
.IP "CURLE_AUTH_ERROR (94)" .IP "CURLE_AUTH_ERROR (94)"
An authentication function returned an error. An authentication function returned an error.
.IP "CURLE_HTTP3 (95)"
A problem was detected in the HTTP/3 layer. This is somewhat generic and can
be one out of several problems, see the error buffer for details.
.IP "CURLE_OBSOLETE*" .IP "CURLE_OBSOLETE*"
These error codes will never be returned. They were used in an old libcurl These error codes will never be returned. They were used in an old libcurl
version and are currently unused. version and are currently unused.

View File

@ -501,9 +501,7 @@ typedef enum {
CURLE_FTP_COULDNT_SET_TYPE, /* 17 */ CURLE_FTP_COULDNT_SET_TYPE, /* 17 */
CURLE_PARTIAL_FILE, /* 18 */ CURLE_PARTIAL_FILE, /* 18 */
CURLE_FTP_COULDNT_RETR_FILE, /* 19 */ CURLE_FTP_COULDNT_RETR_FILE, /* 19 */
CURLE_HTTP3, /* 20 - An HTTP/3 layer problem. CURLE_OBSOLETE20, /* 20 - NOT USED */
[was obsoleted in August 2007 for 7.17.0,
reused in November 2019 for 7.67.1] */
CURLE_QUOTE_ERROR, /* 21 - quote command failure */ CURLE_QUOTE_ERROR, /* 21 - quote command failure */
CURLE_HTTP_RETURNED_ERROR, /* 22 */ CURLE_HTTP_RETURNED_ERROR, /* 22 */
CURLE_WRITE_ERROR, /* 23 */ CURLE_WRITE_ERROR, /* 23 */
@ -604,6 +602,7 @@ typedef enum {
inside a callback */ inside a callback */
CURLE_AUTH_ERROR, /* 94 - an authentication function returned an CURLE_AUTH_ERROR, /* 94 - an authentication function returned an
error */ error */
CURLE_HTTP3, /* 95 - An HTTP/3 layer problem */
CURL_LAST /* never use! */ CURL_LAST /* never use! */
} CURLcode; } CURLcode;

View File

@ -318,6 +318,7 @@ curl_easy_strerror(CURLcode error)
return "HTTP/3 error"; return "HTTP/3 error";
/* error codes not used by current libcurl */ /* error codes not used by current libcurl */
case CURLE_OBSOLETE20:
case CURLE_OBSOLETE24: case CURLE_OBSOLETE24:
case CURLE_OBSOLETE29: case CURLE_OBSOLETE29:
case CURLE_OBSOLETE32: case CURLE_OBSOLETE32:

View File

@ -52,7 +52,7 @@ e16: Error in the HTTP2 framing layer
e17: FTP: couldn't set file type e17: FTP: couldn't set file type
e18: Transferred a partial file e18: Transferred a partial file
e19: FTP: couldn't retrieve (RETR failed) the specified file e19: FTP: couldn't retrieve (RETR failed) the specified file
e20: HTTP/3 error e20: Unknown error
e21: Quote command returned error e21: Quote command returned error
e22: HTTP response code said error e22: HTTP response code said error
e23: Failed writing received data to disk/application e23: Failed writing received data to disk/application
@ -127,7 +127,8 @@ e91: SSL server certificate status verification FAILED
e92: Stream error in the HTTP/2 framing layer e92: Stream error in the HTTP/2 framing layer
e93: API function called from within callback e93: API function called from within callback
e94: An authentication function returned an error e94: An authentication function returned an error
e95: Unknown error e95: HTTP/3 error
e96: Unknown error
m-1: Please call curl_multi_perform() soon m-1: Please call curl_multi_perform() soon
m0: No error m0: No error
m1: Invalid multi handle m1: Invalid multi handle