13 error_code{err_code_arg}
17 return curl_easy_strerror(
static_cast<CURLcode>(error_code));
20 auto Easy_ref_t::check_perform(
long code,
const char *fname)
noexcept -> perform_ret_t
26 case CURLE_URL_MALFORMAT:
27 return {
code::url_malformat};
29 case CURLE_UNSUPPORTED_PROTOCOL:
30 return {
code::unsupported_protocol};
32 case CURLE_NOT_BUILT_IN:
35 case CURLE_COULDNT_RESOLVE_PROXY:
36 return {
code::cannot_resolve_proxy};
38 case CURLE_COULDNT_RESOLVE_HOST:
39 case CURLE_FTP_CANT_GET_HOST:
40 return {
code::cannot_resolve_host};
42 case CURLE_COULDNT_CONNECT:
43 return {
code::cannot_connect};
45 case CURLE_REMOTE_ACCESS_DENIED:
46 return {
code::remote_access_denied};
48 case CURLE_WRITE_ERROR:
49 return {
code::writeback_error};
51 case CURLE_UPLOAD_FAILED:
52 return {
code::upload_failure};
54 case CURLE_ABORTED_BY_CALLBACK:
55 return {
code::aborted_by_callback};
57 case CURLE_OUT_OF_MEMORY:
58 return {std::bad_alloc{}};
60 case CURLE_OPERATION_TIMEDOUT:
61 return {
code::timedout};
63 case CURLE_BAD_FUNCTION_ARGUMENT:
64 return std::invalid_argument{
"A function was called with a bad parameter."};
66 case CURLE_TOO_MANY_REDIRECTS:
67 return {
code::too_many_redirects};
69 case CURLE_RECURSIVE_API_CALL:
72 case CURLE_SSL_PINNEDPUBKEYNOTMATCH:
73 return {
code::ssl_pinned_pubkey_mismatch};
79 case CURLE_SSL_CONNECT_ERROR:
80 case CURLE_UNKNOWN_OPTION:
90 error_code{err_code_arg}
94 return curl_multi_strerror(
static_cast<CURLMcode>(error_code));