Commit Graph

767 Commits

Author SHA1 Message Date
Andrew Talbot
2b8a6a3a06 wininet: Fix a memory leak. 2007-10-12 11:48:31 +02:00
Detlef Riekenberg
f98b4507ba wininet/tests: Initial tests for InternetCanonicalizeUrlA. 2007-10-11 16:24:28 +02:00
Misha Koshelev
705b01c054 wininet: When sending INTERNET_STATUS_HANDLE_CLOSING make sure the freed handle is not yet available. 2007-09-25 13:51:34 +02: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
Misha Koshelev
728e5fa559 wininet: Track child handles, free all child handles on WININET_FreeHandle as native. 2007-09-21 11:53:04 +02:00
Juan Lang
ba45902daf wininet: Create a TCP connection if FLAG_ICC_FORCE_CONNECTION is specified. 2007-09-18 10:42:35 +02:00
Alexandre Julliard
23c58d3a21 wininet/ftp: There's no need to query the file size before retrieving a file. 2007-09-17 12:56:48 +02:00
Alexandre Julliard
b20694e732 wininet/tests: Anonymous FTP can succeed without a password. 2007-09-14 16:59:06 +02:00
Americo Jose Melo
c5ba90131e Update the Portuguese translation. 2007-09-13 13:28:26 +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
2f3805a3bd wininet: Send INTERNET_STATUS_HANDLE_CLOSING when object is being destroyed as native does. 2007-08-23 13:13:35 +02:00
Misha Koshelev
0f117e568f wininet: Separate connection closing from object destruction. 2007-08-23 13:13:24 +02:00
Misha Koshelev
4b2f9af998 wininet: Rename WININET_object_destructor to a more general WININET_object_function. 2007-08-23 13:13:14 +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
Paul Vriens
36e416b614 wininet/tests: Fix test failures for wininet.dll that comes with IE7. 2007-08-17 11:47:46 +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
Misha Koshelev
6ea2441ff9 wininet: InternetQueryDataAvailable does not return ERROR_NO_MORE_FILES when no more HTTP data is available. 2007-08-13 12:36:19 +02:00
Misha Koshelev
662f44a619 wininet: Don't peek data in InternetQueryDataAvailable if there is no more to be expected. 2007-08-13 12:36:09 +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
Hans Leidekker
4332f418a5 wininet: Implement INTERNET_OPTION_CALLBACK in InternetSetOption{A, W}. 2007-08-10 12:58:17 +02:00
Hans Leidekker
c1c6f4ad6b wininet: Also set last error on NULL first parameter in InternetCreateUrl{A, W}. 2007-08-10 12:58:17 +02:00
Hans Leidekker
d10891eab9 wininet: Don't crash on NULL first or last parameter in InternetCrackUrlW. 2007-08-10 12:58:17 +02:00
Francois Gouget
f33abb6d96 wininet: Add a skeleton winineti.h header with fixed prototypes for [GS]etUrlCacheConfigInfo*(), DeleteIE3Cache() and IsUrlCacheEntryExpired*().
Remove SetUrlCacheConfigInfo*() from wininet.h, it's supposed to be declared in winineti.h.
Update win32.api to fix the winapi_check warnings.
2007-08-09 14:11:56 +02:00
Francois Gouget
36d98a32eb wininet: #undef some macros to avoid a conflict between openssl/ssl.h and wincrypt.h. 2007-08-09 14:11:35 +02:00
Huw Davies
dc881a258e wininet: Fix the case when Proxy or ProxyBypass is NULL. 2007-08-07 12:42:31 +02:00
Aric Stewart
c8dfc02bfb wininet: Strip Accept-Encoding from http/1.0 requests. 2007-07-27 12:47:51 +02:00
Huw Davies
00631b2480 wininet: Stub for InternetQueryFortezzaStatus(). 2007-07-19 14:38:42 +02:00
Huw Davies
3f2d93b512 wininet: Stubs for IsUrlCacheEntryExpired[AW]. 2007-07-19 11:54:10 +02:00
Huw Davies
d9bdf793fe wininet: Certain options of InternetQueryOption can take a NULL handle, so don't do the NULL handle check at the beginning. 2007-07-19 11:54:04 +02:00
Misha Koshelev
663c0146a5 wininet: Fix behavior of InternetQueryDataAvailable if INTERNET_FLAG_ASYNC is set. 2007-07-16 14:59:16 +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
Alexandre Julliard
f91909b3b0 configure: Make the libssl soname check depend on the header check. 2007-07-02 19:42:53 +02:00
Alexandre Julliard
5a95cfbd9c configure: Export the shared library extension instead of hardcoding .so. 2007-07-02 14:35:05 +02:00
Michael Stefaniuc
c576803f6d wininet: Remove superfluous casts of void pointers to other pointer types. 2007-06-27 12:53:42 +02:00
Hans Leidekker
9a6ba225e2 wininet: More lenient parsing of the passive mode server response. 2007-06-07 19:24:00 +02:00
Rob Shearman
cb28969c2a wininet: Implement NTLM support for proxy authentication. 2007-06-06 12:11:34 +02:00
Rob Shearman
c16bb07186 wininet: Send the correct callbacks during InternetReadFileExA calls. 2007-06-06 12:10:55 +02:00
Jeremy White
7ad691a5ee wininet: Mark Proxy Authorization header as a request header, so it actually gets sent. 2007-06-01 12:40:22 +02:00
Alexandre Julliard
1ada7ba20e wininet: Fixed compilation without SSL. 2007-05-29 23:27:08 +02:00
Rob Shearman
56267608f1 wininet: Add a new NETCON_query_data_available function.
Use it to implement the behaviour where InternetReadFileExA does a 
synchronous request if the data is available and asynchronous otherwise.
2007-05-29 14:00:20 +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
2e21d090cb wininet: Cope with non-nul-terminated header strings being passed to HttpSendRequestW. 2007-05-29 13:44:36 +02:00
Rob Shearman
4d1b8b1a4e wininet: Fix basic authentication by putting Basic directing into the scheme field, as the pszAuthValue can have an optional realm string appended. 2007-05-29 13:44:35 +02:00
Andrew Talbot
8ee390f6f5 wininet: Exclude unused headers. 2007-05-29 12:10:17 +02:00
Rob Shearman
7b94871c9f wininet: Pass context to InitializeSecurityContext in second parameter.
Otherwise, the call will now fail with SEC_E_INVALID_HANDLE.
2007-05-29 11:54:42 +02:00
Alexandre Julliard
be59e2bb53 Fix a couple of overflowing heap allocations revealed by the previous change. 2007-05-22 11:59:36 +02:00
Rob Shearman
847cc51d3b wininet: Implement basic non-proxy authentication. 2007-05-21 16:52:21 +02:00
Rob Shearman
4b507685e8 wininet: Add support for SSPI authentication for HTTP. 2007-05-21 16:52:10 +02:00
Michael Stefaniuc
5f62da109e janitorial: Pass HEAP_ZERO_MEMORY as flag to HeapAlloc() instead of zeroing out the allocated memory in a later call. 2007-04-25 12:26:07 +02:00
Alban Browaeys
3d79f1b80b wininet: Fix szCacheContent in URLCacheContainer_OpenIndex. 2007-04-16 13:20:54 +02:00
Andrew Talbot
57746f9592 wininet: Replace inline static with static inline. 2007-03-26 12:20:03 +02:00
Paul Vriens
611acf5201 wininet/ftp: Fix potential memory leak. 2007-03-21 22:51:45 +01:00
Paul Vriens
5f9d7745dc wininet/ftp: Remove unneeded check. 2007-03-21 22:51:38 +01:00
Paul Vriens
e3d7274727 wininet/tests: Expose a problem with FtpGetFile. 2007-03-21 11:55:05 +01:00
Paul Vriens
b6f92f10c6 wininet/ftp: Move a definition in FTP_FtpFindFirstFileW (Coverity). 2007-03-21 11:54:56 +01:00
Paul Vriens
9a7fb5f1e7 wininet/ftp: Simplify FTP_FtpGetFileW a bit. 2007-03-21 11:54:42 +01:00
Hans Leidekker
13a04ac0a8 wininet: Fix buffer size calculation in INTERNET_InternetOpenUrlW.
Spotted by Ron Yorston.
2007-03-13 20:31:22 +01:00
Francois Gouget
fa41be3fdb wininet: Fix a couple of reversed checks that could result in leaked socket handles. 2007-03-08 22:16:41 +01:00
Francois Gouget
53e76f8370 wininet: Check file handles against INVALID_HANDLE_VALUE, not NULL.
Simplify the file handle handling in FTP_FtpPutFileW().
2007-03-08 22:16:36 +01: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
Paul Vriens
23473ccc9e wininet/ftp: Let CreateFile deal with last error. 2007-03-01 12:17:47 +01:00
Ken Thomases
b33057986a wininet: Use "ping -c 1" instead of "ping -w 1" for InternetCheckConnection. 2007-02-28 21:29:43 +01:00
Paul Vriens
443ae2290a wininet/tests: Add another test. 2007-02-27 12:23:49 +01:00
Andrew Talbot
46fc9c2e11 wininet: Constify some variables. 2007-02-26 13:38:37 +01:00
Paul Vriens
63806a94b5 wininet/tests: Add a few more tests. 2007-02-22 11:26:51 +01:00
Rob Shearman
ba590a185a wininet: Fix the case of partial SSL reads from the peek buffer.
Don't return FALSE for a partial read. Fall through to SSL_read and use 
the logic for partial reads there instead of having separate logic and 
recursively calling NETCON_recv. Based on a patch by Michael Moss.
2007-02-21 19:49:50 +01:00
Francois Gouget
56da1eeadc wininet/tests: Fix some tests so they succeed on Windows 98. 2007-02-21 19:48:25 +01:00
Paul Vriens
8bc9bc2e29 wininet/ftp.c: Fix some typos. 2007-02-21 10:54:14 +01:00
Francois Gouget
93494f2ac0 Assorted spelling fixes. 2007-02-20 20:30:51 +01:00
Francois Gouget
eb2bf541f2 wininet/tests: Tell the user which ftp server we're using for the tests so he can try to connect to it manually in case of trouble. 2007-02-20 20:29:51 +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
Francois Gouget
da64fe5d56 wininet: Move a bunch of misplaced API documentation. 2007-02-20 20:29:38 +01:00
Paul Vriens
8316b93386 wininet/ftp.c: Fix some returned error codes. 2007-02-20 11:40:09 +01:00
Hans Leidekker
316383dd49 wininet: Don't discard the extra info part of a URL in InternetOpenUrl. 2007-02-20 11:39:00 +01:00
Paul Vriens
5b04d3d67d wininet/ftp.c: Fix some returned error codes. 2007-02-19 12:04:42 +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
Paul Vriens
f0f3e15ac2 wininet/ftp.c: Fix some returned error codes. 2007-02-13 11:49:40 +01:00
Paul Vriens
00b7b29c3a wininet/ftp.c: Add tests to show the order of parameter checking. 2007-02-13 11:49:22 +01:00
Paul Vriens
2ba1cdad69 wininet/ftp.c: Add another test. 2007-02-12 13:58:56 +01:00
Paul Vriens
d20833fc52 wininet/ftp.c: Fix some returned error codes. 2007-02-12 13:47:11 +01:00
Paul Vriens
54c80612ac wininet/ftp.c: Fix some returned error codes. 2007-02-12 13:47:03 +01:00
Paul Vriens
6c05048756 wininet/ftp.c: Fix some returned error codes. 2007-02-12 13:46:52 +01:00
Paul Vriens
1f5e5a2b75 wininet/ftp.c: Fix some returned error codes. 2007-02-09 11:50:09 +01:00
Paul Vriens
37eb0955cd wininet/tests: Add a few more tests. 2007-02-07 21:41:58 +01:00
Paul Vriens
70be65b76e wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:41:53 +01:00
Paul Vriens
ce8ededf3b wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:41:44 +01:00
Paul Vriens
e849f758ba wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:41:37 +01:00
Paul Vriens
00ff67ef09 wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:41:30 +01:00
Paul Vriens
a571476a74 wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:41:23 +01:00
Paul Vriens
7a1ef2c1ef wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:41:16 +01:00
Paul Vriens
7c7271d465 wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:41:07 +01:00
Paul Vriens
2831cf5d3e wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:41:00 +01:00
Paul Vriens
0e8ad3019a wininet/ftp: Remove unneeded (double) checks. 2007-02-07 21:40:52 +01:00
Paul Vriens
0cc5a68e2c wininet/ftp.c: Remove unneeded check. 2007-02-07 11:03:59 +01:00
Paul Vriens
46812a4bba wininet: Remove unused function. 2007-02-06 12:30:45 +01:00
Paul Vriens
8e9a81ea08 wininet/tests: Add ftp tests. 2007-02-05 21:04:26 +01:00
Bang Jun-Young
b71e42b794 wininet: config.h police. 2007-02-05 12:25:55 +01:00
Francois Gouget
aab5e5856e Don't put single quotes around '%s' when using the debugstr_*() functions. 2007-01-18 12:55:50 +01:00
Rob Shearman
1ec14b0b25 wininet: Fix HTTP_EncodeBasicAuth by passing an out buffer to the second set of character set conversion calls. 2007-01-17 11:24:09 +01:00
Mikołaj Zalewski
b8e1dcb374 wininet: Add Polish translation. 2007-01-15 12:42:29 +01:00
Rob Shearman
a9ebc706e3 wininet: Change HTTP_EncodeBase64 to operate on a series of bytes, instead of text.
Change HTTP_EncodeBasicAuth to convert the username and password into 
utf8 before base64 encoding.
2007-01-15 12:31:11 +01:00
Rob Shearman
9efe083ec5 wininet: HTTP_HttpQueryInfoW deals with bytes, not characters so update the callers that have this wrong assumption. 2007-01-15 12:30:53 +01:00
Rob Shearman
7b002a39b8 wininet: Allow a NULL value to be passed into HTTP_ProcessHeader
instead of crashing so that when used with the replace flag it will
delete an existing value.
2007-01-15 12:30:46 +01:00
Rob Shearman
392ceba61f wininet: Don't try to read anything if 0 bytes are to be read. 2007-01-10 22:25:44 +01:00
Francois Gouget
e66d1cd5e9 wininet: Consistenly use INTERNET_SetLastError(). 2007-01-10 11:58:47 +01:00
Rob Shearman
47a8b86b53 wininet: Use Keep-Alive for HTTP requests if specified by the flags passed into HttpOpenRequest. 2007-01-08 12:39:50 +01:00
Rob Shearman
a9c2cfa8d9 wininet: Fix the handling of Accept types passed into HttpOpenRequest
by properly coalescing all the types into the Accept header value,
rather than just adding the first.
2007-01-08 12:39:47 +01:00
Rob Shearman
7e8ef764b8 wininet: Rename HTTP_Base64 to HTTP_EncodeBase64 to more accurately reflect what it does. 2007-01-08 12:39:42 +01:00
Francois Gouget
bf81fdc248 wininet/tests: Print GetLastError() in decimal with '%u'. 2007-01-08 12:06:27 +01:00
Jeff Latimer
d7697bd55e wininet: Ensure null check before dereference. 2007-01-05 20:26:30 +01:00
Rob Shearman
06b19b018a wininet: Fix the releasing of the wrong reference count in HTTP_CloseHTTPRequestHandle.
lpwhr obviously already has a reference count of 0 because it is being destroyed.
2007-01-04 21:17:53 +01:00
Rob Shearman
272954bd81 wininet: Change the HTTP code to not assume that the connection will be closed at the end of every request. 2007-01-04 21:17:34 +01:00
Rob Shearman
f0163ae7d6 wininet: Don't send callbacks in HTTP_CloseConnection if not connected. 2007-01-04 21:17:19 +01:00
Rob Shearman
ac1b527498 wininet: Use the Content-Length header to work out how much HTTP data there is left to be read
and don't try to read any more than what is available.
2007-01-04 21:17:12 +01:00
Rob Shearman
cf43b16036 wininet: Always send a Connection header set to "close" because that is what we expect for the moment. 2007-01-04 21:16:38 +01:00
Rob Shearman
09dbb1b5a0 wininet: Use correct types for socket functions to avoid warnings when compiling on BSD-based systems. 2007-01-04 21:16:30 +01:00
Rob Shearman
14fb418942 wininet: Fix HTTP redirects by reseting loop_next after one loop. 2007-01-04 21:14:54 +01:00
Rob Shearman
02c89e5c6f wininet: Remove the custom thread pool implementation and use QueueUserWorkItem instead. 2007-01-04 21:13:53 +01:00
Louis Lenders
e39a3be860 wininet: Update Dutch resource. 2007-01-04 09:53:23 +01:00
Jacek Caban
49f5ee746c wininet: Get rid of ASYNC_FUNC enum. 2006-12-26 12:50:19 +01:00
Jacek Caban
f08ff892be wininet: Use proc instead of enum in FTPFINDNEXTW request. 2006-12-26 12:50:09 +01:00
Jacek Caban
3a08f1f656 wininet: Use proc instead of enum in FTPRENAMEFILEW request. 2006-12-26 12:50:00 +01:00
Jacek Caban
97157ccee0 wininet: Use proc instead of enum in FTPREMOVEDIRECTORYW request. 2006-12-26 12:49:53 +01:00
Jacek Caban
ee99b3f0c5 wininet: Use proc instead of enum in FTPDELETEFILEW request. 2006-12-26 12:49:47 +01:00
Jacek Caban
054108368e wininet: Use proc instead of enum in FTPGETFILEW request. 2006-12-26 12:49:41 +01:00
Jacek Caban
3c90016f2f wininet: Use proc instead of enum in FTPOPENFILEW request. 2006-12-26 12:49:32 +01:00
Jacek Caban
3b77ff24c2 wininet: Use proc instead of enum in FTPGETCURRENTDIRECTORYW request. 2006-12-26 12:49:27 +01:00
Jacek Caban
0d464ba8db wininet: Use proc instead of enum in FTPFINDFIRSTFILEW request. 2006-12-26 12:49:19 +01:00
Jacek Caban
c4aa47badd wininet: Use proc instead of enum in FTPCREATEDIRECTORY request. 2006-12-26 12:49:08 +01:00
Jacek Caban
f28b0e3b10 wininet: Use proc instead of enum in FTPSETCURRENTDIRECTORY request. 2006-12-26 12:49:01 +01:00
Jacek Caban
4adce67cf6 wininet: Use proc instead of enum in FTPUTFILE request. 2006-12-26 12:48:53 +01:00
Jacek Caban
662c885a0b wininet: Use proc instead of enum in INTERNETREADFILEEXA request. 2006-12-26 12:48:40 +01:00
Jacek Caban
8c3ca8d817 wininet: Use proc instead of enum in INTERNETOPENURLW request. 2006-12-26 12:48:30 +01:00
Jacek Caban
5dd5536a9a wininet: Remove not used HTTPOPENREQUESTW request. 2006-12-26 12:48:21 +01:00
Jacek Caban
c156845560 wininet: Use proc instead of enum in HTTPSENDREQUESTW request. 2006-12-26 12:48:09 +01:00
Jacek Caban
e30037f0d5 wininet: Use proc instead of enum in SENDCALLBACK request. 2006-12-26 12:47:57 +01:00
Rob Shearman
72575a06ca wininet: Make a function for resolving the server name for an HTTP request
and sending the appropriate callbacks and use it to remove some duplicated code.
2006-12-07 11:42:51 +01:00
Rob Shearman
4319ec6b83 wininet: Make HTTP_HandleRedirect no longer call HTTP_HttpSendRequestW.
Make the redirect handling in HTTP_HttpSendRequestW iterate instead of recurse.
2006-12-07 11:42:38 +01:00
Paul Vriens
cae03f7658 wininet/test: Free memory after use. 2006-12-06 11:26:52 +01:00
Francois Gouget
c66628b73f Consistently use SUBLANG_NEUTRAL for Italian resources. 2006-12-05 11:28:38 +01:00
Francois Gouget
89f4cd9336 wininet: Add a Portuguese translation (contributed by Americo Jose Melo). 2006-11-28 12:13:22 +01:00
Francois Gouget
b5f104d05b Replace SUBLANG_DEFAULT with the specific SUBLANG_XXX constant for languages that have multiple sublanguages. 2006-11-24 11:49:32 +01:00
Andrew Talbot
4ef6043a57 wininet: Cast-qual warnings fix. 2006-11-22 11:45:05 +01:00
Rob Shearman
01425f603a wininet: Don't return an error for INTERNET_OPTION_SEND/RECEIVE_TIMEOUT not being implemented
on protocols other than HTTP, just print a FIXME. Reported by Michael Moss.
2006-11-02 21:57:17 +01:00