Commit Graph

180 Commits

Author SHA1 Message Date
Hans Leidekker 667e48286e wininet: Calculate the header size if needed in HttpSendRequestW. 2009-01-16 12:34:35 +01:00
Hans Leidekker 1c07d94ddc wininet: Send a content length header for all verbs other than GET. 2009-01-15 12:41:53 +01:00
Jacek Caban 12931062fb wininet: Make sure that we have data buffered before sending INTERNET_STATUS_REQUEST_COMPLETE notification. 2009-01-13 15:28:39 +01:00
Ge van Geldorp e7e4894f2a wininet/tests: INTERNET_STATUS_CLOSING_CONNECTION and ..._CONNECTION_CLOSED callbacks can appear after ..._REQUEST_COMPLETE. 2009-01-05 16:42:03 +01:00
Alexandre Julliard 523881678b wininet/tests: Use ~0u instead of ~0ul for DWORD values. 2009-01-03 20:15:06 +01:00
Hans Leidekker 1791471bbf wininet: Relax a notification test. 2008-12-18 13:16:18 +01:00
Hans Leidekker b6d703b057 wininet: Adapt tests to winehq changes. 2008-12-12 11:37:48 +01:00
Alexandre Julliard 48db9ceff4 wininet/tests: Use new test URLs on test.winehq.org. 2008-12-10 10:47:13 +01:00
Hans Leidekker d1076aeab4 wininet: Don't increase index in HttpQueryInfo if requested level is HTTP_QUERY_STATUS_CODE.
Some apps depend on this quirk because they don't reset the index
before subsequent calls to HttpQueryInfo.
2008-12-02 14:03:54 +01:00
Nicolas Le Cam 6c7720e2ce wininet/tests: Fix a failing test on IE6. 2008-10-28 13:26:22 +01:00
Hans Leidekker bd80529709 wininet: Add an exception handler in HttpOpenRequestA to protect against invalid accept type pointers. 2008-10-24 14:25:00 +02:00
Hans Leidekker 4a6b856ff2 wininet: Add a test for basic authentication. 2008-10-17 14:12:37 +02:00
Rob Shearman 0715d9c123 wininet: Fix crash when calling HttpQueryInfoA/W(HTTP_QUERY_RAW_HEADERS) before any response has been received from a server. 2008-10-08 12:17:11 +02:00
Rob Shearman dbd1800ab2 wininet: Get rid of rc variable in InternetReadFile_test.
All of the tested functions return BOOLs, not DWORDs so use res instead of rc.
2008-10-08 12:17:05 +02:00
Hans Leidekker 096fa3b9f5 wininet: Option INTERNET_OPTION_CALLBACK is not settable. 2008-10-07 12:02:54 +02:00
Rob Shearman f55afa8a59 wininet: Move internet time tests from http.c to internet.c. 2008-10-02 10:29:31 -05:00
Rob Shearman fa066c74e3 wininet: Fix behaviour of InternetTimeFromSystemTimeA/W when a buffer that is too small is passed in. 2008-10-02 10:29:19 -05:00
Rob Shearman ef0e3792bb wininet: Add tests for InternetTimeFromSystemTimeW with insufficient buffer. 2008-10-02 10:29:15 -05:00
Lei Zhang bc9e214f6f wininet: Work around NULL headers when handling HTTP_QUERY_RAW_HEADERS_CRLF. 2008-08-28 11:24:50 +02:00
Alexandre Julliard 8f3a7a8494 wininet/tests: Add a couple more optional notifications. 2008-08-26 20:40:28 +02:00
Alexandre Julliard 1f563440aa wininet/tests: Add support for optional notifications. Fix the test to pass again on Windows and Wine. 2008-08-26 12:07:42 +02:00
Dan Kegel 1e7f89194c wininet: HTTP_QUERY_RAW_HEADERS_CRLF length shouldn't include nul. 2008-07-31 14:02:04 +02:00
Hans Leidekker 572b0bab88 wininet: Move insertion of cookie header from HttpOpenRequest to HttpSendRequest.
Based on a patch by Yann Droneaud.
2008-07-21 12:21:58 +02:00
Hans Leidekker a5c6455193 wininet: Make another test pass on IE6. 2008-07-21 12:21:33 +02:00
Zac Brown 173cd38e68 wininet/tests: Change some traces to skips in tests. 2008-07-10 14:42:43 +02:00
Alexander Morozov 4f51b6c1d8 wininet: Add port number to Host HTTP header. 2008-07-07 14:16:07 +02:00
Alexander Morozov 3ac3194527 wininet/tests: Add HTTP 1.1 test. 2008-07-03 13:08:18 +02:00
Alexander Morozov 9d23d8ecef wininet/tests: Additional HTTP header tests. 2008-07-03 13:08:18 +02:00
Hans Leidekker 95d572dd7e wininet: Make a test pass on IE6. 2008-06-24 11:45:33 +02:00
Hans Leidekker 6233704481 wininet: Resolve hostname once per connection. 2008-06-24 11:45:18 +02:00
Hans Leidekker 656a035821 wininet: Don't send a "Connection: Close" header. 2008-06-02 14:05:32 +02:00
Hans Leidekker 9d55252d41 wininet: Don't send a handle closing callback for session handles created with InternetOpenUrl. 2008-06-02 13:45:53 +02:00
Francois Gouget 824842cac7 wininet/tests: Remove a stray reference to InternetSetStatusCallback(). 2008-05-22 11:43:15 +02:00
Hans Leidekker 694a09284a wininet: Fix buffer size query for HttpQueryInfo(HTTP_QUERY_RAW_HEADERS_CRLF). 2008-05-19 14:04:10 +02:00
Hans Leidekker e1b889830d wininet: INTERNET_STATUS_REQUEST_COMPLETE callback must supply a handle. 2008-05-19 13:35:24 +02:00
Hans Leidekker 3f795c621d wininet: Make a test pass on IE6. 2008-05-12 14:00:56 +02:00
Hans Leidekker aec0e93d23 wininet: Don't overwrite content length header in HttpSendRequest. 2008-05-12 14:00:51 +02:00
Hans Leidekker 493b6915ca wininet: Deal with bogus accept types array passed into HttpOpenRequestA. 2008-05-07 17:49:31 +02:00
Maarten Lankhorst 11a0e45304 wininet: Ignore INTERNET_STATUS_DETECTING_PROXY messages in the http test. 2008-05-07 12:11:08 +02:00
Hans Leidekker e2f690a0ac wininet: Don't add the user agent header until HttpSendRequest is called. 2008-05-05 12:51:56 +02:00
Hans Leidekker bbf5dae444 wininet: Use a direct connection for tests that connect to localhost. 2008-03-31 13:01:11 +02:00
Dan Hipschman 0929593b6c wininet: InternetReadFileExA should check INTERNET_FLAG_ASYNC. 2008-03-28 09:50:42 +01:00
Francois Gouget 1fa0e443e3 wininet/tests: Don't include the trailing '\0' in dwHeadersLength otherwise HttpSendRequestEx() sends it too which some servers object to. 2008-02-19 13:39:25 +01:00
Hans Leidekker 2617fb6dea wininet: Handle the "100 Continue" response by ignoring it. 2008-02-18 13:33:33 +01:00
Jacek Caban e49e792849 wininet: Added cache test. 2008-02-15 10:00:10 +01:00
Hans Leidekker b0912d1151 wininet: Add zero value content length header to POST requests only. 2008-02-04 14:18:51 +01:00
Hans Leidekker b069ef4268 wininet: Make sure not to overwrite any caller supplied authorization header. 2008-02-04 14:18:20 +01:00
Rob Shearman 59ab0cf362 wininet: HTTP_Connect should fail if a NULL or empty hostname is passed in.
Add tests for these circumstances.
2008-02-04 13:04:34 +01:00
Marcus Meissner 45fbfbcef4 wininet: Check if buffer has overflowed potentially. 2008-01-24 11:41:22 +01:00
Michael Stefaniuc 6d8c2d744b wininet/tests: Do not compare the return value of socket() with 0. Use INVALID_SOCKET instead. 2007-11-27 12:29:42 +01:00
Hans Leidekker 864db96626 wininet: Fix two handle leaks in the test. 2007-11-12 11:40:59 +01:00
Hans Leidekker 64359c2432 wininet: Always send a content length header, even if there is no content. 2007-10-29 13:06:50 +01:00
Misha Koshelev 01de104a75 wininet/tests: Add test to show that InternetCloseHandle closes open child handles too. 2007-09-21 11:53:09 +02:00
Francois Gouget d4337f2b5e wininet: Fix many wininet prototypes: the context is a DWORD_PTR now. 2007-08-30 17:02:49 +02:00
Misha Koshelev 1ee9ea91a5 wininet: Fix reference count on internet handle for asynchronous InternetReadFileEx call. 2007-08-22 12:18:59 +02:00
Misha Koshelev 5320d3e3ea wininet: Don't send INTERNET_STATUS_HANDLE_CLOSING when closing handle opened with InternetOpen for HTTP connection. 2007-08-22 12:18:59 +02:00
Mikołaj Zalewski 5cdfee8153 wininet: A small test for HttpQueryInfoA. 2007-08-16 11:52:12 +02:00
Mikołaj Zalewski 3fa49f0f02 wininet: Make HttpQueryInfo[AW] work for lpBuffer == NULL and len > 0. 2007-08-16 11:52:06 +02:00
Mikołaj Zalewski ab7d17727c wininet: Support HTTP_QUERY_RAW_HEADER_CRLF|HTTP_QUERY_FLAG_REQUEST_HEADERS. 2007-08-16 11:51:52 +02:00
Misha Koshelev 9aac2fcf55 wininet/tests: Test that for an open HTTP connection InternetQueryDataAvailable succeeds or returns ERROR_IO_PENDING. 2007-08-13 12:36:25 +02:00
Hans Leidekker bb9413d77a wininet: Process caller supplied headers after inserting connection and authorization headers, not before. 2007-08-10 12:58:17 +02:00
Misha Koshelev 4e0371f322 wininet/tests: Add testing framework and tests for internet status callbacks. 2007-07-16 14:59:04 +02:00
Misha Koshelev 0d1f2bf526 wininet/tests: Properly handle ERROR_IO_PENDING from InternetQueryDataAvailable. 2007-07-16 14:58:58 +02:00
Rob Shearman c16bb07186 wininet: Send the correct callbacks during InternetReadFileExA calls. 2007-06-06 12:10:55 +02:00
Rob Shearman 76507d475b wininet: Don't close the connection if the caller passes in zero for the number of bytes to be read.
Only close the connection when the bytes read equals the content length.

Fixup HTTP_DrainContent, which relied on the previous incorrect 
behaviour to instead close connections with no content length manually.
2007-05-29 13:49:02 +02:00
Rob Shearman 07daeff8f4 wininet: Always make copies of strings passed to INTERNET_SendCallback.
This ensures that applications that change the strings received in
status callbacks don't affect the data needed to successfully connect to
the correct server.
2007-03-05 16:43:26 +01:00
Francois Gouget f410bbf098 wininet/tests: Dynamically load some functions so the test runs on Windows 98. 2007-02-20 20:29:46 +01:00
Hans Leidekker 890f63a1d8 wininet: Fix a test that fails on Windows. 2007-02-13 11:50:07 +01:00
Hans Leidekker 2024f68753 wininet: Skip empty accept type strings in HttpOpenRequest. 2007-02-13 11:50:01 +01:00
Francois Gouget bf81fdc248 wininet/tests: Print GetLastError() in decimal with '%u'. 2007-01-08 12:06:27 +01:00
Jacek Caban cdbab7ddf2 wininet: Fixed declaration of INTERNET_STATUS_CALLBACK. 2006-10-30 11:17:24 +01:00
Andrew Talbot c54a2480ec wininet/tests: Cast-qual warning fix. 2006-10-06 12:32:51 +02:00
Hans Leidekker de3b5be338 wininet/tests: Win64 printf format warning fixes. 2006-10-05 17:45:09 +02:00
Alexandre Julliard c56eec22e2 wininet/tests: Don't fail the tests if the network is unreachable. 2006-09-21 12:44:56 +02:00
Andrew Talbot 5ea47faf8b wininet/tests: Write-strings warnings fix. 2006-08-11 11:56:16 +02:00
Mike McCormack 8af1faec24 wininet: Add a test for basic authentication. 2006-05-30 19:29:48 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Mike McCormack 854808d9d4 wininet: Add a standalone http test. 2006-05-16 20:21:34 +02: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 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 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 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 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
Eric Pouech e66e227dbe Fixes for missing prototypes warnings. 2006-02-06 13:13:28 +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
Robert Shearman 03aea8c1b1 Test the behaviour of HttpSendRequestEx when putting data into the
lpvBuffer.
2005-11-30 12:31:38 +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
Francois Gouget 6d442aeb34 Assorted spelling fixes. 2005-11-23 20:14:43 +01: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
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
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