Commit Graph

16 Commits

Author SHA1 Message Date
Gabriel Ivăncescu 215c9275a8 nsiproxy: Fill the reply with the exact ICMP_ECHO_REPLY in the output buffer.
Because iphlpapi has no opportunity to convert the reply in async mode.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-26 11:57:59 +01:00
Gabriel Ivăncescu 5cd42975c3 nsiproxy: Fill the reply when it's not pending on the unix-side.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-26 11:57:27 +01:00
Huw Davies 19a6d409c0 nsiproxy: Implement the ability to cancel the listener.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 11:31:48 +02:00
Huw Davies aa73a91125 nsiproxy: Wait for an icmp reply.
This patch doesn't yet recv() that reply.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 11:31:47 +02:00
Huw Davies be0765ac26 nsiproxy: Pass the listen request off to a separate thread.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 11:31:47 +02:00
Huw Davies 20fb14bf27 nsiproxy: Introduce a unix-side handle returned by icmp_send_echo().
This represents the state of the icmp request for use on the PE-side.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 15:51:24 +02:00
Huw Davies aa4e0d466b nsiproxy: Actually send the ICMP ECHO request.
However, don't yet wait for the reply.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 15:51:02 +02:00
Huw Davies f59a64144b nsiproxy: Introduce IOCTL_NSIPROXY_WINE_ICMP_ECHO.
With this patch the irp is simply marked as pending and transferred to
the request thread which completes the irp with STATUS_NOT_SUPPORTED.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 15:50:34 +02:00
Huw Davies 7ed25b6c16 nsiproxy: Let the general dispatch function update the irp's status.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 15:50:18 +02:00
Huw Davies 37097b9687 nsiproxy: Build with msvcrt.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-01 16:43:26 +02:00
Zebediah Figura f18d72ac18 nsiproxy: Return the IOSB status from nsi_ioctl().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-13 11:30:25 +02:00
Zebediah Figura bd1aed5319 nsiproxy: Return STATUS_BUFFER_OVERFLOW to signal short buffers.
STATUS_MORE_ENTRIES is used for directory enumeration APIs, and signals that a
continuation will be returned on the next call.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 10:57:23 +02:00
Huw Davies 8f7f4f1327 nsiproxy: Introduce IOCTL_NSIPROXY_WINE_GET_PARAMETER.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-01 22:34:31 +02:00
Huw Davies 25a582cf32 nsiproxy: Introduce IOCTL_NSIPROXY_WINE_GET_ALL_PARAMETERS.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-01 22:34:31 +02:00
Huw Davies a907a141a9 nsiproxy: Introduce IOCTL_NSIPROXY_WINE_ENUMERATE_ALL.
This differs from native, which passes struct nsi_enumerate_all_ex
directly and relies on the kernel being able to access the
user-space addresses.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 19:55:22 +02:00
Huw Davies 393e953b31 nsiproxy: Create the nsi device.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 19:55:22 +02:00