Commit Graph

448 Commits

Author SHA1 Message Date
Jacek Caban f165e25e59 wininet: Handles handling clean up. 2011-02-03 13:15:18 +01:00
Huw Davies 354f97dff8 wininet: Add tests for querying INTERNET_OPTION_MAX_CONNS_PER_SERVER and INTERNET_OPTION_MAX_CONNS_PER_1_0_SERVER and fix typo in the implementation. 2011-01-19 16:54:13 +01:00
David Hedberg 46be41271c wininet: Make module handle scope global. 2010-12-20 12:47:39 +01:00
Andrew Eikum 3555226acf wininet: Clean up returned UrlPath for file protocol URLs. 2010-10-06 11:20:23 +02:00
Marcus Meissner b7f3aa61f4 wininet: Check for NULL lpwhh (Coverity). 2010-05-27 15:22:12 +02:00
Hans Leidekker 67b1eecaf2 wininet: Implement InternetQueryOption(INTERNET_OPTION_CONTEXT_VALUE). 2010-05-25 13:30:25 +02:00
Hans Leidekker 80dd367846 wininet: Pass the object header pointer to INET_QueryOption. 2010-05-25 13:30:18 +02:00
Hans Leidekker ae1f553d2b wininet: Implement InternetSetOption(INTERNET_OPTION_CONTEXT_VALUE). 2010-05-25 13:30:07 +02:00
Piotr Caban ee72094ca8 wininet: Added INTERNET_OPTION_ERROR_MASK flag handling to InternetSetOptionW. 2010-05-19 15:00:55 +02:00
Piotr Caban c0890590ab wininet: Fix trace messages. 2010-05-08 18:14:53 +02:00
Alexandre Julliard d982262302 wininet: Fix some pointer conversion warnings on 64-bit. 2010-04-09 13:43:23 +02:00
Juan Lang de6a0a86be wininet: Handle proxy entries of the form <proto>=<proxy>, and allow multiple proxies. 2010-03-15 15:54:10 +01:00
Andrew Eikum 0a84bd728a wininet: Handle PROXY_TYPE_PROXY | PROXY_TYPE_DIRECT per-connection flags. 2010-01-25 18:05:02 +01:00
Andrew Eikum b0ad0b9c0b wininet: Implement PER_CONN_FLAGS option. 2010-01-21 09:05:29 +01:00
Andrew Eikum c3af903ffb wininet: Implement PER_CONN_PROXY_SERVER option. 2010-01-21 09:05:26 +01:00
Andrew Eikum 7f3cbed8ff wininet: Pull proxy info gathering into its own function. 2010-01-21 09:05:18 +01:00
Andrew Eikum 60bb3f8ec2 wininet: Convert PER_CONN_OPTION_LIST from A to W in InternetSetOptionA. 2010-01-21 09:05:12 +01:00
Andrew Eikum deca2e5c0e wininet: Add Internet{Set,Query}Option tests, implement POLICY option. 2010-01-21 09:05:06 +01:00
Hans Leidekker 406b6e36d8 wininet: Free per-thread error info upon exit from an async procedure.
Found by Valgrind.
2009-12-22 13:48:26 +01:00
Jacek Caban 31cb9cfa79 wininet: Don't use INTERNET_SetLastError in InternetSetOptionW. 2009-12-21 15:36:53 +01:00
Jacek Caban b73e31c659 wininet: Return error directly from HTTP_Connect. 2009-12-21 15:36:53 +01:00
Jacek Caban 88ac3a381b wininet: Return error directly from INTERNET_AsyncCall. 2009-12-21 15:36:53 +01:00
Jacek Caban 5b76702e84 wininet: Set lpszUrlPath in InternetCrackUrlW if its length is 0. 2009-12-10 11:55:58 +01:00
Jacek Caban 5e8e358a71 wininet: lpszUrlPath should be NULL for URLs in file:///... format. 2009-12-10 11:55:33 +01:00
Jacek Caban 903d9c460d wininet: Remove a few more INTERNET_SetLastError calls. 2009-12-03 15:27:02 +01:00
Jacek Caban 1ee3ad476e wininet: Directly return error status from WriteFile implementations. 2009-11-30 12:48:33 +01:00
Hans Leidekker b707a523e3 wininet: Avoid accessing uninitialized memory in ConvertUrlComponentValue.
Found by valgrind.
2009-10-27 10:53:04 +01:00
Juan Lang b214fc62f1 wininet: Quiet a fixme. 2009-10-05 13:22:53 +02:00
Juan Lang 05a7e3d386 wininet: Correct user agent handling. 2009-10-05 13:22:47 +02:00
Juan Lang 41592569fd wininet: Unload OpenSSL when unloading wininet. 2009-10-02 17:11:49 +02:00
Andrew Eikum 0250eab25e wininet: Always extract #fragments in InternetCrackUrl. 2009-09-29 12:31:51 +02:00
Vincent Povirk 980bb171ee wininet: Allow +.- characters in url scheme.
According to RFC 1738, the plus, period, and hyphen characters are allowed in URL schemes.
2009-08-26 12:09:48 +02:00
Juan Lang 6ec60e26bc wininet: Implement proxy-related per-connection option queries. 2009-08-11 12:31:33 +02:00
Juan Lang 3ed82127c6 wininet: Fix memory leak querying proxy settings. 2009-08-11 12:31:23 +02:00
Jacek Caban 13974e9d5a wininet: Code clean up by using heap_strdup* functions. 2009-07-17 11:17:13 +02:00
Jacek Caban f598709212 wininet: Rename WININET_strdupW to standard heap_strdupW. 2009-07-17 11:16:42 +02:00
Jacek Caban 6d1601a850 wininet: Rename WININETAPPINFOW to appinfo_t. 2009-07-13 10:26:52 +02:00
Juan Lang 33d09e7364 wininet: Use struct sockaddr_storage in InternetCheckConnectionW. 2009-07-10 12:24:53 +02:00
Juan Lang 44bf025767 wininet: Change type of GetAddress from struct sockaddr_in * to struct sockaddr *. 2009-07-10 12:24:35 +02:00
Jacek Caban 44d633a902 wininet: Rename WININETHANDLEHEADER to object_header_t.
wininet struct names are very unreadable and I hope that patches 
renaming them will be accepted.
2009-07-08 20:13:00 +02:00
Hans Leidekker deeb3a9fcb wininet: Improve the PrivacyGet/SetZonePreferenceW stubs. 2009-06-25 14:34:14 +02:00
Alexandre Julliard e12ade9fb3 wininet: Add stubs for PrivacyGet/SetZonePreferenceW. 2009-04-27 20:04:34 +02:00
Jacek Caban ffea80cf0a wininet: Don't send INTERNET_STATUS_HANDLE_CLOSING notification for ftp session created by InternetOpenUrl. 2009-03-03 12:35:39 +01:00
Aric Stewart 101991255b wininet: Print better stubs for the internet options IE7 uses. 2009-02-12 11:52:47 +01:00
Hans Leidekker e1b916c142 wininet: Return success from per connection option stubs. Fully initialize the value. 2009-01-29 15:58:49 +01:00
Hans Leidekker b013ad168b wininet: Implement InternetReadFileExW. 2009-01-16 12:34:26 +01:00
Alexandre Julliard 4984d19072 wininet: Avoid pointer casts in traces. 2009-01-08 13:13:22 +01:00
Alexandre Julliard 82280618db wininet: Include ws2tcpip.h before anything else for the Windows build. 2008-12-09 11:33:25 +01:00
Andrew Talbot bc8d8e5211 wininet: Sign-compare warnings fix. 2008-12-08 22:03:00 +01:00
Hans Leidekker 15b046304c wininet: Set secure flag when scheme is https. 2008-12-08 16:05:38 +01:00
Hans Leidekker 5a1a26310e wininet: Append the extra info part in InternetCreateUrl{A, W}. 2008-12-02 14:08:26 +01:00
Michael Stefaniuc e6bd2881d8 wininet: Remove some superfluous casts. 2008-12-01 12:57:03 +01:00
Austin English d7c0cbdce5 wininet: Change a couple fixme's to warn's. 2008-11-06 11:09:48 +01:00
Hans Leidekker 4615b1c0b4 wininet: Fix buffer size query for InternetQueryOption(INTERNET_OPTION_PROXY). 2008-10-17 20:16:06 +02:00
Austin English 3d143253e4 wininet: Quiet a noisy fixme. 2008-10-15 14:02:20 +02:00
Hans Leidekker 096fa3b9f5 wininet: Option INTERNET_OPTION_CALLBACK is not settable. 2008-10-07 12:02:54 +02:00
Rob Shearman 7ffaafb265 wininet: Fix behaviour of InternetTimeFromSystemTimeA/W when dealing with invalid parameters. 2008-10-06 13:07:56 +02: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 573abdca4a wininet: Make WININET_AllocHandle 64-bit safe by using the correct type in the sizeof expression. 2008-10-01 11:44:25 -05:00
Hans Leidekker 3c43a6568f wininet: Properly initialize access type when no proxy is configured. 2008-08-04 13:04:16 +02:00
Jacek Caban 9f5748e6b4 wininet: Move remeining InternetQueryOption implementation to vtbl. 2008-07-21 12:19:12 +02:00
Jacek Caban 46f2628448 wininet: Moved InternetQueryOption(INTERNET_OPTION_PROXY) implementation to vtbl. 2008-07-21 12:18:57 +02:00
Jacek Caban 7426e7e055 wininet: Moved more InternetQueryOption implementation to vtbl. 2008-07-21 12:18:48 +02:00
Jacek Caban 13a95f1648 wininet: Move InternetQueryOption(INTERNET_OPTION_USER_AGENT) to vtbl. 2008-07-21 12:18:41 +02:00
Andrew Talbot 6a26bccb8e wininet: Remove unneeded address-of operators from array names. 2008-07-14 11:50:41 +02:00
Hans Leidekker fdc82adfcc wininet: Allocate buffers in InternetCrackUrlA. 2008-06-30 15:08:33 +02:00
Hans Leidekker c35a0428f6 wininet: Don't assume URL is null-terminated in InternetCrackUrlW. 2008-06-30 15:08:07 +02:00
Hans Leidekker 01e21366cb wininet: Avoid a crash on an invalid handle in InternetQueryOption. 2008-06-30 15:07:36 +02:00
Dan Kegel bcdb10a9ed wininet: InternetCrackUrlW: For URLs that have no urlpath, native clears lpszUrlPath. 2008-06-24 12:20:44 +02:00
Hans Leidekker e43cda6b54 wininet: Win64 compatibility fixes. 2008-06-24 11:45:27 +02:00
Hans Leidekker ed38af127d wininet: Improve some traces. 2008-06-24 11:45:03 +02:00
Hans Leidekker a6dc4a9a44 wininet: Return success from the InternetSetOption(INTERNET_OPTION_DISABLE_AUTODIAL) stub. 2008-06-02 13:46:00 +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
Dmitry Timoshkov 8f75f51c3f wininet: INTERNET_InternetOpenUrlW is an internal helper. 2008-05-26 19:46:05 +02:00
Hans Leidekker 6c8d315a72 wininet: Implement INTERNET_OPTION_USER_AGENT for InternetQueryOption. 2008-05-12 14:01:44 +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 c7f93666c3 wininet: Support http_proxy environment variable.
Based on a patch by Mike Hearn.
2008-03-31 13:00:10 +02: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
Marcus Meissner ed966469a4 wininet: Split out NULL ptr and function ptr check. 2008-03-15 11:29:16 +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 bdc81d9963 wininet: Make the reference count of WININETHANDLEHEADER thread-safe by using InterlockedIncrement/InterlockedDecrement. 2008-03-10 19:12:54 +01:00
Jacek Caban d597fd12fc wininet: Moved InternetReadFileExA to vtbl. 2008-03-03 20:45:31 +01:00
Jacek Caban ca39a55e88 wininet: Don't use INTERNET_ReadFile in HTTP_DrainContent. 2008-03-03 12:00:32 +01:00
Jacek Caban 3b4ca69e18 wininet: Move InternetReadFile to vtbl. 2008-03-03 12:00:20 +01:00
Jacek Caban 9a5c046129 wininet: Move INTERNET_STATUS_REQUEST_COMPLETE call from INTERNET_ReadFile. 2008-03-03 12:00:06 +01:00
Jacek Caban 3314184597 wininet: Move InternetQueryDataAvailable to vtbl. 2008-02-29 20:07:13 +01:00
Jacek Caban 8c45eecca7 wininet: Moved InternetFindNextFileW implementation to vtbl. 2008-02-28 10:44:42 +01:00
Jacek Caban 0e33eee9a2 wininet: Use vtbl for InternetSetOption(INTERNET_OPTION_[SEND|RECEIVE]_TIMEOUT) implementation. 2008-02-27 14:52:25 +01:00
Jacek Caban 1ffcfbce85 wininet: Use vtbl in InternetWriteFile implementation. 2008-02-27 14:52:24 +01:00
Jacek Caban 7dc9bf677b wininet: Moved close_connection to vtbl. 2008-02-27 14:52:24 +01:00
Jacek Caban 5a535d6b23 wininet: Moved handle destructor to vtbl. 2008-02-27 14:52:24 +01:00
Jacek Caban 928c9f0984 wininet: Fixed version returned by INTERNET_OPTION_VERSION. 2008-02-27 14:52:24 +01:00
Maarten Lankhorst 60401737c6 wininet: Add stub for INTERNET_OPTION_PER_CONNECTION. 2008-02-26 11:19:24 +01:00
Jacek Caban 6ce88e0aab wininet: Added correct InternetQueryOption(INTERNET_OPTION_DATAFILE_NAME) implementation. 2008-02-15 10:00:06 +01:00
Jacek Caban d7a49e8147 wininet: Added beginning support for HTTP cache files. 2008-02-15 10:00:03 +01:00
Andrew Talbot 45481db078 wininet: Remove unneeded casts. 2008-02-05 12:19:37 +01:00
Austin English 0e4adae973 Spelling fixes. 2008-01-07 13:41:01 +01:00
Johannes Stezenbach 7e18416e80 wininet: Implement support for INTERNET_OPTION_VERSION in InternetQueryOptionW. 2007-12-23 14:17:12 +01:00
Roy Shea 91d07f6995 wininet: Added check of dwStructSize required by Windows in calls to InternetCrackUrlA. 2007-12-05 12:05:37 +01:00
EA Durbin bc745fa4c4 wininet: Return true for case INTERNET_OPTION_SECURITY_FLAGS. 2007-11-07 12:02:30 +01:00
Detlef Riekenberg 9b43174f3f wininet: Fix flags and SetLastError for InternetCanonicalizeUrlA/W. 2007-10-16 13:55:02 +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 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
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 1ee9ea91a5 wininet: Fix reference count on internet handle for asynchronous InternetReadFileEx call. 2007-08-22 12:18:59 +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 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
Huw Davies 00631b2480 wininet: Stub for InternetQueryFortezzaStatus(). 2007-07-19 14:38:42 +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
Rob Shearman c16bb07186 wininet: Send the correct callbacks during InternetReadFileExA calls. 2007-06-06 12:10:55 +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
Andrew Talbot 8ee390f6f5 wininet: Exclude unused headers. 2007-05-29 12:10:17 +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
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
Hans Leidekker 13a04ac0a8 wininet: Fix buffer size calculation in INTERNET_InternetOpenUrlW.
Spotted by Ron Yorston.
2007-03-13 20:31:22 +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
Hans Leidekker 316383dd49 wininet: Don't discard the extra info part of a URL in InternetOpenUrl. 2007-02-20 11:39:00 +01:00
Francois Gouget e66d1cd5e9 wininet: Consistenly use INTERNET_SetLastError(). 2007-01-10 11:58:47 +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 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 02c89e5c6f wininet: Remove the custom thread pool implementation and use QueueUserWorkItem instead. 2007-01-04 21:13:53 +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