diff --git a/CHANGES b/CHANGES index b787689ae94bb8a5f099ab24222775858b246014..e5e7432cb3751c8c1c5c637e6f4b41a52caaca74 100644 --- a/CHANGES +++ b/CHANGES @@ -6,6 +6,14 @@ Changelog +Daniel S (20 July 2007) +- Ralf S. Engelschall filed bug report #1757328 + (http://curl.haxx.se/bug/view.cgi?id=1757328) and submitted a patch. It + turns out we broke login to FTP servers that don't require (nor understand) + PASS after the USER command. The breakage was done as part of the krb5 + commit so a krb-using person needs to verify that the current version now + works or if we need to fix it (in a different way of course). + Dan F (17 July 2007) - Fixed test cases 613 and 614 by improving the log postprocessor to handle a new directory listing format that newer libssh2's can provide. This diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 6facec9268dfb8ed3949ad24fb3d84b017672300..c97d6eb8add9c087ca30a426d720322785d40cf2 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -22,7 +22,9 @@ This release includes the following bugfixes: o CONNECT endless loop o krb5 support builds with Heimdal o added returned error string for connection refused case - o re-use of dead control connections + o re-use of dead FTP control connections + o login to FTP servers that don't require (nor understand) PASS after the + USER command. This release includes the following known bugs: @@ -40,6 +42,7 @@ This release would not have looked like this without help, code, reports and advice from friends like these: Dan Fandrich, Song Ma, Daniel Black, Giancarlo Formicuccia, Shmulik Regev, - Daniel Cater, Colin Hogben, Jofell Gallardo + Daniel Cater, Colin Hogben, Jofell Gallardo, Daniel Johnson, + Ralf S. Engelschall Thanks! (and sorry if I forgot to mention someone) diff --git a/lib/ftp.c b/lib/ftp.c index 932c8c8dc82327c40750c84cc53ed52e12982492..a8a1e6644df7a1f51d371813a159851f9a7d4136 100644 --- a/lib/ftp.c +++ b/lib/ftp.c @@ -2372,7 +2372,7 @@ static CURLcode ftp_state_user_resp(struct connectdata *conn, (void)instate; /* no use for this yet */ /* some need password anyway, and others just return 2xx ignored */ - if((ftpcode == 331 || ftpcode/100 == 2) && (ftpc->state == FTP_USER)) { + if((ftpcode == 331) && (ftpc->state == FTP_USER)) { /* 331 Password required for ... (the server requires to send the user's password too) */ NBFTPSENDF(conn, "PASS %s", ftp->passwd?ftp->passwd:"");