Paul Gofman
3a8ccb9242
winhttp: Process end of read data before sending callback in read_data().
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-15 18:33:11 +02:00
Paul Gofman
d349013dde
winhttp: Don't send notifications when connection is closed on read finish.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-15 18:33:06 +02:00
Hans Leidekker
badc64b42c
winhttp: Don't remove content-type/length headers in handle_redirect().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50272
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-23 18:14:46 +02:00
Hans Leidekker
ec46607ee0
winhttp: Fix return value for relative redirects.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-23 18:14:43 +02:00
Hans Leidekker
5da1d59241
winhttp: Call drain_content() before clear_response_headers().
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-23 18:14:40 +02:00
Hans Leidekker
239964ce86
winhttp: Call read_data() at least once in drain_content().
...
This ensures that response headers are processed even if there's no data to read.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50244
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-23 18:14:36 +02:00
Hans Leidekker
f738af16fb
winhttp: Read any data left in the request buffer for websocket connections.
...
Fixes the case where a websocket server sends an unsolicited frame with the upgrade response.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-22 21:48:34 +02:00
Hans Leidekker
54742a9001
winhttp: Pass a socket pointer to send_bytes() and receive_bytes().
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-22 21:48:30 +02:00
Paul Gofman
34fea20cd3
winhttp: Limit recursion for synchronous callback calls.
...
Fixes a regression in Hitman 2, Death Stranding introduced
by commit be5acd1c07
.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-21 11:43:54 +02:00
Hans Leidekker
5731c38ae1
winhttp: Don't fail the request if authorization fails.
...
Fixes a regression from 080dfbee31
.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-16 22:22:44 +02:00
Paul Gofman
be5acd1c07
winhttp: Execute WinHttpReadData() synchronously if the data is available.
...
Fixes eFootball PES 2021 in game contents download.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Paul Gofman
1c659954df
winhttp: Execute WinHttpQueryDataAvailable() synchronously if the data is available.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:09 +02:00
Paul Gofman
bc5305e599
winhttp: Factor out query_data_ready() function.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 21:49:08 +02:00
Haoyang Chen
8147ccde13
winhttp: Handle headers with '\r' line breaks.
...
Signed-off-by: Haoyang Chen <chenhaoyang@uniontech.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-29 15:40:43 +02:00
Hans Leidekker
4f961d9e7a
winhttp: Use CRT memory allocators.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-08 22:28:44 +02:00
Hans Leidekker
83afd177b3
winhttp: Avoid a crash when the connection is closed while handling a redirect.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48870
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 21:44:18 +01:00
Owen Rudge
5042687d01
winhttp: Implement WINHTTP_OPTION_MAX_HTTP_AUTOMATIC_REDIRECTS.
...
Signed-off-by: Owen Rudge <orudge@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-03 19:44:15 +02:00
Hans Leidekker
97f9dc7ff4
winhttp: Stop the send queue before sending the close message.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:43 +02:00
Hans Leidekker
dffd8e8647
winhttp: Add support for ping and pong messages.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:43 +02:00
Hans Leidekker
7b7fdb8585
winhttp: Copy the reason buffer.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:43 +02:00
Hans Leidekker
c7d140d34a
winhttp: Reimplement the task queue using thread pool work objects.
...
Simplifies cleanup.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:43 +02:00
Hans Leidekker
968b3745bb
winhttp: Status and reason are optional in the close response.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-25 23:08:30 +02:00
Hans Leidekker
b9038c736b
winhttp: Set socket state before sending notifications.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-25 23:08:30 +02:00
Hans Leidekker
6d564bd53e
winhttp: Add support for WebSocket fragment buffers.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-24 18:34:15 +02:00
Hans Leidekker
3b1d18fd6e
winhttp: Implement WinHttpWebSocketQueryCloseStatus.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-24 18:34:15 +02:00
Hans Leidekker
61ea74b457
winhttp: Implement WinHttpWebSocketClose.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-24 18:34:15 +02:00
Hans Leidekker
da0515c165
winhttp: Implement WinHttpWebSocketShutdown.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-24 18:34:15 +02:00
Hans Leidekker
f18cbfcd5d
winhttp: Implement WinHttpWebSocketReceive.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-24 18:34:15 +02:00
Hans Leidekker
68b44e3055
winhttp: Implement WinHttpWebSocketSend.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-24 18:34:15 +02:00
Hans Leidekker
cc1c4759ba
winhttp: Send WINHTTP_CALLBACK_STATUS_HANDLE_CREATED notification in WinHttpWebSocketCompleteUpgrade.
...
Based on a patch by Alistair Leslie-Hughes.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-23 10:10:10 +02:00
Hans Leidekker
c8c0bc6d2e
winhttp: Set socket notification mask and callback from the parent request.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-23 10:10:08 +02:00
Alistair Leslie-Hughes
57a1936053
winhttp: Pass length in WINHTTP_CALLBACK_STATUS_CONNECTING_TO_SERVER callback.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-23 10:10:02 +02:00
Hans Leidekker
6a98d5f524
winhttp: Make the task queue implementation more generic.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-23 10:09:59 +02:00
Hans Leidekker
5c4f1e4c82
winhttp: Get rid of some redundant assignments.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-23 10:09:56 +02:00
Hans Leidekker
9336651477
winhttp: Don't close child handles on release.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-23 10:09:52 +02:00
Hans Leidekker
0b48050da5
winhttp: Implement WinHttpWebSocketCompleteUpgrade.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-17 16:27:24 +02:00
Alistair Leslie-Hughes
a6de059eef
winhttp: Status HTTP_STATUS_SWITCH_PROTOCOLS doesn't have any content.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-17 16:27:24 +02:00
Alistair Leslie-Hughes
0a90d0431d
winhttp: Add WinHttpWebSocket* function stubs.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-11 15:51:18 +02:00
Hans Leidekker
080dfbee31
winhttp: Explicitly pass errors.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-07 20:55:49 +02:00
Hans Leidekker
5bf055a62d
winhttp: Use wide character string literals.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-22 18:02:17 +01:00
Hans Leidekker
e3057aea62
winhttp: Build with msvcrt.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-20 23:03:21 +01:00
Hans Leidekker
8de2369dcf
winhttp: Propagate request errors in request_wait.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-02 17:39:06 +02:00
Hans Leidekker
788f588f0a
winhttp: Set last error for invalid and unimplemented header queries.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-02 16:57:57 +02:00
Hans Leidekker
d6a80a4833
winhttp: Handle Passport redirects.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-02 16:57:52 +02:00
Hans Leidekker
e05590f454
winhttp: Implement WINHTTP_QUERY_REQUEST_METHOD.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-02 16:57:46 +02:00
Hans Leidekker
83aec88a96
winhttp: Also trace the buffer pointer in WinHttpSendRequest.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-02 16:57:41 +02:00
Andrew Eikum
e87f2c399d
winhttp: Don't crash setting up secure proxy.
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-11 17:52:37 +01:00
Hans Leidekker
c68b5eb850
winhttp: Implement WINHTTP_OPTION_CLIENT_CERT_CONTEXT.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-29 17:12:13 +01:00
Hans Leidekker
2f75297036
winhttp: Store Accept headers like the other headers.
...
Based on a patch by Sebastian Lackner.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 12:27:06 +01:00
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