CURLOPT_IPRESOLVE.3 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. .\" **************************************************************************
  2. .\" * _ _ ____ _
  3. .\" * Project ___| | | | _ \| |
  4. .\" * / __| | | | |_) | |
  5. .\" * | (__| |_| | _ <| |___
  6. .\" * \___|\___/|_| \_\_____|
  7. .\" *
  8. .\" * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
  9. .\" *
  10. .\" * This software is licensed as described in the file COPYING, which
  11. .\" * you should have received as part of this distribution. The terms
  12. .\" * are also available at https://curl.se/docs/copyright.html.
  13. .\" *
  14. .\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
  15. .\" * copies of the Software, and permit persons to whom the Software is
  16. .\" * furnished to do so, under the terms of the COPYING file.
  17. .\" *
  18. .\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
  19. .\" * KIND, either express or implied.
  20. .\" *
  21. .\" * SPDX-License-Identifier: curl
  22. .\" *
  23. .\" **************************************************************************
  24. .\"
  25. .TH CURLOPT_IPRESOLVE 3 "19 Jun 2014" libcurl libcurl
  26. .SH NAME
  27. CURLOPT_IPRESOLVE \- IP protocol version to use
  28. .SH SYNOPSIS
  29. .nf
  30. #include <curl/curl.h>
  31. CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IPRESOLVE, long resolve);
  32. .fi
  33. .SH DESCRIPTION
  34. Allows an application to select what kind of IP addresses to use when
  35. establishing a connection or choosing one from the connection pool. This is
  36. interesting when using host names that resolve to more than one version of IP.
  37. If the URL provided for a transfer contains a numerical IP version as a host
  38. name, this option will not override or prohibit libcurl from using that IP
  39. version.
  40. Available values for this option are:
  41. .IP CURL_IPRESOLVE_WHATEVER
  42. Default, can use addresses of all IP versions that your system allows.
  43. .IP CURL_IPRESOLVE_V4
  44. Uses only IPv4 addresses.
  45. .IP CURL_IPRESOLVE_V6
  46. Uses only IPv6 addresses.
  47. .SH DEFAULT
  48. CURL_IPRESOLVE_WHATEVER
  49. .SH PROTOCOLS
  50. All
  51. .SH EXAMPLE
  52. .nf
  53. CURL *curl = curl_easy_init();
  54. if(curl) {
  55. curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/foo.bin");
  56. /* of all addresses example.com resolves to, only IPv6 ones are used */
  57. curl_easy_setopt(curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V6);
  58. ret = curl_easy_perform(curl);
  59. curl_easy_cleanup(curl);
  60. }
  61. .fi
  62. .SH AVAILABILITY
  63. Always
  64. .SH RETURN VALUE
  65. Returns CURLE_OK
  66. .SH "SEE ALSO"
  67. .BR CURLOPT_HTTP_VERSION "(3), " CURLOPT_SSLVERSION "(3), "