From: Daniel Stenberg Date: Fri, 20 Jul 2007 09:35:58 +0000 (+0000) Subject: Ralf S. Engelschall filed bug report #1757328 X-Git-Tag: curl-7_17_0-preldapfix~73 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e3377e637a73edb44600083550f14ef64488cd10;p=thirdparty%2Fcurl.git 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 --- diff --git a/CHANGES b/CHANGES index b787689ae9..e5e7432cb3 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 6facec9268..c97d6eb8ad 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 932c8c8dc8..a8a1e6644d 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:"");