diff --git a/lib/ftp.c b/lib/ftp.c index 0cc583ba7a..ef97d08bbe 100644 --- a/lib/ftp.c +++ b/lib/ftp.c @@ -1788,7 +1788,7 @@ static CURLcode ftp_epsv_disable(struct connectdata *conn) { CURLcode result = CURLE_OK; - if(conn->bits.ipv6) { + if(conn->bits.ipv6 && !(conn->bits.tunnel_proxy || conn->bits.socksproxy)) { /* We can't disable EPSV when doing IPv6, so this is instead a fail */ failf(conn->data, "Failed EPSV attempt, exiting\n"); return CURLE_WEIRD_SERVER_REPLY;