Robert Shearman
c564ee826f
wininet: Fix some string length calculations.
...
Fix some string length calculations that didn't account for the
different sized characters with Unicode.
2006-03-30 21:55:37 +02:00
Robert Shearman
4f40f17226
wininet: Only access the URL in the cache by the provided offset.
2006-03-30 21:55:29 +02:00
Mike McCormack
92ddc1c851
wininet: Clean up HTTP_GetCustomHeaderIndex.
2006-03-30 12:41:04 +02:00
Mike McCormack
7f5e273214
wininet: Use a lookup table sorted by index so we don't need a loop to do lookups.
2006-03-30 12:40:47 +02:00
Mike McCormack
ae300883fa
WININET: Clean up HttpQueryInfo.
...
Fixes another return FALSE without SetLastError.
2006-03-30 12:40:05 +02:00
Mike McCormack
2571fa004a
wininet: Make sure to set LastError when returning FALSE in HttpQueryInfo.
2006-03-30 12:38:14 +02:00
Francois Gouget
6bddeb1cf7
Assorted spelling fixes.
2006-03-21 20:10:39 +01:00
Robert Shearman
dc03c0e3f3
wininet: Document InternetCrackUrlW.
2006-03-21 16:19:06 +01:00
Robert Shearman
80e4fb5975
wininet: InternetCreateUrlW should return the number of bytes needed.
...
InternetCreateUrlW should return the number of bytes needed to store
the URL, not the number of characters (reported by Sven Paschukat).
2006-03-21 16:19:06 +01:00
Robert Shearman
15a7d3b2b4
wininet: Copy from the start of the cookie name, not the cookie data.
...
Copy from the start of the cookie name, not the cookie data when
parsing cookies with a NULL cookie name.
2006-03-20 12:01:25 +01:00
András Kovács
a2a4029e40
wininet: Added Hungarian translation.
2006-03-15 11:34:10 +01:00
Robert Shearman
74cb03247d
wininet: Move URL-related tests to a separate file.
2006-03-14 18:49:19 +01:00
Robert Shearman
366fc247fc
wininet: Make InternetCrackUrlW set the components related to net_loc
...
to NULL when net_loc isn't present in the input URL.
2006-03-14 17:51:51 +01:00
Robert Shearman
153aac0194
wininet: Move cookie-related stubs to cookie.c
2006-03-14 17:51:31 +01:00
Robert Shearman
5b5d45586e
wininet: Implement setting of send and receive timeouts.
2006-03-14 17:50:41 +01:00
Robert Shearman
0252e5e875
wininet: Fix the conversion of NULL component values from InternetCreateUrlA.
2006-03-13 13:33:03 +01:00
Robert Shearman
f18305b176
wininet: Host name isn't present when two slashes aren't present in InternetCrackUrl.
...
The test for "about:" in InternetCrackUrlW should be more general so
that only URLs without double slashes should also be assumed not to
have a host name.
Add another test for this case and remove an unreliable
InternetCreateUrl test.
2006-03-13 13:32:45 +01:00
Robert Shearman
ae677d356c
wininet: InternetCrackUrl should set nPort to the default port if not specified.
2006-03-13 13:32:20 +01:00
Robert Shearman
ef20936c53
wininet: Don't duplicate empty strings.
2006-03-10 21:40:57 +01:00
Robert Shearman
1b8f7f0605
wininet: Fix InternetGetCookie with no matching cookies.
...
Return FALSE and an error of ERROR_NO_MORE_ITEMS from
InternetGetCookie when there are no cookies for the specified
domain. This fixes a bug in sending a blank cookie to HTTP servers.
2006-03-09 22:48:08 +01:00
Robert Shearman
e4adc07333
wininet: Fix an off-by-one error in InternetCreateUrlW.
...
Fix an off-by-one error in the size of buffer used to store the port
number in InternetCreateUrlW.
2006-03-09 22:47:50 +01:00
Robert Shearman
b0fcaf9d48
wininet: Further InternetCreateFileW fixes.
...
- Add the slash after the port number.
- Only add the port number if the host name is present.
2006-03-09 22:47:35 +01:00
Robert Shearman
d3047aaeba
wininet: If necessary, add a slash between the hostname and path in
...
InternetCreateUrlW.
2006-03-09 22:47:16 +01:00
Robert Shearman
8eab78c235
wininet: More InternetCreateUrlW fixes.
...
- Don't add double slashes for opaque URLs.
- The default port number for all other schemes is 0.
2006-03-09 22:47:00 +01:00
Robert Shearman
e58a448c4a
wininet: Parse the scheme the string in InternetCreateFileW.
...
Parse the scheme the string in InternetCreateFileW and rewrite
url_uses_default_port using schemes instead of strings.
2006-03-09 22:46:45 +01:00
Robert Shearman
02839948d2
wininet: Get the string for the scheme if specified only by the
...
INTERNET_SCHEME enumeration in InternetCreateUrlW.
2006-03-09 22:46:30 +01:00
Robert Shearman
01219c65aa
wininet: The host name is optional in InternetCreateUrlW.
2006-03-09 22:46:07 +01:00
Robert Shearman
ed90c868a9
wininet: Use an array of schemes for mapping from a string to an INTERNET_SCHEME.
...
Use an array of schemes so that it can be re-used for mapping from
INTERNET_SCHEME back to a string and simplify the code in
GetInternetSchemeW.
2006-03-09 22:45:56 +01:00
Robert Shearman
e2b7bc1efd
wininet: Fix Trace in InternetCreateUrl.
...
The url passed in to InternetCreateUrl is an out parameter, so don't
dump it.
2006-03-09 22:45:26 +01:00
Robert Shearman
0590025e3c
wininet: Fix redirects with relative URIs instead of absolute URIs.
2006-03-09 22:45:18 +01:00
Robert Shearman
414d1ddeb9
wininet: Rewrite InternetCreateUrlW.
...
- Rewrite InternetCreateUrlW to respect the lengths passed in via the
URL_COMPONENTS structure and fall back to a strlenW call when a
length is zero.
- Expand the number of protocols supported when determining whether
the port number should be added.
- Fix a test by passing in the correct length of scheme.
2006-03-06 20:00:53 +01:00
Robert Shearman
9981f337e3
wininet: Don't continue to connect to a secure server without SSL support since it won't work.
...
Don't continue to connect to a secure server without SSL support since
it won't work. Return an error back to the application instead.
2006-03-06 20:00:21 +01:00
Robert Shearman
8bfc85957a
wininet: More tests for InternetCreateUrl.
...
Fix an InternetCreateUrl test so that it correctly sets the scheme
length and add tests which show the behaviour when the lengths are set
to zero and when the https scheme is used.
2006-03-06 20:00:08 +01:00
Victor Pelt
472ad3a450
wininet: Add stub for missing InternetSetOption.
2006-03-06 19:56:21 +01:00
Juan Lang
89529f8a8e
wininet: Use CertNameToStr for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT
...
and update comment.
2006-02-16 12:19:00 +01:00
Robert Shearman
7a2357a480
wininet: Documentation fixes.
2006-02-14 11:34:14 +01:00
Petr Tesarik
3a9b7b4b17
wininet: Czech language resources encoding fix.
2006-02-13 13:28:37 +01:00
Dmitry Timoshkov
03434c728e
wininet: Fix InternetQueryOption test to pass under Windows.
2006-02-06 20:59:21 +01:00
Vijay Kiran Kamuju
7660614b0d
wininet: Add tests for InternetQueryOption.
2006-02-06 14:12:22 +01:00
Eric Pouech
e66e227dbe
Fixes for missing prototypes warnings.
2006-02-06 13:13:28 +01:00
Fatih Aşıcı
7578e31735
wininet: Turkish translation.
2006-02-06 13:06:49 +01:00
Aric Stewart
8b0883576e
wininet: INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT work.
...
Beginning of framework to implement handling of InternetQueryOption
for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT.
2006-01-20 20:16:56 +01:00
Aric Stewart
21712d3d15
wininet: Handle NULL lpBuffersIn in HttpSendRequestExW.
2006-01-13 13:52:38 +01:00
Jacek Caban
ad02317248
wininet: lpvStatusInfo in INTERNET_STATUS_NAME_RESOLVED,
...
INTERNET_STATUS_CONNECTING_TO_SERVER and
INTERNET_STATUS_CONNECTED_TO_SERVER should be strings, not
sockaddr_in.
2006-01-05 14:37:06 +01:00
Robert Shearman
7b4b4b7930
wininet: Handle the cache being full better in CommitUrlCacheEntryInternal.
...
Move the freeing of allocation blocks for an entry into
URLCache_DeleteEntry.
Call URLCache_DeleteEntry to rollback from failure in
CommitUrlCacheEntryInternal.
2005-12-31 13:21:19 +01:00
Robert Shearman
13f2ce26dd
wininet: Create new hash tables for URL cache on demand.
2005-12-31 13:20:54 +01:00
Robert Shearman
2ceb052496
wininet: Move URL cache hash table creation to a separate function.
2005-12-31 13:20:29 +01:00
Aric Stewart
1e946d3e14
wininet: HTTP headers reworking.
...
Redo how headers are handled, eliminating the concept of Standard
Headers and allow all headers to be added multiple times.
Allow querying of headers with an index to get the multiple headers.
Respect response vs request headers in HttpQueryInfo.
Add a number of tests to extensively test header adding and replacing.
2005-12-13 17:07:41 +01:00
Marcus Meissner
73893a74fd
wininet: Reinitialise NETCON on redirect.
2005-12-13 11:12:09 +01:00
Aric Stewart
7bca41a739
wininet: Handle HTTP_QUERY_CUSTOM.
...
In HttpQueryInfo if dwInfoLevel includes HTTP_QUERY_CUSTOM then
lpBuffer is In/Out because the header we are querying is there.
Additionally standard headers can be queried in this manner as well
(such as Set-Cookie).
2005-12-08 12:44:45 +01:00
Aric Stewart
d30cec77d3
wininet: A->W bugfix.
...
When converting SendRequestExA -> W we need to set the lpcszHeader
parameter to NULL if the original one is NULL.
2005-12-08 11:54:24 +01:00
Patrick Ammann
d437f37f58
wininet: compilation fix
...
- make netconnection.c compile when HAVE_OPENSSL_SSL_H or
HAVE_OPENSSL_ERR_H are not defined.
2005-12-05 12:01:56 +01:00
Robert Shearman
efd067f2c3
wininet: Correctly set the last error when a called Unix network
...
function fails.
2005-12-03 18:10:14 +01:00
Robert Shearman
067f09604a
wininet: global function/data cleanup
...
Make some functions and a structure static since they are only used in
one file.
2005-12-03 18:03:08 +01:00
Robert Shearman
1e5153cf3c
Cleanup SSL connections properly, do a few security checks in
...
NETCON_secure_connect and display errors from SSL on failure. Don't
use SSL_set_bio as SSL_set_fd is cleaner for us.
2005-12-01 11:18:43 +01:00
Robert Shearman
03aea8c1b1
Test the behaviour of HttpSendRequestEx when putting data into the
...
lpvBuffer.
2005-11-30 12:31:38 +01:00
Robert Shearman
f6252cf43e
Remove duplicated code by modifying HTTP_HttpSendRequest so that it
...
can be used by both HttpSendRequest and HttpSendRequestEx.
Also allow HttpSendRequestEx to be used asynchronously.
2005-11-30 12:31:22 +01:00
Robert Shearman
dc5f1cbd5d
Remove call to StrCatW by passing in NULL for lpszExtraInformation in
...
the call to InternetCrackUrl, which concatenates the params onto the
path.
Some other minor cleanups.
2005-11-30 12:01:50 +01:00
Robert Shearman
4350357634
HttpSendRequestExA/W doesn't touch lpBuffersIn->Next, so simplify the
...
code a bit.
Modify test case to demonstrate this.
2005-11-29 11:42:23 +01:00
Robert Shearman
8a8ce9c4c7
More lpszServerName -> lpszHostName fixes.
2005-11-29 11:35:19 +01:00
Robert Shearman
efac01b525
Fix redirects from secure to non-secure and vice versa.
2005-11-29 11:25:31 +01:00
Robert Shearman
de2666fd5f
Change all SendAsyncCallback calls into the synchronous
...
INTERNET_SendCallback where INTERNET_FLAG_ASYNC is already handled
properly.
2005-11-29 10:44:05 +01:00
Ge van Geldorp
1a1583a364
Match PSDK STATUS_* definitions.
2005-11-28 17:32:54 +01:00
Aric Stewart
1fc760d4a7
Allow HttpEndRequest to process 302 and 301 redirects. Append Host
...
port if non standard on the redirect host header and make sure to
append the extra information (parameters) and such to the location if
present. Additionally check to see if we are redirecting to https and
if so set the appropriate port.
2005-11-28 17:31:02 +01:00
Robert Shearman
0e7c41e979
Add support for using secure (SSL/TLS) connections through a proxy
...
server.
2005-11-28 11:55:16 +01:00
Robert Shearman
13d371da54
Move the initiation of the SSL connection into a separate function.
2005-11-28 11:54:31 +01:00
Robert Shearman
3592110af7
Add a host port field that preserves the requested port of the
...
destination URL.
2005-11-28 11:53:05 +01:00
Robert Shearman
cc44f3a5c7
Fix "http://" prefix detection on the proxy URL.
2005-11-28 11:31:11 +01:00
Robert Shearman
0adec2b3dc
Replace some useless checks in HTTP_AddProxyInfo with asserts.
2005-11-28 11:28:06 +01:00
Robert Shearman
225a9facd4
Simplify and fix Set-Cookie handling.
2005-11-28 11:24:41 +01:00
Robert Shearman
22edb3e99e
Simplify HTTP_InsertProxyAuthorization.
2005-11-28 11:17:06 +01:00
Robert Shearman
8c8c81a1ef
Change some SendAsyncCallback calls to INTERNET_SendCallback as the
...
tests show that the callbacks happen either synchronously or within an
alternative asynchronous call.
Remove a check for a NULL lpfnStatusCB that is already performed by
INTERNET_SendCallback and add a comment about a difference to native.
2005-11-28 11:00:18 +01:00
Robert Shearman
29a436fd87
Add parsing of the Content-ID and Proxy-Connection headers.
...
Sort the table of header to option number mappings correctly.
Change a FIXME to a WARN because there are "X-..." headers that we
aren't supposed to parse.
2005-11-28 11:00:05 +01:00
Robert Shearman
7bb3463166
Add a new field "lpszHostName" to the session to track the host name
...
of the HTTP server, as opposed to the server that we will connect to
that could be a proxy server. Fixes the "Host:" header that we send to
servers.
2005-11-28 10:40:42 +01:00
Alexandre Julliard
0ec7e1a591
Renamed all .cvsignore files to .gitignore.
2005-11-26 13:10:33 +01:00
Francois Gouget
6d442aeb34
Assorted spelling fixes.
2005-11-23 20:14:43 +01:00
Francois Gouget
d69268e77c
Documentation tweaks to make winapi_check happy.
...
Also specify the documented spec file entry.
2005-11-23 20:14:04 +01:00
Aric Stewart
ed0eba24f9
HttpEndRequest does not actually send an extra NULL byte at the end of
...
the request. Help from Rob Shearman on this one.
2005-11-22 16:18:48 +00:00
Aric Stewart
9e68c651d6
Fix some logic to allow HTTP_ADDREQ_FLAG_ADD to replace existing
...
headers. Also adding a test for some header adding flags.
2005-11-22 14:53:30 +00:00
Robert Shearman
dece43d880
Test the sizes of some of the parameters passed into the callback.
2005-11-22 11:59:16 +00:00
Robert Shearman
756f197945
Rename SendAsyncCallback to INTERNET_SendCallback.
2005-11-22 11:59:07 +00:00
Robert Shearman
b27457c91c
Fix an incorrect entry in the HTTP header field table causing broken
...
Location field parsing.
2005-11-22 11:58:50 +00:00
Aric Stewart
be918f48b6
Implement HttpSendRequestEx and HttpEndRequest. Restructure, breaking
...
some things out of HTTP_SendRequestW to avoid duplicate code.
2005-11-21 15:17:55 +00:00
Aric Stewart
526d3e51ee
Implement the use of NETCON_send for HTTP connections when in
...
InternetWriteFile.
2005-11-21 11:57:33 +00:00
Robert Shearman
f5af18f05f
- Improve callback to give context sensitive information about the
...
different statuses and print the thread ID that it was called from.
- Replace the busy waiting on the "goon" flag with an event.
- Replace hard coded numbers with more informative constants
throughout the InternetReadFile test.
- Add tests for InternetReadFileExA.
- Fix the error value from calling InternetReadFile with a NULL handle
as indicated by the test.
2005-11-16 11:21:41 +00:00
Robert Shearman
e6157dde9d
We shouldn't pass the struct hostent returned from gethostbyname as
...
it's not thread-safe and isn't needed anyway.
2005-11-15 18:16:55 +00:00
Robert Shearman
e87fe3a17f
Correct the size of a callback parameter.
...
Fix the declaration of INTERNET_WorkerThreadFunc.
2005-11-15 18:12:42 +00:00
Alexandre Julliard
3566fe60a8
Fixed Unicode buffer size bug in CreateUrlCacheEntryW.
2005-11-15 16:56:04 +00:00
Robert Shearman
79dc136a37
INTERNET_STATUS_HANDLE_CREATED notifications just send the handle, not
...
an INTERNET_ASYNC_RESULT structure.
The source handle in HTTP_Connect should be the parent's handle.
2005-11-15 12:01:59 +00:00
Robert Shearman
5b1fd2e58e
SSL doesn't need to use a different socket to unsecure communications.
2005-11-15 12:01:40 +00:00
Saulius Krasuckas
bc52612f77
Fix a test for InternetCreateUrlA as no Windows platform sets last
...
error here. Make InternetCreateUrlA pass the test.
2005-11-14 11:23:02 +00:00
Robert Shearman
01e91e5f6c
Implement InternetReadFileExA (based on a patch by Brian Gerst).
2005-11-12 19:10:56 +00:00
YunSong Hwang
58d6722e7a
Add Korean translations.
2005-11-11 10:55:09 +00:00
Francois Gouget
0edbaf7e80
Remove spaces before '\n' in traces.
2005-11-10 12:14:56 +00:00
Mike Hearn
3ba70220d2
Update wininet version info.
2005-11-10 11:03:51 +00:00
Vincent Béron
522b39bb42
Unicodify InternetCheckConnection.
...
Use HeapAlloc'ed buffers where applicable.
2005-11-08 16:09:20 +00:00
Alexandre Julliard
dd281290e8
Authors: Marcus Meissner <marcus@jet.franken.de>, Walter Weiss <wjweiss@hotmail.com>
...
Added handling of more HTTP standard headers and binary search lists.
2005-11-01 18:06:54 +00:00
James Hawkins
1928ee8804
Implement InternetCreateUrlW and test cases.
2005-10-31 14:06:35 +00:00
James Hawkins
19ce8115a8
Correct parameter names for InternetSetFilePointer.
2005-10-28 10:08:44 +00:00
Vijay Kiran Kamuju
ab80e557d7
Add default implementation for max_conn_pre_*_server flag.
...
Add stubs for the above flags in InternetSetOption.
2005-10-27 18:28:59 +00:00