diff --git a/src/main.c b/src/main.c index 5e7cdfe77..85996e2de 100644 --- a/src/main.c +++ b/src/main.c @@ -345,7 +345,8 @@ static void help(void) " -C/--continue-at Specify absolute resume offset\n" " -d/--data HTTP POST data (H)\n" " --data-ascii HTTP POST ASCII data (H)\n" - " --data-binary HTTP POST binary data (H)\n" + " --data-binary HTTP POST binary data (H)"); + puts(" --disable-eprt Prevents curl from using EPRT or LPRT (F)\n" " --disable-epsv Prevents curl from using EPSV (F)\n" " -D/--dump-header Write the headers to this file\n" " --egd-file EGD socket path for random data (SSL)\n" @@ -445,6 +446,7 @@ struct Configurable { bool use_resume; bool resume_from_current; bool disable_epsv; + bool disable_eprt; int resume_from; char *postfields; long postfieldsize; @@ -1213,6 +1215,9 @@ static ParameterError getparameter(char *flag, /* f or -long-flag */ case 'e': /* --disable-epsv */ config->disable_epsv ^= TRUE; break; + case 'f': /* --disable-eprt */ + config->disable_eprt ^= TRUE; + break; #ifdef USE_ENVIRONMENT case 'f': config->writeenv ^= TRUE; @@ -2932,6 +2937,11 @@ operate(struct Configurable *config, int argc, char *argv[]) /* disable it */ curl_easy_setopt(curl, CURLOPT_FTP_USE_EPSV, FALSE); + /* new in libcurl 7.10.5 */ + if(config->disable_eprt) + /* disable it */ + curl_easy_setopt(curl, CURLOPT_FTP_USE_EPRT, FALSE); + /* new in curl 7.9.7 */ if(config->trace_dump) { curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);