From 5f12c8d726177015c5b6313426e449f343237f29 Mon Sep 17 00:00:00 2001 From: winesync Date: Tue, 8 Dec 2020 18:00:24 +0100 Subject: [PATCH] [WINESYNC] wininet: Build with msvcrt. Signed-off-by: Alexandre Julliard wine commit id 3c31cc5836026b45a40818ec874bbbcc4d6ad982 by Alexandre Julliard --- dll/win32/wininet/CMakeLists.txt | 16 +- dll/win32/wininet/cookie.c | 47 +++-- dll/win32/wininet/dialogs.c | 27 +-- dll/win32/wininet/ftp.c | 66 +++--- dll/win32/wininet/gopher.c | 11 +- dll/win32/wininet/http.c | 334 +++++++++++++++--------------- dll/win32/wininet/internet.c | 96 ++++----- dll/win32/wininet/internet.h | 5 +- dll/win32/wininet/netconnection.c | 6 +- dll/win32/wininet/precomp.h | 52 ++--- dll/win32/wininet/urlcache.c | 48 +++-- dll/win32/wininet/utility.c | 14 +- sdk/tools/winesync/wininet.cfg | 2 +- 13 files changed, 361 insertions(+), 363 deletions(-) diff --git a/dll/win32/wininet/CMakeLists.txt b/dll/win32/wininet/CMakeLists.txt index 574db0a0f0e..eb4b9d12992 100644 --- a/dll/win32/wininet/CMakeLists.txt +++ b/dll/win32/wininet/CMakeLists.txt @@ -11,8 +11,6 @@ add_definitions( -D_WINE -Dclose=_close) -include_directories(BEFORE ${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine) - spec2def(wininet.dll wininet.spec ADD_IMPORTLIB) list(APPEND SOURCE @@ -21,23 +19,29 @@ list(APPEND SOURCE ftp.c gopher.c http.c - inflate.c internet.c - netconnection.c - urlcache.c utility.c) list(APPEND PCH_SKIP_SOURCE + # Sometimes wine uses nameless structs & unions. Sometimes not... */ + netconnection.c + urlcache.c ${CMAKE_CURRENT_BINARY_DIR}/wininet_stubs.c) +add_library(wininet_inflate OBJECT inflate.c) +target_include_directories(wininet_inflate BEFORE PRIVATE ${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine) +add_dependencies(wininet_inflate psdk) + add_library(wininet MODULE ${SOURCE} ${PCH_SKIP_SOURCE} + $ rsrc.rc ${CMAKE_CURRENT_BINARY_DIR}/wininet.def) set_module_type(wininet win32dll) -target_link_libraries(wininet wine ${PSEH_LIB}) +target_link_libraries(wininet wine ${PSEH_LIB} oldnames) + add_delay_importlibs(wininet secur32 crypt32 cryptui iphlpapi dhcpcsvc) add_importlibs(wininet mpr shlwapi shell32 user32 advapi32 ws2_32 normaliz kernel32_vista msvcrt kernel32 ntdll) add_pch(wininet precomp.h "${PCH_SKIP_SOURCE}") diff --git a/dll/win32/wininet/cookie.c b/dll/win32/wininet/cookie.c index 2af752110c0..98a5e0e2a45 100644 --- a/dll/win32/wininet/cookie.c +++ b/dll/win32/wininet/cookie.c @@ -1,3 +1,6 @@ +#ifdef __REACTOS__ +#include "precomp.h" +#else /* * Wininet - cookie handling stuff * @@ -27,6 +30,7 @@ #include #include #include +#include #include "windef.h" #include "winbase.h" @@ -36,6 +40,7 @@ #include "wine/debug.h" #include "internet.h" +#endif /* defined(__REACTOS__) */ #define RESPONSE_TIMEOUT 30 /* FROM internet.c */ @@ -173,7 +178,7 @@ static WCHAR *create_cookie_url(substr_t domain, substr_t path, substr_t *ret_pa p += domain.len; for(i=0; i < path.len; i++) - p[i] = tolowerW(path.str[i]); + p[i] = towlower(path.str[i]); p[path.len] = 0; ret_path->str = p; @@ -194,7 +199,7 @@ static cookie_container_t *get_cookie_container(substr_t domain, substr_t path, if(cookie_container->path.len < path.len) break; - if(path.len == cookie_container->path.len && !strncmpiW(cookie_container->path.str, path.str, path.len)) + if(path.len == cookie_container->path.len && !wcsnicmp(cookie_container->path.str, path.str, path.len)) return cookie_container; } @@ -265,7 +270,7 @@ static cookie_t *find_cookie(cookie_container_t *container, substr_t name) cookie_t *iter; LIST_FOR_EACH_ENTRY(iter, &container->cookie_list, cookie_t, entry) { - if(strlenW(iter->name) == name.len && !strncmpiW(iter->name, name.str, name.len)) + if(lstrlenW(iter->name) == name.len && !wcsnicmp(iter->name, name.str, name.len)) return iter; } @@ -294,7 +299,7 @@ static void replace_cookie(cookie_container_t *container, cookie_t *new_cookie) static BOOL cookie_match_path(cookie_container_t *container, substr_t path) { - return path.len >= container->path.len && !strncmpiW(container->path.str, path.str, container->path.len); + return path.len >= container->path.len && !wcsnicmp(container->path.str, path.str, container->path.len); } static BOOL load_persistent_cookie(substr_t domain, substr_t path) @@ -603,9 +608,9 @@ static DWORD get_cookie(substr_t host, substr_t path, DWORD flags, cookie_set_t res->string_len += 2; /* '; ' */ res->cookies[res->cnt++] = cookie_iter; - res->string_len += strlenW(cookie_iter->name); + res->string_len += lstrlenW(cookie_iter->name); if(*cookie_iter->data) - res->string_len += 1 /* = */ + strlenW(cookie_iter->data); + res->string_len += 1 /* = */ + lstrlenW(cookie_iter->data); } } } @@ -624,13 +629,13 @@ static void cookie_set_to_string(const cookie_set_t *cookie_set, WCHAR *str) *ptr++ = ' '; } - len = strlenW(cookie_set->cookies[i]->name); + len = lstrlenW(cookie_set->cookies[i]->name); memcpy(ptr, cookie_set->cookies[i]->name, len*sizeof(WCHAR)); ptr += len; if(*cookie_set->cookies[i]->data) { *ptr++ = '='; - len = strlenW(cookie_set->cookies[i]->data); + len = lstrlenW(cookie_set->cookies[i]->data); memcpy(ptr, cookie_set->cookies[i]->data, len*sizeof(WCHAR)); ptr += len; } @@ -872,11 +877,11 @@ static BOOL is_domain_legal_for_cookie(substr_t domain, substr_t full_domain) return FALSE; } - if(domain.len > full_domain.len || !memchrW(domain.str, '.', domain.len) || !memchrW(full_domain.str, '.', full_domain.len)) + if(domain.len > full_domain.len || !wmemchr(domain.str, '.', domain.len) || !wmemchr(full_domain.str, '.', full_domain.len)) return FALSE; ptr = full_domain.str + full_domain.len - domain.len; - if (strncmpiW(domain.str, ptr, domain.len) || (full_domain.len > domain.len && ptr[-1] != '.')) { + if (wcsnicmp(domain.str, ptr, domain.len) || (full_domain.len > domain.len && ptr[-1] != '.')) { SetLastError(ERROR_INVALID_PARAMETER); return FALSE; } @@ -924,7 +929,7 @@ DWORD set_cookie(substr_t domain, substr_t path, substr_t name, substr_t data, D /* lots of information can be parsed out of the cookie value */ - if(!(end_ptr = memchrW(data.str, ';', data.len))) + if(!(end_ptr = wmemchr(data.str, ';', data.len))) end_ptr = data.str + data.len; value = substr(data.str, end_ptr-data.str); data.str += value.len; @@ -949,10 +954,10 @@ DWORD set_cookie(substr_t domain, substr_t path, substr_t name, substr_t data, D if(!data.len) break; - if(!(end_ptr = memchrW(data.str, ';', data.len))) + if(!(end_ptr = wmemchr(data.str, ';', data.len))) end_ptr = data.str + data.len; - if(data.len >= (len = ARRAY_SIZE(szDomain)) && !strncmpiW(data.str, szDomain, len)) { + if(data.len >= (len = ARRAY_SIZE(szDomain)) && !wcsnicmp(data.str, szDomain, len)) { substr_skip(&data, len); if(data.len && *data.str == '.') @@ -963,11 +968,11 @@ DWORD set_cookie(substr_t domain, substr_t path, substr_t name, substr_t data, D domain = substr(data.str, end_ptr-data.str); TRACE("Parsing new domain %s\n", debugstr_wn(domain.str, domain.len)); - }else if(data.len >= (len = ARRAY_SIZE(szPath)) && !strncmpiW(data.str, szPath, len)) { + }else if(data.len >= (len = ARRAY_SIZE(szPath)) && !wcsnicmp(data.str, szPath, len)) { substr_skip(&data, len); path = substr(data.str, end_ptr - data.str); TRACE("Parsing new path %s\n", debugstr_wn(path.str, path.len)); - }else if(data.len >= (len = ARRAY_SIZE(szExpires)) && !strncmpiW(data.str, szExpires, len)) { + }else if(data.len >= (len = ARRAY_SIZE(szExpires)) && !wcsnicmp(data.str, szExpires, len)) { SYSTEMTIME st; WCHAR buf[128]; @@ -986,10 +991,10 @@ DWORD set_cookie(substr_t domain, substr_t path, substr_t name, substr_t data, D } } } - }else if(data.len >= (len = ARRAY_SIZE(szSecure)) && !strncmpiW(data.str, szSecure, len)) { + }else if(data.len >= (len = ARRAY_SIZE(szSecure)) && !wcsnicmp(data.str, szSecure, len)) { substr_skip(&data, len); FIXME("secure not handled\n"); - }else if(data.len >= (len = ARRAY_SIZE(szHttpOnly)) && !strncmpiW(data.str, szHttpOnly, len)) { + }else if(data.len >= (len = ARRAY_SIZE(szHttpOnly)) && !wcsnicmp(data.str, szHttpOnly, len)) { substr_skip(&data, len); if(!(flags & INTERNET_COOKIE_HTTPONLY)) { @@ -999,11 +1004,11 @@ DWORD set_cookie(substr_t domain, substr_t path, substr_t name, substr_t data, D } cookie_flags |= INTERNET_COOKIE_HTTPONLY; - }else if(data.len >= (len = ARRAY_SIZE(szVersion)) && !strncmpiW(data.str, szVersion, len)) { + }else if(data.len >= (len = ARRAY_SIZE(szVersion)) && !wcsnicmp(data.str, szVersion, len)) { substr_skip(&data, len); FIXME("version not handled (%s)\n",debugstr_wn(data.str, data.len)); - }else if(data.len >= (len = ARRAY_SIZE(max_ageW)) && !strncmpiW(data.str, max_ageW, len)) { + }else if(data.len >= (len = ARRAY_SIZE(max_ageW)) && !wcsnicmp(data.str, max_ageW, len)) { /* Native doesn't support Max-Age attribute. */ WARN("Max-Age ignored\n"); }else if(data.len) { @@ -1098,8 +1103,8 @@ DWORD WINAPI InternetSetCookieExW(LPCWSTR lpszUrl, LPCWSTR lpszCookieName, /* some apps (or is it us??) try to add a cookie with no cookie name, but * the cookie data in the form of name[=data]. */ - if (!(ptr = strchrW(lpCookieData, '='))) - ptr = lpCookieData + strlenW(lpCookieData); + if (!(ptr = wcschr(lpCookieData, '='))) + ptr = lpCookieData + lstrlenW(lpCookieData); name = substr(lpCookieData, ptr - lpCookieData); data = substrz(*ptr == '=' ? ptr+1 : ptr); diff --git a/dll/win32/wininet/dialogs.c b/dll/win32/wininet/dialogs.c index 5e26c8b7b4d..f381a66041b 100644 --- a/dll/win32/wininet/dialogs.c +++ b/dll/win32/wininet/dialogs.c @@ -1,3 +1,6 @@ +#ifdef __REACTOS__ +#include "precomp.h" +#else /* * Wininet * @@ -35,10 +38,8 @@ #include "cryptuiapi.h" #include "internet.h" - -#include "wine/unicode.h" - #include "resource.h" +#endif /* defined(__REACTOS__) */ #define MAX_STRING_LEN 1024 @@ -78,8 +79,8 @@ static BOOL WININET_GetAuthRealm( HINTERNET hRequest, LPWSTR szBuf, DWORD sz, BO * FIXME: maybe we should check that we're * dealing with 'Basic' Authentication */ - p = strchrW( szBuf, ' ' ); - if( !p || strncmpW( p+1, szRealm, strlenW(szRealm) ) ) + p = wcschr( szBuf, ' ' ); + if( !p || wcsncmp( p+1, szRealm, lstrlenW(szRealm) ) ) { ERR("response wrong? (%s)\n", debugstr_w(szBuf)); return FALSE; @@ -90,11 +91,11 @@ static BOOL WININET_GetAuthRealm( HINTERNET hRequest, LPWSTR szBuf, DWORD sz, BO if( *p == '"' ) { p++; - q = strrchrW( p, '"' ); + q = wcsrchr( p, '"' ); if( q ) *q = 0; } - strcpyW( szBuf, p ); + lstrcpyW( szBuf, p ); return TRUE; } @@ -106,7 +107,7 @@ extern DWORD WINAPI WNetGetCachedPassword(LPSTR,WORD,LPSTR,LPWORD,BYTE); /*********************************************************************** * WININET_GetSetPassword */ -static BOOL WININET_GetSetPassword( HWND hdlg, LPCWSTR szServer, +static BOOL WININET_GetSetPassword( HWND hdlg, LPCWSTR szServer, LPCWSTR szRealm, BOOL bSet ) { WCHAR szResource[0x80], szUserPass[0x40]; @@ -137,11 +138,11 @@ static BOOL WININET_GetSetPassword( HWND hdlg, LPCWSTR szServer, szUserPass[0] = 0; GetWindowTextW( hUserItem, szUserPass, ARRAY_SIZE( szUserPass ) - 1 ); lstrcatW(szUserPass, szColon); - u_len = strlenW( szUserPass ); + u_len = lstrlenW( szUserPass ); GetWindowTextW( hPassItem, szUserPass+u_len, ARRAY_SIZE( szUserPass ) - u_len ); - r_len = (strlenW( szResource ) + 1)*sizeof(WCHAR); - u_len = (strlenW( szUserPass ) + 1)*sizeof(WCHAR); + r_len = (lstrlenW( szResource ) + 1)*sizeof(WCHAR); + u_len = (lstrlenW( szUserPass ) + 1)*sizeof(WCHAR); r = WNetCachePassword( (CHAR*)szResource, r_len, (CHAR*)szUserPass, u_len, dwMagic, 0 ); @@ -149,13 +150,13 @@ static BOOL WININET_GetSetPassword( HWND hdlg, LPCWSTR szServer, } sz = sizeof szUserPass; - r_len = (strlenW( szResource ) + 1)*sizeof(WCHAR); + r_len = (lstrlenW( szResource ) + 1)*sizeof(WCHAR); r = WNetGetCachedPassword( (CHAR*)szResource, r_len, (CHAR*)szUserPass, &sz, dwMagic ); if( r != WN_SUCCESS ) return FALSE; - p = strchrW( szUserPass, ':' ); + p = wcschr( szUserPass, ':' ); if( p ) { *p = 0; diff --git a/dll/win32/wininet/ftp.c b/dll/win32/wininet/ftp.c index f2a88b741ea..9fa6f818197 100644 --- a/dll/win32/wininet/ftp.c +++ b/dll/win32/wininet/ftp.c @@ -1,3 +1,6 @@ +#ifdef __REACTOS__ +#include "precomp.h" +#else /* * WININET - Ftp implementation * @@ -49,6 +52,7 @@ #include "wine/debug.h" #include "internet.h" +#endif /* defined(__REACTOS__) */ WINE_DEFAULT_DEBUG_CHANNEL(wininet); @@ -224,7 +228,7 @@ BOOL WINAPI FtpPutFileA(HINTERNET hConnect, LPCSTR lpszLocalFile, LPWSTR lpwzLocalFile; LPWSTR lpwzNewRemoteFile; BOOL ret; - + lpwzLocalFile = heap_strdupAtoW(lpszLocalFile); lpwzNewRemoteFile = heap_strdupAtoW(lpszNewRemoteFile); ret = FtpPutFileW(hConnect, lpwzLocalFile, lpwzNewRemoteFile, @@ -417,7 +421,7 @@ BOOL WINAPI FtpSetCurrentDirectoryA(HINTERNET hConnect, LPCSTR lpszDirectory) { LPWSTR lpwzDirectory; BOOL ret; - + lpwzDirectory = heap_strdupAtoW(lpszDirectory); ret = FtpSetCurrentDirectoryW(hConnect, lpwzDirectory); heap_free(lpwzDirectory); @@ -564,7 +568,7 @@ BOOL WINAPI FtpCreateDirectoryA(HINTERNET hConnect, LPCSTR lpszDirectory) { LPWSTR lpwzDirectory; BOOL ret; - + lpwzDirectory = heap_strdupAtoW(lpszDirectory); ret = FtpCreateDirectoryW(hConnect, lpwzDirectory); heap_free(lpwzDirectory); @@ -710,12 +714,12 @@ HINTERNET WINAPI FtpFindFirstFileA(HINTERNET hConnect, WIN32_FIND_DATAW wfd; LPWIN32_FIND_DATAW lpFindFileDataW; HINTERNET ret; - + lpwzSearchFile = heap_strdupAtoW(lpszSearchFile); lpFindFileDataW = lpFindFileData?&wfd:NULL; ret = FtpFindFirstFileW(hConnect, lpwzSearchFile, lpFindFileDataW, dwFlags, dwContext); heap_free(lpwzSearchFile); - + if (ret && lpFindFileData) WININET_find_data_WtoA(lpFindFileDataW, lpFindFileData); @@ -834,8 +838,8 @@ static HINTERNET FTP_FtpFindFirstFileW(ftp_session_t *lpwfs, if (lpszSearchFile) { LPCWSTR name = lpszSearchFile, p; - if ((p = strrchrW( name, '\\' ))) name = p + 1; - if ((p = strrchrW( name, '/' ))) name = p + 1; + if ((p = wcsrchr( name, '\\' ))) name = p + 1; + if ((p = wcsrchr( name, '/' ))) name = p + 1; if (name != lpszSearchFile) { lpszSearchPath = heap_strndupW(lpszSearchFile, name - lpszSearchFile); @@ -1351,7 +1355,7 @@ static HINTERNET FTP_FtpOpenFileW(ftp_session_t *lpwfs, WININET_AddRef( &lpwfs->hdr ); lpwh->lpFtpSession = lpwfs; list_add_head( &lpwfs->hdr.children, &lpwh->hdr.entry ); - + /* Indicate that a download is currently in progress */ lpwfs->download_in_progress = lpwh; } @@ -1560,7 +1564,7 @@ BOOL WINAPI FtpGetFileA(HINTERNET hInternet, LPCSTR lpszRemoteFile, LPCSTR lpszN LPWSTR lpwzRemoteFile; LPWSTR lpwzNewFile; BOOL ret; - + lpwzRemoteFile = heap_strdupAtoW(lpszRemoteFile); lpwzNewFile = heap_strdupAtoW(lpszNewFile); ret = FtpGetFileW(hInternet, lpwzRemoteFile, lpwzNewFile, fFailIfExists, @@ -1642,7 +1646,7 @@ BOOL WINAPI FtpGetFileW(HINTERNET hInternet, LPCWSTR lpszRemoteFile, LPCWSTR lps INTERNET_SetLastError(ERROR_FTP_TRANSFER_IN_PROGRESS); goto lend; } - + hIC = lpwfs->lpAppInfo; if (hIC->hdr.dwFlags & INTERNET_FLAG_ASYNC) { @@ -1775,7 +1779,7 @@ BOOL WINAPI FtpDeleteFileA(HINTERNET hFtpSession, LPCSTR lpszFileName) { LPWSTR lpwzFileName; BOOL ret; - + lpwzFileName = heap_strdupAtoW(lpszFileName); ret = FtpDeleteFileW(hFtpSession, lpwzFileName); heap_free(lpwzFileName); @@ -1922,7 +1926,7 @@ BOOL WINAPI FtpRemoveDirectoryA(HINTERNET hFtpSession, LPCSTR lpszDirectory) { LPWSTR lpwzDirectory; BOOL ret; - + lpwzDirectory = heap_strdupAtoW(lpszDirectory); ret = FtpRemoveDirectoryW(hFtpSession, lpwzDirectory); heap_free(lpwzDirectory); @@ -2066,7 +2070,7 @@ BOOL WINAPI FtpRenameFileA(HINTERNET hFtpSession, LPCSTR lpszSrc, LPCSTR lpszDes LPWSTR lpwzSrc; LPWSTR lpwzDest; BOOL ret; - + lpwzSrc = heap_strdupAtoW(lpszSrc); lpwzDest = heap_strdupAtoW(lpszDest); ret = FtpRenameFileW(hFtpSession, lpwzSrc, lpwzDest); @@ -2453,7 +2457,7 @@ HINTERNET FTP_Connect(appinfo_t *hIC, LPCWSTR lpszServerName, INTERNET_SetLastError(ERROR_INVALID_PARAMETER); return NULL; } - + lpwfs = alloc_object(&hIC->hdr, &FTPSESSIONVtbl, sizeof(ftp_session_t)); if (NULL == lpwfs) { @@ -2480,7 +2484,7 @@ HINTERNET FTP_Connect(appinfo_t *hIC, LPCWSTR lpszServerName, list_add_head( &hIC->hdr.children, &lpwfs->hdr.entry ); if(hIC->proxy && hIC->accessType == INTERNET_OPEN_TYPE_PROXY) { - if(strchrW(hIC->proxy, ' ')) + if(wcschr(hIC->proxy, ' ')) FIXME("Several proxies not implemented.\n"); if(hIC->proxyBypass) FIXME("Proxy bypass is ignored.\n"); @@ -2497,7 +2501,7 @@ HINTERNET FTP_Connect(appinfo_t *hIC, LPCWSTR lpszServerName, /* Nothing in the registry, get the username and use that as the password */ if (!GetUserNameW(szPassword, &len)) { /* Should never get here, but use an empty password as failsafe */ - strcpyW(szPassword, szEmpty); + lstrcpyW(szPassword, szEmpty); } } RegCloseKey(key); @@ -2510,7 +2514,7 @@ HINTERNET FTP_Connect(appinfo_t *hIC, LPCWSTR lpszServerName, lpwfs->lpszPassword = heap_strdupW(lpszPassword ? lpszPassword : szEmpty); } lpwfs->servername = heap_strdupW(lpszServerName); - + /* Don't send a handle created callback if this handle was created with InternetOpenUrl */ if (!(lpwfs->hdr.dwInternalFlags & INET_OPENURL)) { @@ -2523,9 +2527,9 @@ HINTERNET FTP_Connect(appinfo_t *hIC, LPCWSTR lpszServerName, INTERNET_STATUS_HANDLE_CREATED, &iar, sizeof(INTERNET_ASYNC_RESULT)); } - + INTERNET_SendCallback(&hIC->hdr, dwContext, INTERNET_STATUS_RESOLVING_NAME, - (LPWSTR) lpszServerName, (strlenW(lpszServerName)+1) * sizeof(WCHAR)); + (LPWSTR) lpszServerName, (lstrlenW(lpszServerName)+1) * sizeof(WCHAR)); sock_namelen = sizeof(socketAddr); if (!GetAddress(lpszServerName, lpwfs->serverport, (struct sockaddr *)&socketAddr, &sock_namelen, szaddr)) @@ -3067,7 +3071,7 @@ static BOOL FTP_GetFileSize(ftp_session_t *lpwfs, LPCWSTR lpszRemoteFile, DWORD for (i = 0; (lpszResponseBuffer[i] != ' ') && (lpszResponseBuffer[i] != '\0'); i++) ; if (lpszResponseBuffer[i] == '\0') return FALSE; *dwSize = atol(&(lpszResponseBuffer[i + 1])); - + bSuccess = TRUE; } else { FTP_SetResponseError(nResCode); @@ -3098,7 +3102,7 @@ static BOOL FTP_SendPort(ftp_session_t *lpwfs) BOOL bSuccess = FALSE; TRACE("\n"); - sprintfW(szIPAddress, szIPFormat, + swprintf(szIPAddress, ARRAY_SIZE(szIPAddress), szIPFormat, lpwfs->lstnSocketAddress.sin_addr.S_un.S_addr&0x000000FF, (lpwfs->lstnSocketAddress.sin_addr.S_un.S_addr&0x0000FF00)>>8, (lpwfs->lstnSocketAddress.sin_addr.S_un.S_addr&0x00FF0000)>>16, @@ -3603,7 +3607,7 @@ static BOOL FTP_ConvertFileProp(LPFILEPROPERTIESW lpafp, LPWIN32_FIND_DATAW lpFi SystemTimeToFileTime( &lpafp->tmLastModified, &lpFindFileData->ftLastAccessTime ); lpFindFileData->ftLastWriteTime = lpFindFileData->ftLastAccessTime; lpFindFileData->ftCreationTime = lpFindFileData->ftLastAccessTime; - + /* Not all fields are filled in */ lpFindFileData->nFileSizeHigh = 0; /* We do not handle files bigger than 0xFFFFFFFF bytes yet :-) */ lpFindFileData->nFileSizeLow = lpafp->nSize; @@ -3638,12 +3642,12 @@ static BOOL FTP_ParseNextFile(INT nSocket, LPCWSTR lpszSearchFile, LPFILEPROPERT char *pszTmp; BOOL found = FALSE; int i; - + lpfp->lpszName = NULL; do { if(!(pszLine = FTP_GetNextLine(nSocket, &nBufLen))) return FALSE; - + pszToken = strtok(pszLine, szSpace); /* ls format *