Commit Graph

230 Commits

Author SHA1 Message Date
Hans Leidekker c81fa01751 winhttp: Use the thread pool for COM object requests.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 12:27:04 +01:00
Hans Leidekker 911316e7c8 winhttp: Make sure the COM request object is properly initialized.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 12:27:00 +01:00
Hans Leidekker 682ddd826a winhttp: Use the thread pool for the connection collector.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 12:26:53 +01:00
Hans Leidekker c6251cbb12 winhttp: Propagate errors from refill_buffer.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38228
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 12:52:44 +01:00
Hans Leidekker bdfa9d8221 winhttp: Use the thread pool for asynchronous tasks.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-23 12:52:41 +01:00
Hans Leidekker bcf885bda2 winhttp: Return an error from WinHttpReceiveResponse if there's no connection.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46175
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Hans Leidekker 3fb5d2f98d winhttp: Get rid of get/set_last_error.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Hans Leidekker ce9ad42056 winhttp: Get rid of request_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Hans Leidekker 4607d5ba59 winhttp: Get rid of netconn_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Hans Leidekker dad2439d01 winhttp: Get rid of connect_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Hans Leidekker a1cee8920a winhttp: Get rid of session_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-22 23:55:58 +01:00
Hans Leidekker dffb4705c5 winhttp: Simplify secure_proxy_connect.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 13:42:18 +01:00
Hans Leidekker 60a8bb68ec winhttp: Skip the hostname part when escaping an absolute URL.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 13:42:17 +01:00
Hans Leidekker a6edca34b5 winhttp: Get rid of hostdata_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 13:42:15 +01:00
Hans Leidekker cf22c2c16c winhttp: Get rid of write_data_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 13:42:11 +01:00
Hans Leidekker 6fb0c79022 winhttp: Get rid of read_data_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 13:42:09 +01:00
Hans Leidekker 41c72bff6f winhttp: Get rid of query_data_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 13:42:07 +01:00
Hans Leidekker 690046e3d2 winhttp: Get rid of receive_response_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-15 13:42:05 +01:00
Hans Leidekker 7e5b5cb1aa winhttp: Properly handle request paths with Unicode characters.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46076
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 21:04:04 +01:00
Hans Leidekker b9e19685c5 winhttp: Simplify build_request_string.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 21:04:04 +01:00
Hans Leidekker 85b6c2b9c8 winhttp: Get rid of send_request_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 21:04:04 +01:00
Hans Leidekker b603c5e05c winhttp: Get rid of header_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 21:04:04 +01:00
Hans Leidekker b995ed00a7 winhttp: Get rid of task_header_t.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-06 21:04:04 +01:00
Jacek Caban 543bfdf1af winhttp: Make accessing session credential handle thread safe.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-05 09:13:01 -05:00
Hans Leidekker ace7f05672 winhttp: Implement the WINHTTP_FLAG_ESCAPE_* flags.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=42677
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-04 09:11:26 -05:00
Michael Stefaniuc 9c1298a0e5 winhttp: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-26 16:50:27 +02:00
Michael Stefaniuc 8c8ea309a4 winhttp: Avoid a variable that holds an ARRAY_SIZE() result.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-26 16:50:22 +02:00
Jacek Caban 6435f844dd winhttp: Set last error in WinHttpQueryAuthSchemes when no auth scheme is found.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-19 18:21:20 +02:00
Jacek Caban f76208879e winhttp: Modify index only if query_headers succeeded.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-19 18:21:16 +02:00
Hans Leidekker af3920dc18 winhttp: Implement WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-11 11:11:39 +02:00
Hans Leidekker ca56f99280 winhttp: Use winsock sockets.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 17:35:00 +02:00
Hans Leidekker 498042e0ee winhttp: Escape untrusted URL paths.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Zhiyi Zhang b55f568383 winhttp: Add support for WINHTTP_ENABLE_SSL_REVOCATION.
This also fixes a regression caused by 0b61334b9d,
which is causing Office 2013 to fail to login, saying that there is a problem
with your account.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Michael Stefaniuc ebc7959e17 winhttp: Use the more common ARRAY_SIZE spelling.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 19:44:26 +02:00
Hans Leidekker f5ea51d360 winhttp: Store the server certificate context in the request.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 16:35:51 +02:00
Hans Leidekker 6283f4ed96 winhttp: Fix invalid reads with tracing on (Valgrind).
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-04 16:53:13 +02:00
Huw Davies 6ce8624760 winhttp: Send basic authorization credentials with the first request if they've been set.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-02 11:20:01 +02:00
Huw Davies 9c2cce0923 winhttp: Move the authorization code above send_request().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-02 11:19:56 +02:00
Hans Leidekker 2b77b0bb6b winhttp: Implement WINHTTP_OPTION_SECURE_PROTOCOLS.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 10:24:54 +02:00
Hans Leidekker d71fcc93e4 winhttp: Allocate a credential handle for each session.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 10:24:52 +02:00
Nikolay Sivov d0813b7718 winhttp: Avoid returning while holding a lock (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-08 20:53:08 +09:00
Sebastian Lackner 5a61913e90 winhttp: Rename host_t to hostdata_t.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 22:52:54 +02:00
Jacek Caban 2a99f0e3b3 winhttp: Periodically free outdated connections.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Jacek Caban 5226865c53 winhttp: Cache and reuse persistent HTTP connections.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Jacek Caban e0e8a3ff77 winhttp: Introduce global connected hosts store and keep reference to host in netconn_t.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Jacek Caban d1d65c9b21 winhttp: Merge netconn_create and netconn_connect implementations.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Jacek Caban 3e60241677 winhttp: Store socked address in netconn_t.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:31 +02:00
Jacek Caban e129023eb7 winhttp: Pass socket address as sockaddr_storage to netconn_connect.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:31 +02:00
Jacek Caban c502629819 winhttp: Allocate netconn_t separately from request_t.
Once persistent connections will be supported, life time of connection
may exceed life time of request object.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 18:34:45 +02:00
Jacek Caban c06104c62a winhttp: Store security_flags in request_t instead of netconn_t.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 18:34:43 +02:00