| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- .\" generated by cd2nroff 0.1 from CURLOPT_FTP_USE_EPSV.md
- .TH CURLOPT_FTP_USE_EPSV 3 "2025-01-17" libcurl
- .SH NAME
- CURLOPT_FTP_USE_EPSV \- use EPSV for FTP
- .SH SYNOPSIS
- .nf
- #include <curl/curl.h>
- CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_USE_EPSV, long epsv);
- .fi
- .SH DESCRIPTION
- Pass \fIepsv\fP as a long. If the value is 1, it tells curl to use the EPSV
- command when doing passive FTP downloads (which it does by default). Using
- EPSV means that libcurl first attempts to use the EPSV command before using
- PASV. If you pass zero to this option, it does not use EPSV, only plain PASV.
- The EPSV command is a slightly newer addition to the FTP protocol than PASV
- and is the preferred command to use since it enables IPv6 to be used. Old FTP
- servers might not support it, which is why libcurl has a fallback mechanism.
- Sometimes that fallback is not enough and then this option might come handy.
- If the server is an IPv6 host, this option has no effect.
- .SH DEFAULT
- 1
- .SH PROTOCOLS
- This functionality affects ftp only
- .SH EXAMPLE
- .nf
- int main(void)
- {
- CURL *curl = curl_easy_init();
- if(curl) {
- CURLcode res;
- curl_easy_setopt(curl, CURLOPT_URL,
- "ftp://example.com/old-server/file.txt");
- /* let's shut off this modern feature */
- curl_easy_setopt(curl, CURLOPT_FTP_USE_EPSV, 0L);
- res = curl_easy_perform(curl);
- curl_easy_cleanup(curl);
- }
- }
- .fi
- .SH AVAILABILITY
- Added in curl 7.9.2
- .SH RETURN VALUE
- Returns CURLE_OK if FTP is supported, and CURLE_UNKNOWN_OPTION if not.
- .SH SEE ALSO
- .BR CURLOPT_FTPPORT (3),
- .BR CURLOPT_FTP_USE_EPRT (3)
|