Module: wine Branch: master Commit: 9a6ba225e264e59125d83d6359af60aaa8322c3d URL: http://source.winehq.org/git/wine.git/?a=commit;h=9a6ba225e264e59125d83d6359...
Author: Hans Leidekker hans@it.vu.nl Date: Thu Jun 7 16:32:24 2007 +0200
wininet: More lenient parsing of the passive mode server response.
---
dlls/wininet/ftp.c | 13 +++---------- 1 files changed, 3 insertions(+), 10 deletions(-)
diff --git a/dlls/wininet/ftp.c b/dlls/wininet/ftp.c index 604f383..d9291c2 100644 --- a/dlls/wininet/ftp.c +++ b/dlls/wininet/ftp.c @@ -2545,18 +2545,11 @@ static BOOL FTP_DoPassive(LPWININETFTPSESSIONW lpwfs) struct sockaddr_in dataSocketAddress;
p = lpszResponseBuffer+4; /* skip status code */ + while (*p != '\0' && (*p < '0' || *p > '9')) p++;
- /* do a very strict check; we can improve that later. */ - - if (strncmp(p, "Entering Passive Mode", 21)) - { - ERR("unknown response '%.*s', aborting\n", 21, p); - goto lend; - } - p += 21; /* skip string */ - if ((*p++ != ' ') || (*p++ != '(')) + if (*p == '\0') { - ERR("unknown response format, aborting\n"); + ERR("no address found in response, aborting\n"); goto lend; }