Commit graph

64 commits

Author SHA1 Message Date
Julian Klemann 8e307b2ecd http.sys: Do not add URLs with query parameters to queue. 2022-07-08 10:48:22 +02:00
Julian Klemann 296852b258 http.sys: Add support for relative URLs.
The queue with the most specific path should be the one to receive the
request.
2022-07-08 10:48:20 +02:00
Julian Klemann 0f139a04b1 http.sys: Add support for adding multiple urls to request queues.
The request queue has a growable array rather than single URL and socket
properties.

Signed-off-by: Julian Klemann <jklemann@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-16 22:39:14 +02:00
Julian Klemann db3ba1d74e httpapi: Stop setting group->url if add_url() fails.
The URL should not be set if the URL cannot be added to a request queue.

Signed-off-by: Julian Klemann <jklemann@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-16 22:39:14 +02:00
Julian Klemann 3b91c7c58f httpapi/tests: Add tests for when URLs fail to be added to a queue.
If a queue is associated to a URL group and the URL cannot be added to
the queue, the URL should not be set in the group. In other cases, it
should be.

Signed-off-by: Julian Klemann <jklemann@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-16 22:39:14 +02:00
Julian Klemann 39502adc6c httpapi/tests: Move sleep statement.
The mentioned bug randomly occurred after some subsequent patches, so
the sleep should happen before GetOverlappedResult is called.

Signed-off-by: Julian Klemann <jklemann@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-16 22:39:14 +02:00
Zebediah Figura 0c005d1658 httpapi/tests: Build without -DWINE_NO_LONG_TYPES.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-28 21:33:51 +01:00
Eric Pouech 8ea90bec6f httpapi: Build without -DWINE_NO_LONG_TYPES.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 10:39:22 +01:00
Alexandre Julliard f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Alexandre Julliard 088a787a2c makefiles: Make -mno-cygwin the default.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Zebediah Figura 32347fcf08 server: Queue a cancel IRP in the device file cancel_async callback.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-09 22:30:45 +02:00
Zebediah Figura 41dfe7cc67 httpapi/tests: Avoid some test failures with newer Windows 10.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-28 12:26:13 +01:00
Zebediah Figura 0aa6f8e2ea httpapi/tests: Sleep before calling GetOverlappedResult() in test_v2_server().
This seems to be a variation of a bug already encountered; here the kernel does
not report the right value in the IOSB until after completion is signaled.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48587
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-17 22:21:59 +01:00
Michael Stefaniuc 21a4bd7b48 httpapi: Use wide-char string literals.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 09:57:48 +02:00
Jacek Caban 58b129ebb0 httpapi/tests: Use DECLSPEC_ALIGN in MSVC compatible way.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 20:55:06 +02:00
Zebediah Figura 131801fc70 http.sys: Handle the "+" URL wildcard.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48530
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 11:43:01 +01:00
Zebediah Figura fb35743f84 http.sys: Support cancelling IRPs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 11:43:01 +01:00
Zebediah Figura 52c6070ea5 httpapi: Stub HttpSetUrlGroupProperty(HttpServerLoggingProperty).
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48530
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 13:01:04 +01:00
Zebediah Figura 4c5f325333 httpapi: Wait for overlapped I/O completion only if ERROR_IO_PENDING is returned.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 13:01:01 +01:00
Zebediah Figura 534fdf8f46 httpapi: Stub HttpSetServerSessionProperty().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 13:00:59 +01:00
Zebediah Figura 22bfe19bb0 httpapi: Use the "http" debug channel.
Same as http.sys.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 13:00:55 +01:00
Zebediah Figura 4a0ef4d8c8 httpapi: Update the spec file to Windows 7.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48514
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48530
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 13:00:52 +01:00
Zebediah Figura afe9217b57 httpapi: Stub HttpSetRequestQueueProperty().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48514
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 19:33:15 +01:00
Zebediah Figura 533acfb1f6 http.sys: Translate WSAEADDRINUSE to STATUS_SHARING_VIOLATION.
Fixes intermittent failures on the Debian 10 testbot.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:39:00 +01:00
Zebediah Figura 142585a122 httpapi/tests: Avoid depending on the availability of specific ports.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-13 15:59:06 +01:00
Austin English 280bfb58b5 httpapi: Return ERROR_SUCCESS for unimplemented flags in HttpInitialize.
Returning ERROR_CALL_NOT_IMPLEMENTED breaks .Net installers. MSDN suggests
that ERROR_INVALID_PARAMETER may be more appropriate, but that too breaks .Net.

Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Zebediah Figura c1a62e0167 httpapi: Implement HttpReceiveRequestEntityBody().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48017
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 22:43:01 +01:00
Louis Lenders ab77c7bb06 httpapi: Add stub for HttpReceiveRequestEntityBody.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48017
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-01 10:32:17 +01:00
Sven Baars 5df86351f0 httpapi/tests: Use CancelIo to avoid a test failure on Windows XP.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 17:43:47 +02:00
Sven Baars fea609c0d0 httpapi/tests: Cancel a pending receive request (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:00:14 +02:00
Sven Baars a1953e4e2c httpapi/tests: Initialize response_buffer to 0 (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:00:14 +02:00
Sven Baars bbd1e80d81 httpapi: Fix a memory leak (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:00:14 +02:00
Alistair Leslie-Hughes 5c17a0b07c httpapi/tests: Assign to correct type (Coverity).
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-06 13:07:38 +02:00
Zebediah Figura 44a136cf9d httpapi: Prefer the builtin version.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-30 21:24:26 +02:00
Zebediah Figura 12f1c2de1c httpapi/tests: Add some tests for version 2 request queues.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-30 21:24:26 +02:00
Zebediah Figura b19f4488f6 httpapi: Implement HttpCreateRequestQueue() and HttpCloseRequestQueue().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47476
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46549
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-30 21:24:26 +02:00
Zebediah Figura f18e026e51 httpapi: Implement HttpAddUrlToUrlGroup() and HttpRemoveUrlFromUrlGroup().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-30 21:24:26 +02:00
Zebediah Figura f0458b2148 httpapi: Partially implement HttpSetUrlGroupProperty().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-30 21:24:26 +02:00
Zebediah Figura e3a7c603e1 httpapi: Implement HttpCreateUrlGroup() and HttpCloseUrlGroup().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-29 20:08:14 +02:00
Zebediah Figura 76eb42a760 httpapi: Implement HttpCreateServerSession() and HttpCloseServerSession().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-29 20:08:14 +02:00
Zebediah Figura efacf6f455 httpapi: Start the http service in HttpInitialize().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38245
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-29 20:08:14 +02:00
Zebediah Figura d73fc3e82a httpapi: Implement HttpSendHttpResponse().
While it's a little architecturally weird to have this part uniquely
implemented in httpapi, it's far easier to handle building the response
string here than having to marshal everything into an ioctl buffer first.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-29 20:08:14 +02:00
Zebediah Figura 7ed2d58793 httpapi: Implement HttpReceiveHttpRequest().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-28 08:45:11 +02:00
Zebediah Figura 4f714df9d6 httpapi: Implement HttpRemoveUrl().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-23 10:56:37 +02:00
Zebediah Figura 6bde953714 httpapi: Implement HttpAddUrl().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-23 10:56:35 +02:00
Zebediah Figura cf14c0bde2 httpapi: Implement HttpCreateHttpHandle().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-22 09:49:15 +02:00
Zebediah Figura 8a125eb000 httpapi/tests: Add tests for version 1 request queues.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 09:33:46 +02:00
Zebediah Figura 904c0dc050 httpapi: Stub HttpRemoveUrl().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 22:26:44 +02:00
Zebediah Figura 43a3185eab httpapi: Stub HttpSendHttpResponse().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 22:26:44 +02:00
Zebediah Figura 965cdad7c1 httpapi: Stub HttpReceiveHttpRequest().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 22:26:44 +02:00