| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- .\" generated by cd2nroff 0.1 from CURLINFO_PRIMARY_IP.md
- .TH CURLINFO_PRIMARY_IP 3 "2025-01-17" libcurl
- .SH NAME
- CURLINFO_PRIMARY_IP \- get IP address of last connection
- .SH SYNOPSIS
- .nf
- #include <curl/curl.h>
- CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_PRIMARY_IP, char **ip);
- .fi
- .SH DESCRIPTION
- Pass a pointer to a char pointer to receive the pointer to a null\-terminated
- string holding the IP address of the most recent connection done with this
- \fBcurl\fP handle. This string may be IPv6 when that is enabled. Note that you
- get a pointer to a memory area that is reused at next request so you need to
- copy the string if you want to keep the information.
- The \fBip\fP pointer is NULL or points to private memory. You MUST NOT free \-
- it gets freed when you call \fIcurl_easy_cleanup(3)\fP on the corresponding
- CURL handle.
- .SH PROTOCOLS
- This functionality affects all supported protocols
- .SH EXAMPLE
- .nf
- int main(void)
- {
- char *ip;
- CURLcode res;
- CURL *curl = curl_easy_init();
- curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
- /* Perform the transfer */
- res = curl_easy_perform(curl);
- /* Check for errors */
- if((res == CURLE_OK) &&
- !curl_easy_getinfo(curl, CURLINFO_PRIMARY_IP, &ip) && ip) {
- printf("IP: %s\\n", ip);
- }
- /* always cleanup */
- curl_easy_cleanup(curl);
- }
- .fi
- .SH AVAILABILITY
- Added in curl 7.19.0
- .SH RETURN VALUE
- Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
- .SH SEE ALSO
- .BR CURLINFO_LOCAL_IP (3),
- .BR CURLINFO_LOCAL_PORT (3),
- .BR CURLINFO_PRIMARY_PORT (3),
- .BR curl_easy_getinfo (3),
- .BR curl_easy_setopt (3)
|