Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

CURLINFO_LOCAL_IP (3)

Name

CURLINFO_LOCAL_IP - get local IP address of last connection

Synopsis

#include <curl/curl.h>

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

Description

CURLINFO_LOCAL_IP(3)       curl_easy_getinfo options      CURLINFO_LOCAL_IP(3)



NAME
       CURLINFO_LOCAL_IP - get local IP address of last connection

SYNOPSIS
       #include <curl/curl.h>

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

DESCRIPTION
       Pass  a pointer to a char pointer to receive the pointer to a null-ter-
       minated string holding the IP address of the local end of  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 curl_easy_cleanup(3) on the corre-
       sponding CURL handle.

PROTOCOLS
       All

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_LOCAL_IP, &ip) && ip) {
           printf("Local IP: %s\n", ip);
         }

         /* always cleanup */
         curl_easy_cleanup(curl);
       }

AVAILABILITY
       Added in 7.21.0

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


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | web/curl         |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+

SEE ALSO
       curl_easy_getinfo(3), curl_easy_setopt(3), CURLINFO_PRIMARY_IP(3),



NOTES
       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source       was       downloaded      from       https://curl.se/down-
       load/curl-7.83.1.tar.bz2.

       Further information about this software can be found on the open source
       community website at http://curl.haxx.se/.



libcurl 7.83.1                 November 26, 2021          CURLINFO_LOCAL_IP(3)