From e3377e637a73edb44600083550f14ef64488cd10 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 20 Jul 2007 09:35:58 +0000 Subject: 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 --- CHANGES | 8 ++++++++ RELEASE-NOTES | 7 +++++-- lib/ftp.c | 2 +- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/CHANGES b/CHANGES index b787689ae..e5e7432cb 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 6facec926..c97d6eb8a 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 932c8c8dc..a8a1e6644 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:""); -- cgit v1.2.3