Commit Graph

808 Commits

Author SHA1 Message Date
Hans Leidekker
612f3c1414 wininet: Use INTERNET_MAX_URL_LENGTH to size buffers we intend to store a URL in. 2008-04-01 11:27:03 +02:00
Hans Leidekker
8210e1b454 wininet: Parse the redirect URL in HTTP_HandleRedirect in case of a proxy connection. 2008-04-01 11:26:52 +02:00
Hans Leidekker
729631d907 wininet: Remove dead code from HTTP_DealWithProxy and improve its debug trace. 2008-04-01 11:26:42 +02:00
Hans Leidekker
bbf5dae444 wininet: Use a direct connection for tests that connect to localhost. 2008-03-31 13:01:11 +02:00
Hans Leidekker
ed1cb1f099 wininet: Set ProxyEnable registry value if it isn't already set. 2008-03-31 13:01:01 +02:00
Hans Leidekker
e4c59c263d wininet: Don't set the host port from the server port.
This works for direct connections but in case of proxy connections server
port and host port usually are different.
2008-03-31 13:00:42 +02:00
Hans Leidekker
0ffe9f5207 wininet: Fix redirects through a proxy.
HTTP_DealWithProxy replaces the request path with a full URL to make sure
a correct request is built for for the proxy. This will work just once in
case of a redirect because the path will be appended to the redirect url,
resulting in an incorrect url.
2008-03-31 13:00:32 +02:00
Hans Leidekker
454fae8432 wininet: Don't close proxy connections when keep-alive is specified. 2008-03-31 13:00:18 +02:00
Hans Leidekker
c7f93666c3 wininet: Support http_proxy environment variable.
Based on a patch by Mike Hearn.
2008-03-31 13:00:10 +02:00
Vitaliy Margolen
66417eea64 Update Russian translations. 2008-03-31 12:15:14 +02:00
Dan Hipschman
0929593b6c wininet: InternetReadFileExA should check INTERNET_FLAG_ASYNC. 2008-03-28 09:50:42 +01:00
Dan Hipschman
aaecdf79bd wininet: HttpSendRequestExA is not a stub. 2008-03-28 09:50:38 +01:00
Hans Leidekker
058761fa34 wininet: Support chunked reads in InternetReadFileEx too. 2008-03-26 23:48:13 +01:00
Hans Leidekker
0936601f5b wininet: Implement chunked reads. 2008-03-26 13:46:12 +01:00
Hans Leidekker
26b38dc503 wininet: Avoid a crash with traces on. 2008-03-25 11:33:41 +01:00
Hans Leidekker
af4c428a9a wininet: Correct spec file entry for InternetCanonicalizeUrl{A, W}. 2008-03-25 11:33:36 +01:00
Hans Leidekker
3a57711bb8 wininet: Don't strip Accept-Encoding headers from version 1.1 requests. 2008-03-25 11:33:32 +01:00
Kai Blin
63504e9e80 janitorial: Use poll() instead of select(). 2008-03-24 13:41:57 +01:00
Andrew Talbot
7b380e0aeb wininet: Assign to structs instead of using memcpy. 2008-03-24 11:33:16 +01:00
Rob Shearman
99f651bd37 wininet: The lpszLocalFileName parameter to CommitUrlCacheEntryA is optional, so check before converting it from Unicode to ANSI. 2008-03-17 15:20:10 +01:00
Jacek Caban
e8be5eaba7 wininet: Don't use query and hash part of URL to generate cache file name. 2008-03-17 11:42:39 +01:00
Marcus Meissner
ed966469a4 wininet: Split out NULL ptr and function ptr check. 2008-03-15 11:29:16 +01:00
Rob Shearman
db5745c001 wininet: If we receive an error from InitializeSecurityContext in HTTP_DoAuthorization then set pAuthInfo->finished so that we don't carry on using the security context. 2008-03-15 10:58:38 +01:00
Rob Shearman
e74514b138 wininet: Assume that if we're connected to an HTTP/1.1 server then connections can be kept alive by default.
So don't close the connection in this case in HTTP_FinishedReading.
2008-03-15 10:58:38 +01:00
Joris Huizer
4fca67e651 wininet: Fixed typos in two out-of-memory checks. 2008-03-13 20:44:18 +01:00
Rob Shearman
bcfb47e85b wininet: Fix local variable shadowing in URLCacheContainer_OpenIndex. 2008-03-12 19:21:38 +01:00
Rob Shearman
716ecc42f9 wininet: Support the lpszFileExtension "reserved" parameter being passed into CommitUrlCacheEntryA.
Store it in the URL cache entry and allow it to be retrieved by 
RetrieveUrlCacheEntryFile and other functions.
2008-03-12 17:58:37 +01:00
Rob Shearman
fee165ae47 wininet: The URL in CommitUrlCacheEntryInternal shouldn't be restricted to MAX_PATH chars in length.
Dynamically allocate it and consolidate cleanup at the end of the function.
2008-03-12 17:58:31 +01:00
Rob Shearman
cdd135c2f3 wininet: Fix URLCache_LocalFileNameToPathA to return a full path, rather than just the container path.
This was caused by path_len including the nul-terminator and so the rest 
of the string was being added after the nul-terminator, which is 
incorrect. This is fixed by making path_len not include the nul-terminator.

Also fix a few other issues with the function, like not passing a 
correct length into the second call to WideCharToMultiByte, nRequired 
being calculated incorrectly and the string not always being nul-terminated.

Add a test for this function by testing the lpszLocalFileName field 
obtained from RetrieveUrlCacheEntryFileA.
2008-03-12 17:58:20 +01:00
Rob Shearman
c46279ced7 wininet: Make some pointers const in URL cache functions. 2008-03-12 17:58:10 +01:00
Rob Shearman
f1af593988 wininet: Use LIST_FOR_EACH_ENTRY in URLCacheContainers_FindContainerW instead of LIST_FOR_EACH and LIST_ENTRY. 2008-03-12 17:58:03 +01:00
Rob Shearman
4041c2015b wininet: Add tests for Find{First,Next}UrlCacheEntryA functions. 2008-03-12 17:57:56 +01:00
Rob Shearman
160bc04343 wininet: Move URL cache hash entry validation to a separate function. 2008-03-12 17:57:30 +01:00
Rob Shearman
7fde7aef78 wininet: Implement FindFirstUrlCacheEntry{A, W}, FindNextUrlCacheEntryA and FindCloseUrlCache. 2008-03-12 17:57:25 +01:00
Rob Shearman
99e7f7ab6e wininet: Add tests for some URL cache functions. 2008-03-12 17:55:41 +01:00
Rob Shearman
ebaa4d987d wininet: Only clear authentication header if the connection has authentication information. 2008-03-12 17:55:21 +01:00
Rob Shearman
b8ad4dee86 wininet: Fix proxy authentication by using the data in lpwhr->pProxyAuthInfo in HTTP_InsertAuthorization instead of lpwhr->pAuthInfo when inserting the Proxy-Authentication header. 2008-03-12 17:55:12 +01:00
Jacek Caban
7e63f95326 wininet: Move InternetQueryOption(INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT) to vtbl. 2008-03-12 12:00:00 +01:00
Jacek Caban
ce6a2289c6 wininet: Move InternetQueryOption(INTERNET_OPTION_DATAFILE_NAME). 2008-03-12 11:59:54 +01:00
Jacek Caban
0e010d83a1 wininet: Move InternetQueryOption(INTERNET_OPTION_URL) to vtbl. 2008-03-12 11:59:47 +01:00
Jacek Caban
e2933c20d6 wininet: Move INTERNET_OPTION_HANDLE_TYPE to vtbl. 2008-03-12 11:59:41 +01:00
Rob Shearman
0be05ab6aa wininet: Retrieve the maximum token length from the SSP and use a buffer of that length in calls to InitializeSecurityContextW.
Otherwise, InitializeSecurityContextW could run out of space with our
small, fixed buffer and fail.
2008-03-10 19:12:54 +01:00
Rob Shearman
7631bdf0c1 wininet: Allow HTTP_DoAuthorization to accept a NULL username/domain in the non-Basic case.
When using SSPI, pass in a NULL identity in this case so that the SSP
can try to use cached credentials.
2008-03-10 19:12:54 +01:00
Rob Shearman
8c6ac00820 wininet: Don't call DeleteSecurityContext and FreeCredentialsHandle on invalid handles. 2008-03-10 19:12:54 +01:00
Rob Shearman
bdc81d9963 wininet: Make the reference count of WININETHANDLEHEADER thread-safe by using InterlockedIncrement/InterlockedDecrement. 2008-03-10 19:12:54 +01:00
Rob Shearman
48000893f9 makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
Only specify the root to keep platform-specifics out of the individual 
DLL makefiles.
2008-03-04 20:55:01 +01:00
Rob Shearman
0aec3fcf86 wininet: Fix compile with MinGW. 2008-03-04 12:01:40 +01:00
Jacek Caban
d597fd12fc wininet: Moved InternetReadFileExA to vtbl. 2008-03-03 20:45:31 +01:00
Francois Gouget
89bdd639df wininet/tests: FtpCommandA() is not available on Win9x. So load it dynamically and skip some tests. 2008-03-03 12:04:10 +01:00
Jacek Caban
ca39a55e88 wininet: Don't use INTERNET_ReadFile in HTTP_DrainContent. 2008-03-03 12:00:32 +01:00