From ab85ac5eda31945d5db17b3d235121d557064bf5 Mon Sep 17 00:00:00 2001 From: Patrick Monnerat Date: Wed, 11 Feb 2015 19:51:57 +0100 Subject: [PATCH] ftp: accept all 2xx responses to the PORT command --- lib/ftp.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/ftp.c b/lib/ftp.c index 68610f9586..5aa617edd0 100644 --- a/lib/ftp.c +++ b/lib/ftp.c @@ -2102,7 +2102,9 @@ static CURLcode ftp_state_port_resp(struct connectdata *conn, ftpport fcmd = (ftpport)ftpc->count1; CURLcode result = CURLE_OK; - if(ftpcode != 200) { + /* The FTP spec tells a positive response should have code 200. + Be more permissive here to tolerate deviant servers. */ + if(ftpcode / 100 != 2) { /* the command failed */ if(EPRT == fcmd) {