Command Section

CURLINFO_PRIMARY_IP(3)     curl_easy_getinfo options    CURLINFO_PRIMARY_IP(3)

NAME
       CURLINFO_PRIMARY_IP - get IP address of last connection

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_PRIMARY_IP, char
       **ip);

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 curl handle. This string may be IPv6 when that is
       enabled. Note that you get a pointer to a memory area that will be re-
       used at next request so you need to copy the string if you want to keep
       the information.

       The ip pointer will be NULL or pointing to private memory you MUST NOT
       free - it gets freed when you call _easy_cleanup&section=3">curl_easy_cleanup(3) on the
       corresponding CURL handle.

PROTOCOLS
       All network based ones

EXAMPLE
       {
         char *ip;

         curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");

         /* Perform the request, res will get the return code */
         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);
       }

AVAILABILITY
       Added in 7.19.0

RETURN VALUE
       Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION
       if not.

SEE ALSO
       curl_easy_getinfo(3), curl_easy_setopt(3),  CURLINFO_PRIMARY_PORT(3),
       CURLINFO_LOCAL_IP(3),

libcurl 7.77.0                 November 4, 2020         CURLINFO_PRIMARY_IP(3)

Command Section

man2web Home...