Commit Graph

609 Commits

Author SHA1 Message Date
Jacek Caban 0133683c46 wininet: Added support for undocumented InternetQueryOption(98). 2012-06-05 10:23:54 +02:00
Jacek Caban 37e483d567 wininet: Use CRLF separator in INTERNET_CERTIFICATE_INFO. 2012-05-30 17:17:56 +02:00
Jacek Caban 2ed97ebe43 wininet: Get rid of no longer used serverName and serverPort from http_session_t. 2012-05-29 10:44:08 +02:00
Jacek Caban 868575a416 wininet: Store certificate error information in security flags. 2012-05-25 16:58:56 +02:00
Jacek Caban f8f2273b7c wininet: Added INTERNET_OPTION_SETTINGS_CHANGED semi-stub implementation. 2012-05-25 16:48:16 +02:00
Jacek Caban 95c1b74fc9 wininet: Store server_t on the list until clean up. 2012-05-25 16:48:11 +02:00
Jacek Caban f3dd75d8a4 wininet: Set SECURITY_FLAG_STRENGTH_* flags in NETCONN_secure_connect. 2012-05-25 16:48:06 +02:00
Jacek Caban 90ec92dfd1 wininet: Set SECURITY_FLAG_SECURRE in NETCON_secure_connect. 2012-05-25 16:48:01 +02:00
Jacek Caban 59a0ab54cb wininet: Store security flags in server_t. 2012-05-25 16:47:57 +02:00
Jacek Caban 3aeb8eb6b6 wininet: Store server_t in http_request_t. 2012-05-25 16:47:52 +02:00
Jacek Caban 27af81972f wininet: Added real implementation of InternetQueryOption(INTERNET_OPTION_REQUEST_FLAGS). 2012-05-24 20:08:46 +02:00
Alexander Morozov ef95a79384 wininet: Add "Content-Disposition" field. 2012-05-24 19:53:43 +02:00
Jacek Caban c0400560b5 wininet: Moved querying INTERNET_OPTION_REQUEST_FLAGS implementation to HTTPREQ_QueryOption. 2012-05-23 19:12:11 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Piotr Caban 0b42100615 wininet: Store connect timeout in all layers. 2012-05-14 17:46:31 +02:00
Jacek Caban 07e5b87feb wininet: Fixed typo in tests and accompanying implementation. 2012-05-14 17:42:13 +02:00
Jacek Caban 2aa3d697a3 wininet: Set status code OK for responses without headers. 2012-05-03 20:44:14 +02:00
Jacek Caban 0d76489353 wininet: Added special case for HTTP_QUERY_STATUS_CODE in HttpQueryInfo. 2012-05-03 20:44:13 +02:00
Jacek Caban 797a17bb2d wininet: Use stored status code in HTTP_HttpEndRequestW. 2012-05-03 20:44:13 +02:00
Jacek Caban 4cf3f78542 wininet: Use stored status code in HTTP_HttpSendRequestW. 2012-05-03 20:44:12 +02:00
Jacek Caban 5240e40b69 wininet: Store status code in http_request_t and use it in set_content_length. 2012-05-03 20:44:12 +02:00
Jacek Caban 905ede6c6d wininet: Use hostname stored in server_t in NETCON_secure_connect. 2012-04-30 19:32:58 +02:00
Jacek Caban 4863257e30 wininet: Added default fallback for setting handle options and use it for INTERNET_OPTION_CALLBACK. 2012-03-08 17:59:02 +01:00
Jacek Caban dfa9f4bc26 wininet: Insert custom headers only once in HTTP_HttpSendRequestW. 2012-01-24 20:43:14 +01:00
Jacek Caban ac26517ac9 wininet: Correctly detect https connections and custom port numbers in HTTP_HandleRedirect. 2012-01-24 20:43:13 +01:00
Hans Leidekker 6522393265 wininet: Add support for setting and retrieving the send/receive timeouts. 2012-01-16 12:16:41 +01:00
Hans Leidekker 848cd8a2f5 wininet: Add support for setting and retrieving the connect timeout. 2012-01-16 12:16:37 +01:00
Hans Leidekker 72273a0786 wininet: Implement the connect timeout. 2012-01-16 12:16:30 +01:00
Pierre Schweitzer 85e2b4d7df wininet: Fix handle leak. 2012-01-03 12:37:36 +01:00
Jacek Caban 892d3cd46b wininet: Properly handle closed connection in HTTP_HttpEndRequestW. 2011-12-08 18:04:30 +01:00
Andy Clayton da11075000 wininet: Avoid calling HTTP_ReceiveRequestData before reading headers. 2011-11-23 18:08:48 +01:00
Francois Gouget 17929b925e wininet: Give a name to the critical sections, make them static and delete them when unloading the dll. 2011-11-16 17:02:22 +01:00
Juan Lang 044f645477 wininet: Implement ShowX509EncodedCertificate. 2011-11-01 10:36:27 +01:00
André Hentschel adea3c5dda wininet: Add a stub for ShowX509EncodedCertificate. 2011-10-31 17:52:02 +01:00
Juan Lang ad3e22d5ee wininet: Fix off by one error parsing RFC 850 dates. 2011-10-25 16:57:25 +02:00
Juan Lang aeca2f98fa wininet: Accept RFC 850 dates in HTTP headers. 2011-10-24 11:15:59 +02:00
Hans Leidekker 85e9e21929 wininet: Ignore the accept types array in HttpOpenRequestA if there are invalid pointers. 2011-09-27 16:24:26 +02:00
André Hentschel d8f036e4dc wininet: Don't return a relative path when building the proxy url request. 2011-08-24 11:58:13 +02:00
André Hentschel 0fda135f3f wininet: Use the constants from the wininet header. 2011-08-24 11:58:13 +02:00
Jacek Caban 0281b7d30b wininet: Fixed realm allocation in cache_basic_authorization. 2011-07-28 18:37:40 +02:00
Jacek Caban cfdc539972 wininet: Set content_length when we reach end of data in netconn_read. 2011-06-10 15:28:37 +02:00
Jacek Caban 8e37ed551a wininet: Don't pass handle to INTERNET_REQUEST_COMPLETE unless the request is opened via InternetPoenUrl. 2011-06-10 15:28:32 +02:00
Jacek Caban c0293df46a wininet: Moved INTERNET_STATUS_REQUEST_COMPLETE notifications sending to separated function. 2011-06-10 15:28:26 +02:00
Hans Leidekker 9acd1ef15f wininet: Consistently use the allocation macros. 2011-06-01 15:16:53 +02:00
Hans Leidekker 14d4d1957d wininet: Don't change the verb if the server response is HTTP_STATUS_REDIRECT_KEEP_VERB. 2011-06-01 15:16:49 +02:00
Jacek Caban 193da884ad wininet: Correctly handle closed socket in HTTP_ReceiveRequestData. 2011-05-23 16:25:42 +02:00
Jacek Caban 2e2ed52cfb wininet: Use set_cookie directly in HTTP_ProcessCookies. 2011-05-19 19:37:26 +02:00
Jacek Caban dce9181c91 wininet: Use get_cookie directly in HTTP_InsertCookies. 2011-05-19 19:37:26 +02:00
Juan Lang d797e5fc7e wininet: Handle invalid HTTP time of "0". 2011-05-13 17:05:28 +02:00
Jacek Caban a890e3a144 wininet: Fixed handling of 204 No Content response. 2011-05-13 17:05:27 +02:00
Jacek Caban 086eb61c84 wininet: Don't depend on is_end_of_read_data in HTTPREQ_Read. 2011-05-13 17:05:27 +02:00
Jacek Caban 8a1df203ae wininet: Added support for persistent HTTP connections. 2011-05-10 18:57:23 +02:00
Karsten Elfenbein 5b173cb405 wininet: Follow 307 temporary redirect. 2011-05-09 11:44:29 +02:00
Jacek Caban 4c1c5fe64c wininet: Moved connected check out of NETCON_set_timeout. 2011-05-04 17:26:51 +02:00
Jacek Caban 59f2e837eb wininet: Allocate buffer for host name in HTTP_HttpOpenRequestW only if needed. 2011-05-02 12:48:05 +02:00
Jacek Caban aa612ec39b wininet: Get rid of useless read_ret in netconn_read. 2011-05-02 12:48:00 +02:00
Jacek Caban 55b2722816 wininet: Use wrappers for HeapReAlloc calls. 2011-04-22 12:59:17 +02:00
Jacek Caban 354a74e004 wininet: Use wrappers for HeapAlloc calls. 2011-04-21 16:53:42 +02:00
Juan Lang 0b8bfd9736 wininet: Honor security flags specified when opening a connection. 2011-04-07 17:48:28 +02:00
Jacek Caban 9e30a2f5ee wininet: Check NETCON_connected in netconn_end_of_data. 2011-04-06 21:17:41 +02:00
Michael Stefaniuc 9bf247d44e wininet: Move "inline" right after the storage specifier. 2011-04-05 16:23:02 +02:00
Jacek Caban ccd11eb7d6 wininet: Abstract different transfer and content encoding reading to layered structures. 2011-04-04 11:52:56 +02:00
André Hentschel 1a39e29c3b wininet: Port numbers are unsigned. 2011-03-28 17:26:14 +02:00
Jacek Caban 685daf2006 wininet: Ensure that we have data to report before sending INTERNET_STATUS_REQUEST_COMPLETE in HTTP_HttpEndRequestW. 2011-03-17 10:43:40 +01:00
Jacek Caban 2bb3f4fa75 wininet: Decompress gzip data in refill_buffer to ensure that we have the data to report. 2011-03-17 10:43:31 +01:00
Jacek Caban ec96604881 wininet: Release gzip_buffer when opening new connection. 2011-03-15 17:14:07 +01:00
Francois Gouget 4bacb3f24e wininet: Avoid a conflict with the sun macro when compiling on Solaris. 2011-03-14 12:15:35 +01:00
Juan Lang 011b26b1c6 wininet: Store headers in url cache entries. 2011-03-09 12:26:22 +01:00
Juan Lang b9673bcc4d wininet: Fully initialize time variable (valgrind). 2011-03-08 12:53:12 +01:00
Juan Lang b2ed9c5967 wininet: Fix a comment. 2011-03-07 15:01:10 +01:00
Juan Lang 7685dad81d wininet: Remove a no-op trinary expression. 2011-03-07 15:01:03 +01:00
Juan Lang 28e9229336 wininet: Store entries in url cache with valid last-modified date. 2011-03-07 15:00:59 +01:00
Juan Lang 666353d1a6 wininet: Move creating cache file to a helper function. 2011-03-04 16:25:58 +01:00
Juan Lang 488c2d0c36 wininet: Support the Cache-Control max-age directive for setting url cache entry expiration. 2011-03-04 16:25:58 +01:00
Juan Lang 2d323430cb wininet: Default to 10 minutes expiration for cache entries. 2011-03-04 16:25:58 +01:00
Juan Lang ab16c75c48 wininet: Default to 10 minutes expiration for cache entries. 2011-03-04 16:25:58 +01:00
Juan Lang 0b5ea6f970 wininet: Store entries in url cache with valid expiration date. 2011-03-04 16:25:58 +01:00
Juan Lang b9c348a0b3 wininet: Use correct scheme for cache entries. 2011-03-03 17:47:14 +01:00
Juan Lang 2098006d68 wininet: De-Hungarian HTTP request member names. 2011-03-02 12:29:19 +01:00
Juan Lang 8e05039102 wininet: De-Hungarian session member names. 2011-03-02 12:29:16 +01:00
Juan Lang 7243156bc1 wininet: De-Hungarian appinfo member names. 2011-03-02 12:29:13 +01:00
Juan Lang 2c6ad546cd wininet: De-Hungarian auth cache member names. 2011-03-02 12:29:10 +01:00
Juan Lang b49b2430ee wininet: Rename variables for readability. 2011-03-02 12:29:07 +01:00
Jacek Caban 923498da03 wininet: Moved freeing object to WININET_Release. 2011-02-04 15:25:32 +01:00
Jacek Caban a073c66f0d wininet: Moved creation of an object and allocating handles to common function.
Fixes a few leaks.
2011-02-03 13:15:18 +01:00
Jacek Caban f165e25e59 wininet: Handles handling clean up. 2011-02-03 13:15:18 +01:00
Jacek Caban e86353fd30 wininet: Make sure to initialize the whole z_stream struct (valgrind). 2011-01-12 18:12:42 +01:00
Austin English 1c7d349f26 wininet: Add a stub for InternetShowSecurityInfoByURL. 2010-11-25 16:57:13 +01:00
Juan Lang 80545ef966 wininet: Secure flag is set in the request, not in the session. 2010-10-01 17:48:05 +02:00
Juan Lang 948173b7f4 wininet: Set cipher strength bits when querying INTERNET_OPTION_SECURITY_FLAGS. 2010-10-01 15:21:18 +02:00
Juan Lang 887aeb6a09 wininet: Support querying the cipher strength of an SSL connection. 2010-10-01 15:20:49 +02:00
Juan Lang 56ebc04ab6 wininet: Returned certificate strings are always ASCII. 2010-10-01 15:20:41 +02:00
Juan Lang 0e4e2a378a wininet: More completely implement querying INTERNET_OPTION_SECURITY_FLAGS. 2010-09-30 11:14:39 +02:00
Juan Lang 77c4ade08b wininet: Store security flags in WININET_NETCONNECTION. 2010-09-30 11:13:48 +02:00
Hans Leidekker 94deb85d12 wininet: Handle HTTP_STATUS_REDIRECT_METHOD. 2010-08-27 12:08:41 +02:00
Piotr Caban 75481bde85 wininet: Commit URL cache entry when cache file is closed. 2010-07-26 09:58:21 +02:00
Piotr Caban 21ced8ddc8 wininet: Allow HTTPREQ_ReadFileEx read more then one data chunk. 2010-07-20 14:40:32 +02:00
Piotr Caban 0736ca71e7 wininet: Don't report error in read_gzip_data when to much data was cached. 2010-07-20 14:40:32 +02:00
Piotr Caban c398e6fc77 wininet: Cache non basic authorization data. 2010-07-19 14:38:16 +02:00
Piotr Caban 98fb747aa9 wininet: Delete authorization data on unsucessful login. 2010-07-19 14:38:15 +02:00
Piotr Caban 3cfc7132be wininet: Fix reporting errors in callbacks. 2010-07-19 14:38:15 +02:00
Piotr Caban 898531de80 wininet: Remove get_avail_data check from HTTPREQ_ReadFileExA. 2010-07-01 13:44:02 +02:00
Piotr Caban ee68473fe5 wininet: Reconnect if persistent connection was closed by server. 2010-06-29 15:20:56 +02:00
Hans Leidekker 80dd367846 wininet: Pass the object header pointer to INET_QueryOption. 2010-05-25 13:30:18 +02:00
Piotr Caban 224af0d0e7 wininet: Fix variables values after redirection in HTTP_HttpSendRequestW.
Moved dwContentLength reset after HTTP_DrainContent (this function 
disconnects when dwContentLength is set to ~0u).
2010-05-20 16:48:37 +02:00
Michael Stefaniuc 2c07791c5b wininet: Remove redundant "not NULL/0" checks (coccicheck). 2010-05-20 13:47:52 +02:00
Piotr Caban 8dde5c5168 wininet: Combine certificate errors in HTTP_OpenConnection. 2010-05-19 15:01:00 +02:00
Piotr Caban 4ba60d265a wininet: Fix callbacks sent on connection error. 2010-05-19 15:00:43 +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
Hans Leidekker 911d0df691 wininet: Fix a memory leak.
Found by Valgrind.
2010-02-23 13:31:07 +01:00
Hans Leidekker 2ed570ecc6 wininet: Fix handling of a response without headers. 2010-02-22 13:16:02 +01:00
Hans Leidekker e5180c101b wininet: Fix a memory leak.
Found by Valgrind.
2010-01-05 16:28:48 +01:00
Jacek Caban b73e31c659 wininet: Return error directly from HTTP_Connect. 2009-12-21 15:36:53 +01:00
Jacek Caban e1958a67d6 wininet: Don't use INTERNET_SetLastError in HttpSendRequestA. 2009-12-21 15:36:53 +01:00
Hans Leidekker 68453a5251 wininet: Always set last error in HttpSendRequest{,Ex}. 2009-12-21 15:01:25 +01:00
Jacek Caban 78b2cedaa6 wininet: Make sure to not read over chunk end in read_gzip_data. 2009-12-17 12:53:23 +01:00
Jacek Caban 9823c23927 wininet: Directly return error status from HTTP_HttpQueryInfoW. 2009-12-14 12:07:52 +01:00
Jacek Caban 2d1c4e6928 wininet: Correctly handle dwContentRead for gzip encoded requests. 2009-12-09 13:13:53 +01:00
Juan Lang 66b4ad208d wininet: Fix an apparent typo. 2009-12-09 12:02:30 +01:00
Juan Lang 3cd54553f3 wininet: Trace more parameters to HTTP_GetCustomHeaderIndex. 2009-12-09 12:02:26 +01:00
Hans Leidekker 4a22c88b37 wininet: Cleanup any existing cache file before creating a new one.
Otherwise we leak the file name and handle when a request is sent again.
Found by Valgrind.
2009-12-07 14:18:29 +01:00
Juan Lang b967fde0a8 wininet: Correct length of data passed to callback when resolving a name. 2009-12-04 14:34:57 +01:00
Jacek Caban a9ecdc6024 wininet: Directly return error status from HTTP_HandleRedirect. 2009-12-03 15:27:22 +01:00
Jacek Caban 741b6611fb wininet: Directly return error status fro HTTP_HttpEndRequest. 2009-12-03 15:27:14 +01:00
Jacek Caban c952e81a89 wininet: Directly return error from HTTP_HttpSendRequest. 2009-12-03 15:27:08 +01:00
Jacek Caban 34fcbb5f75 wininet: Make HTTP_HttpSendRequestW static and avoid its forward declaration. 2009-12-01 12:59:36 +01:00
Jacek Caban e974965185 wininet: Directly return error status from HTTP_HttpAddRequestHeadersW. 2009-12-01 12:59:23 +01:00
Jacek Caban 85a057e186 wininet: Directly return error status from HTTP_HttpOpenRequestW. 2009-12-01 12:59:16 +01:00
Jacek Caban 47c71fcd0a wininet: Make HTTP_HttpOpenRequestW static and avoid forward its declaration. 2009-12-01 12:59:07 +01:00
Jacek Caban b01d58428b wininet: Directly return error status from NETCON_init. 2009-12-01 12:58:58 +01:00
Jacek Caban 1d96e20e8a wininet: Directly return error status from refill_buffer. 2009-12-01 12:58:52 +01:00
Jacek Caban 358e7b7c8a wininet: Directly return error status from NETCON_recv. 2009-12-01 12:58:34 +01:00
Jacek Caban 4e3eabd6fa wininet: Don't use INTERNET_SetLastError in HttpSendRequestW. 2009-11-30 12:48:52 +01:00
Jacek Caban 36cb1ef3d3 wininet: Directly return error status from HTTP_OpenConnection. 2009-11-30 12:48:40 +01:00
Jacek Caban 1ee3ad476e wininet: Directly return error status from WriteFile implementations. 2009-11-30 12:48:33 +01:00
Jacek Caban b77868cbfd wininet: Dorectly return error status from NETCON_secure_connect and NETCON_send. 2009-11-30 12:48:27 +01:00
Jacek Caban bf1da4c857 wininet: Directly return error status from NETCON_connect. 2009-11-30 12:48:20 +01:00
Jacek Caban cff77d602c wininet: Directly return error status from NETCON_create. 2009-11-30 12:48:09 +01:00
Hans Leidekker 4990ca0ea3 wininet: Avoid a crash on NULL lpcszHeader in HttpSendRequestExW. 2009-11-17 16:05:36 +01:00
Hans Leidekker e62fdaf0f1 wininet: Avoid accessing uninitialized memory in HttpSendRequestExW.
Found by valgrind.
2009-10-27 10:53:08 +01:00
Aric Stewart fc5089349d wininet: Cache basic authentication values based on realm and host. 2009-10-13 14:19:47 +02:00
Erik Inge Bolsø 5af1a49738 wininet: Add test for response without headers, avoid crash. 2009-09-30 14:31:57 +02:00
Hans Leidekker 50fef74131 wininet: Destroy authorization info on failure in HTTP_DoAuthorization.
This makes sure the app can retry authorization, e.g. when username and
password are not supplied upfront and there are no cached credentials.
2009-09-02 14:41:40 +02:00
Jacek Caban 4dfec39b6f wininet: Don't free gzip_stream in HTTPREQ_CloseConnection. 2009-08-24 15:17:12 +02:00
Juan Lang 6ae6ea99b4 wininet: Partially implement InternetQueryOption for INTERNET_OPTION_DIAGNOSTIC_SOCKET_INFO. 2009-08-11 12:32:24 +02:00
Jacek Caban 3858e35432 wininet: Explicity delete Content-Length header for gzip encoded connection. 2009-08-03 14:59:35 +02:00
Hans Leidekker fa4c25ddf4 wininet: Correct handling of redirected HEAD requests. 2009-07-22 14:42:49 +02:00
Jacek Caban 97936252dd wininet: Code clean up by using heap_strdup* functions. 2009-07-17 11:21:59 +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