Commit Graph

664 Commits

Author SHA1 Message Date
Michael Müller 81b136fe1c wininet: Fix memory leak by not calling get_cookie_header twice. 2015-05-18 14:06:12 +09:00
Nikolay Sivov b2cb6b3e26 wininet: Make sure we pass strictly 0/1 to a helper as BOOL value. 2015-05-14 14:20:56 +09:00
Hans Leidekker 0b69c706b9 wininet: Reuse cached basic authorization across sessions. 2015-05-01 15:15:02 +09:00
Jacek Caban 07520fbf12 wininet: Initialize send and receive timeouts to 0. 2015-04-24 22:03:53 +09:00
Daniel Lehman c921deebf1 wininet: Eat terminator on last chunk. 2015-03-06 12:56:29 +09:00
Alexandre Julliard 5bf29fb897 wininet: Hardcode the base64 table to avoid ugly macros. 2015-03-04 21:50:35 +09:00
Michael Müller 7c8df7eb5e wininet: Allow Accept-Encoding for HTTP/1.0 requests. 2015-02-24 21:55:48 +09:00
Jacek Caban 6a0eb2ddd7 wininet: Don't include ws2tcpip.h after zlib.h. 2015-02-16 19:19:25 +09:00
Jacek Caban 47778f95fa wininet: Moved inet_ntop call to GetAddress. 2015-02-16 19:19:10 +09:00
Jacek Caban 5436fef807 wininet: Always use winsock sockets. 2015-02-13 21:47:13 +09:00
Hans Leidekker de64feaa5c wininet: Use a helper function to remove request headers. 2014-12-19 22:36:14 +01:00
André Hentschel cdf2412203 wininet: Remove unused strings (Clang). 2014-12-04 14:03:28 +01:00
Michael Stefaniuc 06afdda617 wininet: Simplify while loop conditions (PVS-Studio). 2014-10-31 10:50:38 +09:00
Daniel Lehman f3455da6ff wininet: Remove custom port handling in HTTP_HandleRedirect. 2014-10-28 13:43:54 +09:00
Hans Leidekker 462f56d468 wininet: Protect the request headers array with a critical section. 2014-09-25 15:20:19 +02:00
Jacek Caban e24ce4c128 wininet: Added new cookie_set_t type and use it in get_cookie. 2014-07-15 22:39:09 +02:00
Jacek Caban ffec675b4f wininet: Use stored server name in HTTP_InsertCookies. 2014-07-14 17:21:35 +02:00
Jacek Caban db441cf58f wininet: Added support for INTERNET_COOKIE_HTTPONLY flag to InternetGetCookieEx. 2014-07-04 14:51:44 +02:00
Jacek Caban 314e295820 wininet: Added support for INTERNET_COOKIE_HTTPONLY flag to InternetSetCookieEx. 2014-07-04 14:51:40 +02:00
Sebastian Lackner 8fd44a3d2b wininet: Fix invalid memory access in HTTP_QUERY_RAW_HEADERS (Valgrind). 2014-07-02 19:57:14 +02:00
Jacek Caban 4e53f0caa0 wininet: Don't try to read content in response to HEAD request. 2014-06-25 14:41:47 +02:00
Jacek Caban 153abe0fa7 wininet: Use current server in HTTP_GetRedirectURL. 2014-06-19 17:08:57 +02:00
Jacek Caban a33ae13f7f wininet: Update hostPort in HTTP_HandleRedirect. 2014-06-19 17:08:55 +02:00
Jacek Caban 7ab99b5c48 wininet: Don't change hostPort in HTTP_HttpOpenRequestW. 2014-06-19 17:08:53 +02:00
Sebastian Lackner 2e0921d065 wininet: Don't update *lpdwIndex if HttpQueryInfoW fails with ERROR_INSUFFICIENT_BUFFER. 2014-06-18 16:31:42 +02:00
Hans Leidekker d6a59f755e wininet: Only set the content length header if it's not explicitly set by the user. 2014-05-26 21:15:37 +09:00
Hans Leidekker 5b56624a1b wininet: Handle secure proxy connections inside the main loop.
This adds support for authenticated secure proxy connections.
2014-05-06 13:49:09 +02:00
Nikolay Sivov d87724e626 wininet: Remove some dead code (Coverity). 2014-04-15 21:03:54 +02:00
Jacek Caban 22e75c69ab wininet: Added support for raw deflate content encoding. 2014-03-05 19:17:00 +01:00
Jacek Caban 2667a5376c wininet: Get rid of no longer needed hack in gzip_read that prevents consuming the whole input buffer until we're at the end of stream. 2014-03-05 19:16:58 +01:00
Jacek Caban b7c47c033c wininet: Use non-blocking reads in netconn_drain_content. 2014-03-05 19:16:55 +01:00
Jacek Caban f9a16d70e2 wininet: Get rid of no longer needed size calculation in netconn_read. 2014-03-05 19:16:53 +01:00
Jacek Caban 0767e06044 wininet: Use blocking_mode_t instead of flags in NETCON_recv. 2014-03-05 19:16:46 +01:00
Jacek Caban ac58c3e8bc wininet: Renamed read_mode_t to blocking_mode_t. 2014-03-05 19:16:41 +01:00
Frédéric Delanoy 43d6a45c4e wininet: Constify some character strings. 2013-12-19 17:09:14 +01:00
Hans Leidekker 6c7c15059a wininet: Separate socket destruction from destruction of the connection object. 2013-12-11 12:57:01 +01:00
Ričardas Barkauskas 12e6c14e7c wininet: Move handling of existing request connections to open_http_connection. 2013-11-26 10:21:03 +01:00
Ričardas Barkauskas 992c2bd3e5 wininet: Reset data stream for existing request connections. 2013-11-26 10:20:58 +01:00
Hans Leidekker a448bbf880 wininet: Reading past end-of-file in chunked mode returns success.
Found by Andrew Eikum.
2013-11-21 19:39:02 +01:00
Ričardas Barkauskas 6c0ee62d7a wininet: Check if connection is alive before sending request. 2013-11-07 13:15:50 +01:00
Frédéric Delanoy b4e4831d1b wininet: Use BOOL type where appropriate. 2013-10-10 10:44:49 +02:00
Jacek Caban 47f490e1f6 wininet: Added support for locking HTTP request files. 2013-10-04 17:46:23 +02:00
Jacek Caban c1bab59e81 wininet: Forward InternetLockRequestFile to handle-specific functions. 2013-10-04 17:46:23 +02:00
Jacek Caban c58317b5b4 wininet: Moved request file info to separated struct. 2013-10-04 17:46:23 +02:00
Hans Leidekker c0e1dda04c wininet: Don't assume that end of chunk means end of stream. 2013-09-20 11:11:54 +02:00
Hans Leidekker daa0acdbcf wininet: Fix calculation of content length from chunk size. 2013-09-03 17:00:40 +02:00
Hans Leidekker 1bf936c900 wininet: Replacing a header with an empty value deletes it. 2013-08-29 19:56:18 +02:00
Hans Leidekker 0c9321eb0f wininet: Handle NULL input string in str_to_buffer. 2013-07-31 22:26:57 +02:00
Hans Leidekker 5f346f63ba wininet: Ignore INTERNET_FLAG_NO_CACHE_WRITE only for GET requests. 2013-07-31 22:26:57 +02:00
Jacek Caban 10389b272d wininet: Ignore missing status text in response headers. 2013-07-19 16:27:31 +02:00
Daniel Lehman d853009ef8 wininet: Remove old FIXME about bypassing proxy. 2013-05-08 20:43:23 +02:00
Daniel Lehman cbeb11b5f8 wininet: Copy should_bypass_proxy and domain_matches from winhttp. 2013-05-08 20:43:22 +02:00
Piotr Caban 33d62f3f17 wininet: Handle NULL req->netconn in INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT query. 2013-05-03 21:39:25 +02:00
Piotr Caban dd35601b07 wininet: Handle NULL req->netconn in INTERNET_DIAGNOSTIC_SOCKET_INFO query. 2013-05-03 21:39:24 +02:00
Piotr Caban 422fb313d3 wininet: Get rid of rawHeaders field in request_t structure. 2013-04-30 18:44:47 +02:00
Piotr Caban 566b14479c wininet: Add current raw headers to cache. 2013-04-30 18:44:47 +02:00
Piotr Caban 7883976722 wininet: Delete Content-Encoding header when uncompressing data. 2013-04-30 18:44:46 +02:00
Piotr Caban 259ffa2a1a wininet: Take HTTP_QUERY_FLAG_REQUEST_HEADERS flag into account when creating HTTP_QUERY_RAW_HEADERS data information. 2013-04-30 18:44:46 +02:00
Piotr Caban e092233396 wininet: Create raw HTTP headers dynamically. 2013-04-30 18:44:46 +02:00
Hans Leidekker 736a4239a0 wininet: Always return errors from NETCON_recv. 2013-04-25 13:40:02 +02:00
Hans Leidekker 2145b637fd wininet: Get rid of the clear parameter to HTTP_GetResponseHeaders. 2013-04-25 13:40:01 +02:00
Piotr Caban 4c4a922e27 wininet: Improve searching for no-store header in HTTP response. 2013-04-24 14:32:34 +02:00
Hans Leidekker 54df9c9101 wininet: Include the Proxy-Connection header in the keep-alive check. 2013-04-22 12:37:51 +02:00
Hans Leidekker bedf296a27 wininet: Add support for INTERNET_OPTION_PROXY_USERNAME and INTERNET_OPTION_PROXY_PASSWORD. 2013-04-22 12:37:51 +02:00
Hans Leidekker 6f78a63b5b wininet: Don't strip the port from URLs returned by InternetQueryOption(INTERNET_OPTION_URL). 2013-04-22 12:37:51 +02:00
Hans Leidekker 578a1a6b26 wininet: Fix a request string leak. 2013-04-22 12:37:51 +02:00
Piotr Caban ef4db477f0 wininet: Correctly set SYSTEMTIME year in HTTP_HttpQueryInfoW. 2013-04-01 18:17:28 +02:00
Jacek Caban c6005aabcd wininet: Use parsed status_code to test for CONTINUE HTTP response. 2013-03-15 11:49:59 +01:00
Piotr Caban bbbc6d119b wininet: Don't create cache file if it's forbidden. 2013-03-13 17:11:57 +01:00
Andrew Talbot ae77b3d368 wininet: Avoid signed-unsigned integer comparisons. 2013-03-13 11:29:29 +01:00
Jacek Caban d1ce8ba053 wininet: Don't pass expected cache file size to CreateUrlCacheEntry if it's unknown. 2013-03-08 18:11:05 +01:00
Jacek Caban 7d8c8af9d7 wininet: Fixed crash in chunked_read if netconn is not available. 2013-03-07 19:35:03 +01:00
Hans Leidekker 6a609c21bb wininet: Port resolution doesn't depend on the secure flag. 2013-03-06 15:10:44 +01:00
Jacek Caban c6ee6d6c9e wininet: Renamed useSSL to secure and set it after secure connection is established. 2013-03-01 18:03:30 +01:00
Jacek Caban 8ca611a598 wininet: Moved dialog-related functions to dialog.c. 2013-02-26 18:18:46 +01:00
Jacek Caban 376a4f7837 wininet: Don't call get_avail_data multiple times in HTTP_ReceiveRequestData. 2013-02-26 18:18:40 +01:00
Jacek Caban 851866e22a wininet: Set available bytes in InternetQueryDataAvailable even if it ends up in async call. 2013-02-14 20:05:05 +01:00
Jacek Caban f824e20010 wininet: Get rid of WORKREQ* types. 2013-01-30 13:05:28 +01:00
Jacek Caban 7ca22d701d wininet: Moved WORKREQ_HTTPENDREQUESTW out of WORKREQUEST. 2013-01-29 17:50:17 +01:00
Jacek Caban 023abdacdb wininet: Moved WORKREQ_HTTPREADFILEEX out of WORKREQUEST. 2013-01-28 14:05:55 +01:00
Jacek Caban 940a67c8a5 wininet: Moved WORKREQ_HTTPSENDREQUESTW out of WORKREQUEST. 2013-01-28 14:05:49 +01:00
Jacek Caban 63e6a4b2e1 wininet: Moved WORKREQUEST allocation to INTERNET_AsyncCall callers. 2013-01-28 14:05:46 +01:00
Jacek Caban 0c02e35841 wininet: Properly handle output buffer size in InternetGetCookieW. 2012-12-28 11:26:52 +01:00
Jacek Caban bfad905bd8 wininet: Fixed handling empty HTTP version string in HttpOpenRequest. 2012-12-10 11:27:21 +01:00
Jacek Caban 5554292284 wininet: Use generic ReadFileEx entry in InternetReadFileExA and get rid of ReadFileExA entry. 2012-11-23 18:06:09 +01:00
Jacek Caban 52144829d1 wininet: Don't take INTERNET_BUFFERSW as argument in object's ReadFileEx entry. 2012-11-23 18:06:08 +01:00
Jacek Caban 3e23b5e589 wininet: Use proxy settings directly from http_request_t in a few more places. 2012-11-19 16:35:17 +01:00
Jacek Caban 5fb49243af wininet: Use processed string from server_t for constructing proxy path. 2012-11-19 16:35:16 +01:00
Jacek Caban 3cf2838a93 wininet: Store more useful strings in server_t. 2012-11-19 16:35:16 +01:00
Jacek Caban e1d26a24ed wininet: Allow passing INTERNET_INVALID_PORT_NUMBER port to get_server. 2012-11-19 16:35:15 +01:00
Jacek Caban cdf25ee469 wininet: Store an info if connection is HTTPS in server_t. 2012-11-19 16:35:14 +01:00
Jacek Caban bd42c0416a wininet: Fixed HTTP CONNECT secure connection. 2012-11-16 17:42:47 +01:00
Jacek Caban c8da35729c wininet: Store both proxy and destination host in http_request_t. 2012-11-16 17:42:46 +01:00
Jacek Caban 54639c5dc5 wininet: Commit cache file as soon as all data is written. 2012-11-02 19:47:19 +01:00
Jacek Caban b012765e91 wininet: Write received data to cache before notifying progress. 2012-11-02 19:47:18 +01:00
Francois Gouget 2606b85687 wininet: Check for the 'http:' protocol in a locale independent way. 2012-09-25 11:42:38 +02:00
Dan Kegel 766eecaf07 wininet: Don't evaluate netconn_get_avail_data() twice in netconn_read(). 2012-07-11 10:09:56 -05:00
Jacek Caban c400117027 wininet: Try harder to reuse connection after authorization. 2012-07-02 19:18:08 +02:00
Thomas Faber 7d24e59229 wininet: Use the correct struct in a sizeof. 2012-06-18 11:59:41 +02:00
Jacek Caban 120c413f39 wininet: Fixed returned buffer size in HttpQueryInfo(HTTP_QUERY_STATUS_CODE) when insufficient buffer is passed. 2012-06-15 20:29:28 +02:00