CURLOPT_ABSTRACT_UNIX_SOCKET.3 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. .\" generated by cd2nroff 0.1 from CURLOPT_ABSTRACT_UNIX_SOCKET.md
  2. .TH CURLOPT_ABSTRACT_UNIX_SOCKET 3 "2025-01-17" libcurl
  3. .SH NAME
  4. CURLOPT_ABSTRACT_UNIX_SOCKET \- abstract Unix domain socket
  5. .SH SYNOPSIS
  6. .nf
  7. #include <curl/curl.h>
  8. CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ABSTRACT_UNIX_SOCKET,
  9. char *path);
  10. .fi
  11. .SH DESCRIPTION
  12. Enables the use of an abstract Unix domain socket instead of establishing a
  13. TCP connection to a host. The parameter should be a char * to a
  14. null\-terminated string holding the path of the socket. The path is set to
  15. \fIpath\fP prefixed by a NULL byte. This is the convention for abstract
  16. sockets, however it should be stressed that the path passed to this function
  17. should not contain a leading NULL byte.
  18. On non\-supporting platforms, the abstract address is interpreted as an empty
  19. string and fails gracefully, generating a runtime error.
  20. This option shares the same semantics as \fICURLOPT_UNIX_SOCKET_PATH(3)\fP in
  21. which documentation more details can be found. Internally, these two options
  22. share the same storage and therefore only one of them can be set per handle.
  23. .SH DEFAULT
  24. NULL
  25. .SH PROTOCOLS
  26. This functionality affects all supported protocols
  27. .SH EXAMPLE
  28. .nf
  29. int main(void)
  30. {
  31. CURL *curl = curl_easy_init();
  32. if(curl) {
  33. curl_easy_setopt(curl, CURLOPT_ABSTRACT_UNIX_SOCKET, "/tmp/foo.sock");
  34. curl_easy_setopt(curl, CURLOPT_URL, "http://localhost/");
  35. /* Perform the request */
  36. curl_easy_perform(curl);
  37. }
  38. }
  39. .fi
  40. .SH AVAILABILITY
  41. Added in curl 7.53.0
  42. .SH RETURN VALUE
  43. Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
  44. .SH SEE ALSO
  45. .BR CURLOPT_UNIX_SOCKET_PATH (3),
  46. .BR unix (7)