.\" ************************************************************************** .\" * _ _ ____ _ .\" * Project ___| | | | _ \| | .\" * / __| | | | |_) | | .\" * | (__| |_| | _ <| |___ .\" * \___|\___/|_| \_\_____| .\" * .\" * Copyright (C) Daniel Stenberg, , et al. .\" * .\" * This software is licensed as described in the file COPYING, which .\" * you should have received as part of this distribution. The terms .\" * are also available at https://curl.se/docs/copyright.html. .\" * .\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell .\" * copies of the Software, and permit persons to whom the Software is .\" * furnished to do so, under the terms of the COPYING file. .\" * .\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY .\" * KIND, either express or implied. .\" * .\" * SPDX-License-Identifier: curl .\" * .\" ************************************************************************** .\" .TH CURLOPT_FTP_USE_EPRT 3 "December 04, 2023" "ibcurl 8.5.0" libcurl .SH NAME CURLOPT_FTP_USE_EPRT \- use EPRT for FTP .SH SYNOPSIS .nf #include CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_USE_EPRT, long enabled); .fi .SH DESCRIPTION Pass a long. If the value is 1, it tells curl to use the EPRT command when doing active FTP downloads (which is enabled by \fICURLOPT_FTPPORT(3)\fP). Using EPRT means that libcurl first attempts to use EPRT before using PORT, but if you pass zero to this option, it avoids using EPRT, only plain PORT. The EPRT command is a slightly newer addition to the FTP protocol than PORT and is the preferred command to use since it enables IPv6 to be used. Very 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 as EPRT is necessary then. .SH DEFAULT .SH PROTOCOLS .SH EXAMPLE .nf int main(void) { CURL *curl = curl_easy_init(); if(curl) { CURLcode res; curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/file.txt"); /* contact us back, aka "active" FTP */ curl_easy_setopt(curl, CURLOPT_FTPPORT, "-"); /* FTP the way the neanderthals did it */ curl_easy_setopt(curl, CURLOPT_FTP_USE_EPRT, 0L); res = curl_easy_perform(curl); curl_easy_cleanup(curl); } } .fi .SH AVAILABILITY Added in 7.10.5 .SH RETURN VALUE Returns CURLE_OK .SH "SEE ALSO" .BR CURLOPT_FTP_USE_EPSV (3), .BR CURLOPT_FTPPORT (3)