Commit graph

568 commits

Author SHA1 Message Date
Rastislav Stanik 1bab7ea25e iphlpapi: Add stub for GetAnycastIpAddressTable().
This change adds an implementation of Win32 API function
GetAnycastIpAddressTable() that does not return real information, it
just says "no entries found".

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56065
2024-02-14 19:19:32 +01:00
Marc-Aurel Zent cd2570c28d iphlpapi: Implement GetRTTAndHopCount(). 2024-02-14 19:19:32 +01:00
Alexandre Julliard 6a86396556 include: Use proper dllimports for iphlpapi functions. 2023-11-03 18:05:01 +01:00
Alexandre Julliard acad49573a makefiles: Always use the global SOURCES variable for .c files. 2023-11-01 22:44:03 +01:00
Alexandre Julliard 7ccb5df0fc makefiles: Always use the global SOURCES variable for .rc files. 2023-11-01 22:43:56 +01:00
Alexandre Julliard 6b4399e369 ws2_32: Make htonl/htons/ntohl/ntohs proper functions. 2023-10-10 11:05:28 +02:00
Hans Leidekker 46e3f259c1 iphlpapi/tests: Call GetExtendedTcp/UdpTable() in a loop.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54588
2023-09-15 18:34:11 +02:00
Hans Leidekker c2c0fefb99 iphlpapi/tests: Call GetAdaptersAddresses() in a loop.
As shown by the testbot, doubling is not always sufficient.
2023-09-15 18:34:11 +02:00
Hans Leidekker ad0f483d8b iphlpapi/tests: Call GetAdaptersAddresses() in a loop.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54588
2023-09-12 20:11:31 +02:00
Hans Leidekker 5f7016d3f0 iphlpapi/tests: Use CRT allocation functions. 2023-09-12 20:11:31 +02:00
Paul Gofman 4098a05ea8 iphlpapi: Link NotifyAddrChange and CancelIPChangeNotify to nsi implementation. 2023-08-01 21:51:13 +09:00
Alexandre Julliard 3069b98b10 iphlpapi/tests: Use nameless unions/structs. 2023-07-20 21:48:39 +02:00
Alex Henrie 75de502ba4 iphlpapi/tests: Use ~0u instead of ~0ul in testGetIpNetTable.
Fixes warnings on GCC 13.
2023-06-02 20:47:28 +02:00
Alex Henrie 870a9fcb4c iphlpapi: Add GetPerTcpConnectionEStats stub.
Based on a patch by Austin English.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52868
2023-06-02 09:29:24 +02:00
Alex Henrie 4050ceb22f iphlpapi: Add GetCurrentThreadCompartmentId stub and a test.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54599
2023-05-31 22:50:10 +02:00
Francois Gouget 0028d8f0a7 iphlpapi/tests: Use win_skip() for missing APIs.
A missing API is a todo in Wine.
2023-05-15 05:40:25 -05:00
Francois Gouget 8d2146934c iphlpapi: Fix the GAA_FLAG_INCLUDE_GATEWAYS constant name. 2023-04-10 14:18:00 +02:00
Marc-Aurel Zent 5de03757f7 iphlpapi: Return FALSE for bad handles in IcmpCloseHandle. 2023-03-27 11:05:34 +02:00
Santino Mazza f659ae65e4 iphlpapi: Set Ipv4Enabled and Ipv6Enabled flags accordingly. 2023-01-19 16:04:06 +01:00
Santino Mazza a331f1e614 iphlpapi/tests: Test for Ipv4Enabled and Ipv6Enabled flags. 2023-01-19 16:03:58 +01:00
Hans Leidekker fbf4544f7d iphlpapi: Handle errors from DnsQueryConfig(DnsConfigDnsServerList).
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52557
2023-01-09 16:44:08 +01:00
Paul Gofman 9a11957bab nsiproxy.sys: Add static ARP entries which are always present on Windows.
Some apps (Roon or SCP: Secret Laboratory are examples) depend on ARP
table always containing some entries if there is a network adapter present.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53175
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2022-06-27 10:34:12 +02:00
Zebediah Figura 23d85e6e9a dnsapi: Return a double-null-terminated string from DnsQueryConfig(DnsConfigSearchList).
DNS_TEXT_DATA contains pointers and is thus not WoW64 compatible. Since the API
is internal to Wine, use a simpler format instead of fixing our WoW64
translation.

The problem was found by Brendan Shanks; this solution was suggested by Hans Leidekker.
2022-06-27 10:32:41 +02:00
Huw Davies aa48b656dc iphlpapi: Don't allocate the IO status block on the stack.
Signed-off-by: Huw Davies <huw@codeweavers.com>
2022-06-23 22:46:13 +02:00
Paul Gofman bfd7b9bcf8 iphlpapi: Sort by adapter index first in GetIpNetTable().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2022-06-21 18:53:18 +02:00
Paul Gofman fae847adcf iphlpapi: Correctly index dynamic data array.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2022-06-21 18:53:18 +02:00
Jinoh Kang d36e785784 iphlpapi/tests: Add more tests for interface identifier conversion failure.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-06-21 18:53:18 +02:00
Jinoh Kang f30ee1e0d6 iphlpapi/tests: Factor out interface identifier conversion with invalid parameters.
These tests call conversion functions with fixed parameter, and thus can
be taken out of the adapter enumeration loop.

Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-06-21 18:53:18 +02:00
Jinoh Kang 59d281ee7c iphlpapi/tests: Add tests for GetBestInterfaceEx.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-06-21 18:53:18 +02:00
Jinoh Kang ac9842bc9a iphlpapi/tests: Add tests for GetBestRoute.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-06-21 18:53:18 +02:00
Jinoh Kang 3282d7abf2 iphlpapi/tests: Add tests for GetBestInterface.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-06-21 18:53:18 +02:00
Huw Davies 1c83efac77 iphlpapi/tests: Allow the route's age to differ by one second.
Signed-off-by: Huw Davies <huw@codeweavers.com>
2022-06-21 18:53:18 +02:00
Paul Gofman 910d58520a iphlpapi: Return ERROR_NO_DATA from GetIpNetTable() if no entries are found.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
2022-06-15 11:51:45 +02:00
Paul Gofman 1a782a5215 iphlpapi: Don't request unused dynamic interface data.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-17 16:49:17 +02:00
Eric Pouech 7f6adab1bd iphlpapi: Don't cast SIZE_T to DWORD in trace, use %I instead.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-07 10:43:48 +02:00
Paul Gofman 3c19c54aa0 iphlpapi: Don't request redundant static data in get_extended_tcp_table().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-23 18:42:13 +01:00
Eric Pouech 0c25cf0a08 iphlpapi/tests: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-28 10:32:28 +01:00
Francois Gouget ed4a566f12 iphlpapi: Fix the IPv4 address network order for comparisons.
ipaddrrow_cmp() and ipforward_row_cmp() must perform byte-swapping in
order for the rows to be sorted as expected.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 22:05:33 +01:00
Francois Gouget 3aa18cc5d0 iphlpapi: Fix ULONG comparisons, most notably for IPv4 addresses.
The difference between two ULONGs may not fit in an int, causing sorting
errors.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 22:05:33 +01:00
Eric Pouech 61becab487 iphlpapi: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-11 11:21:27 +01:00
Eric Pouech bb1fc33570 include/msvcrt: Add attribute((format)) to printf and scanf -like APIs.
Fix a bunch of warnings generated by this patch and the migration of
GUID.Data1 to long in ae2693e2c4

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-31 18:38:55 +01:00
Gerald Pfeifer 56b26e1d66 iphlpapi: Zero-init prefix_len to avoid a compiler warning.
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-28 21:10:21 +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 ae2693e2c4 include: Use long type by default in GUID definition.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 17:56:07 +01:00
Huw Davies c1bbfe17a5 iphlpapi: Always populate the friendly name.
The GAA_FLAG_SKIP_FRIENDLY_NAME flag is essentially ignored.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48084
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-05 17:16:18 +01:00
André Zwing 6893f515d6 iphlpapi: Fix some spec file entries.
Signed-off-by: André Zwing <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-29 23:19:10 +01:00
Gabriel Ivăncescu 5cc085975f iphlpapi: Implement async requests for IcmpSendEcho2Ex.
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:58:07 +01:00
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
Huw Davies 8f73b8e15f iphlpapi: Use wide character string literals.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-06 20:29:34 +02:00
Huw Davies 3aa7c46229 iphlpapi: Build with nameless structs and unions.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-06 20:29:34 +02:00