mirror of
https://github.com/curl/curl.git
synced 2026-07-07 17:17:15 +03:00
openssl: prefix errors with '[lib]/[version]: '
To help users understand where this (cryptic) error message comes from. Suggested-by: Philip Sanetra Ref: #10002 Closes #10004
This commit is contained in:
parent
ca15b7512e
commit
39bbd1cafb
1 changed files with 15 additions and 4 deletions
|
|
@ -895,12 +895,25 @@ static const char *SSL_ERROR_to_str(int err)
|
|||
}
|
||||
}
|
||||
|
||||
static size_t ossl_version(char *buffer, size_t size);
|
||||
|
||||
/* Return error string for last OpenSSL error
|
||||
*/
|
||||
static char *ossl_strerror(unsigned long error, char *buf, size_t size)
|
||||
{
|
||||
if(size)
|
||||
size_t len;
|
||||
DEBUGASSERT(size);
|
||||
*buf = '\0';
|
||||
|
||||
len = ossl_version(buf, size);
|
||||
DEBUGASSERT(len < (size - 2));
|
||||
if(len < (size - 2)) {
|
||||
buf += len;
|
||||
size -= (len + 2);
|
||||
*buf++ = ':';
|
||||
*buf++ = ' ';
|
||||
*buf = '\0';
|
||||
}
|
||||
|
||||
#ifdef OPENSSL_IS_BORINGSSL
|
||||
ERR_error_string_n((uint32_t)error, buf, size);
|
||||
|
|
@ -908,7 +921,7 @@ static char *ossl_strerror(unsigned long error, char *buf, size_t size)
|
|||
ERR_error_string_n(error, buf, size);
|
||||
#endif
|
||||
|
||||
if(size > 1 && !*buf) {
|
||||
if(!*buf) {
|
||||
strncpy(buf, (error ? "Unknown error" : "No error"), size);
|
||||
buf[size - 1] = '\0';
|
||||
}
|
||||
|
|
@ -4492,8 +4505,6 @@ static bool ossl_data_pending(struct Curl_cfilter *cf,
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
static size_t ossl_version(char *buffer, size_t size);
|
||||
|
||||
static ssize_t ossl_send(struct Curl_cfilter *cf,
|
||||
struct Curl_easy *data,
|
||||
const void *mem,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue