manpagez: man pages & more
man CURLOPT_ABSTRACT_UNIX_SOCKET(3)
Home | html | info | man
CURLOPT_ABSTRACT_UNIX_SOCKET(3)                       Library Functions Manual


NAME

       CURLOPT_ABSTRACT_UNIX_SOCKET - abstract Unix domain socket


SYNOPSIS

       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ABSTRACT_UNIX_SOCKET,
                                 char *path);


DESCRIPTION

       Enables the use of an abstract Unix domain socket instead of
       establishing a TCP connection to a host. The parameter should be a char
       * to a null-terminated string holding the path of the socket. The path
       is set to path prefixed by a NULL byte. This is the convention for
       abstract sockets, however it should be stressed that the path passed to
       this function should not contain a leading NULL byte.

       On non-supporting platforms, the abstract address is interpreted as an
       empty string and fails gracefully, generating a runtime error.

       This option shares the same semantics as CURLOPT_UNIX_SOCKET_PATH(3) in
       which documentation more details can be found. Internally, these two
       options share the same storage and therefore only one of them can be
       set per handle.


DEFAULT

       NULL


PROTOCOLS

       This functionality affects all supported protocols


EXAMPLE

       int main(void)
       {
         CURL *curl = curl_easy_init();
         if(curl) {
           curl_easy_setopt(curl, CURLOPT_ABSTRACT_UNIX_SOCKET, "/tmp/foo.sock");
           curl_easy_setopt(curl, CURLOPT_URL, "http://localhost/");

           /* Perform the request */
           curl_easy_perform(curl);
         }
       }


AVAILABILITY

       Added in curl 7.53.0


RETURN VALUE

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


SEE ALSO

       CURLOPT_UNIX_SOCKET_PATH(3), unix(7)

libcurl                           2024-08-05   CURLOPT_ABSTRACT_UNIX_SOCKET(3)

curl 8.9.1 - Generated Thu Aug 8 09:42:05 CDT 2024
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.