.\" generated by cd2nroff 0.1 from CURLINFO_PROXY_ERROR.md .TH CURLINFO_PROXY_ERROR 3 "March 22 2024" libcurl .SH NAME CURLINFO_PROXY_ERROR \- get the detailed (SOCKS) proxy error .SH SYNOPSIS .nf #include typedef enum { CURLPX_OK, CURLPX_BAD_ADDRESS_TYPE, CURLPX_BAD_VERSION, CURLPX_CLOSED, CURLPX_GSSAPI, CURLPX_GSSAPI_PERMSG, CURLPX_GSSAPI_PROTECTION, CURLPX_IDENTD, CURLPX_IDENTD_DIFFER, CURLPX_LONG_HOSTNAME, CURLPX_LONG_PASSWD, CURLPX_LONG_USER, CURLPX_NO_AUTH, CURLPX_RECV_ADDRESS, CURLPX_RECV_AUTH, CURLPX_RECV_CONNECT, CURLPX_RECV_REQACK, CURLPX_REPLY_ADDRESS_TYPE_NOT_SUPPORTED, CURLPX_REPLY_COMMAND_NOT_SUPPORTED, CURLPX_REPLY_CONNECTION_REFUSED, CURLPX_REPLY_GENERAL_SERVER_FAILURE, CURLPX_REPLY_HOST_UNREACHABLE, CURLPX_REPLY_NETWORK_UNREACHABLE, CURLPX_REPLY_NOT_ALLOWED, CURLPX_REPLY_TTL_EXPIRED, CURLPX_REPLY_UNASSIGNED, CURLPX_REQUEST_FAILED, CURLPX_RESOLVE_HOST, CURLPX_SEND_AUTH, CURLPX_SEND_CONNECT, CURLPX_SEND_REQUEST, CURLPX_UNKNOWN_FAIL, CURLPX_UNKNOWN_MODE, CURLPX_USER_REJECTED, CURLPX_LAST /* never use */ } CURLproxycode; CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_PROXY_ERROR, long *detail); .fi .SH DESCRIPTION Pass a pointer to a long to receive a detailed error code when the most recent transfer returned a \fBCURLE_PROXY\fP error. That error code matches the \fBCURLproxycode\fP set. The error code is zero (\fBCURLPX_OK\fP) if no response code was available. .SH PROTOCOLS All that can be done over SOCKS .SH EXAMPLE .nf int main(void) { CURL *curl = curl_easy_init(); if(curl) { CURLcode res; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com"); curl_easy_setopt(curl, CURLOPT_PROXY, "socks5://127.0.0.1"); res = curl_easy_perform(curl); if(res == CURLE_PROXY) { long proxycode; res = curl_easy_getinfo(curl, CURLINFO_PROXY_ERROR, &proxycode); if(!res && proxycode) printf("The detailed proxy error: %ld\\n", proxycode); } curl_easy_cleanup(curl); } } .fi .SH AVAILABILITY Added in 7.73.0 .SH RETURN VALUE Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. .SH SEE ALSO .BR CURLINFO_RESPONSE_CODE (3), .BR curl_easy_getinfo (3), .BR curl_easy_setopt (3), .BR libcurl-errors (3)