dwww Home | Manual pages | Find package

CURLINFO_LOCAL_IP(3)        Library Functions Manual       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-termi-
       nated string holding the IP address of the local end of most recent con-
       nection 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 is reused at
       next request so you need to copy the string if you want to keep the  in-
       formation.

       The  ip pointer is NULL or points to private memory. You MUST NOT free -
       it gets freed when you call curl_easy_cleanup(3)  on  the  corresponding
       CURL handle.

PROTOCOLS
       This functionality affects quic and tcp

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

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

AVAILABILITY
       Added in curl 7.21.0

RETURN VALUE
       curl_easy_getinfo(3) returns a CURLcode indicating success or error.

       CURLE_OK  (0) means everything was OK, non-zero means an error occurred,
       see libcurl-errors(3).

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

libcurl                            2026-07-12              CURLINFO_LOCAL_IP(3)

Generated by dwww version 1.16 on Fri Oct 2 03:58:09 CEST 2026.