Commit Graph
71 Commits
Author SHA1 Message Date
Eric Kohl 7f9e42cfe2 [IPHLPAPI][REACTOS] Implement NhGetGuidFromInterfaceName 2026-05-31 12:27:17 +02:00
Eric Kohl ac4d7351f9 [IPHLPAPI][REACTOS] Add iphlpapi_undoc.h and add undocumented functions
Add NhGetInterfaceNameFromDeviceGuid() and NhGetInterfaceNameFromGuid().
2025-10-16 13:20:00 +02:00
Eric Kohl 7715046ae3 [IPHLPAPI] Implement NhpAllocateAndGetInterfaceInfoFromStack
NhpAllocateAndGetInterfaceInfoFromStack is used by WinXPs ifmon.dll.
2025-10-14 09:59:10 +02:00
Eric Kohl 92b8ca8eab [IPHLPAPI] Fix GetAdaptersAddresses
- Simplify the way unicast addresses are returned
- Return proper prefix addresses
2025-10-12 18:18:12 +02:00
Carl J. Bialorucki fe497a2b23 [IPHLPAPI_WINETEST][IPHLPAPI] Sync iphlpapi_winetest to wine-10.0 (#8309)
- [IPHLPAPI_WINETEST] Sync to wine-10.0
- [IPHLPAPI] Add stubs for Vista+ functions so these functions can link properly when DLL_EXPORT_VERSION >= 0x600
2025-10-09 14:34:32 -05:00
Eric Kohl 61ff1117ee [IPHLPAPI] More fixes for GetAdapterAddresses
- Fix the reversed DNS server ip addresses.
- Return the ip addresses and network prefix lengths in the prefix list.
2025-08-21 17:18:48 +02:00
Eric Kohl 36533549a2 [IPHLPAPI] GetAdapterAddresses: Retrieve DnsSuffix 2025-08-17 14:45:19 +02:00
Eric Kohl 0502e33ae4 [IPHLPAPI] Improve GetAdapterAddresses
- Return the adapter name, friendly name and description for the loopback adapter.
- Return the description for network adapters.
2025-08-17 01:37:14 +02:00
Eric Kohl 33696393e7 [IPHLPAPI] Update IpRenewAddress and IpReleaseAddress
IpReleaseAddress: Use DhcpReleaseParameters instead of DhcpReleaseIpAddressLease.
IpRenewAddress: Use DhcpAcquireParameters instead of DhcpRenewIpAddressLease.
2025-08-03 13:01:04 +02:00
Carl J. Bialorucki c9842e5aad Move /sdk/include/reactos/wine to /sdk/include/wine, reorder global includes, remove unneeded includes (#8258)
- Move sdk\include\reactos\wine to sdk\include\wine
- Reorder the directories in include_directories() to be closer to alphabetical. This should make it easier to determine what global include directories can be removed in the future.
2025-07-29 13:57:12 -06:00
Hervé Poussineau eff61af6df [IPHLPAPI] Call tcpip.sys driver to get IP/TCP/UDP statistics
CORE-19596
2025-05-19 21:07:58 +02:00
Eric Kohl 3fe4b41f20 [IPHLPAPI] Retrieve DHCP information from the registry 2025-04-18 19:52:23 +02:00
Timo Kreuzer e4930be4ff [REACTOS] Use the ISO C and C++ conformant names: _wcsicmp, _stricmp
Stop using non-conforming wcsicmp, stricmp, strcasecmp
2024-10-20 14:12:25 +03:00
Doug Lyons 4eace8d762 [IPHLPAPI] Silence obsolete FIXME in GetAdaptersAddresses (#5834) 2023-10-26 16:45:44 +00:00
Joachim Henze a5360f542f [IPHLPAPI] Formatting only, no functional change
- Strip inconsistent spaces from the spec file.
- iphlpapi_main: Harmonize inconsistent and line-wasting function-comments and fix mixed space-tab-indentation.
- ipstats_reactos.c: Compactify horizontally accordingly to the coding guidelines

I am interested in that code for a backport, so I want it to be well-formatted.
Ftr: IPHLPAPI was *forked* more than a decade ago from Wine.
Therefore no diff ever was guarded within those files whenever we implemented anything here.
2023-07-03 00:38:41 +02:00
Serge Gautherie 03422451b3 [REACTOS] Add '\n' to debug logs
on TRACE, WARN, FIXME and ERR calls.

Plus a few nit picks.
2022-05-04 03:28:38 +03:00
Eric Kohl da4e15f93a [IPHLPAPI] Check the family parameter in the statistics functions 2021-10-25 00:36:03 +02:00
Eric Kohl 1b35626d54 [IPHLPAPI] GetInterfaceInfo(): Add "\DEVICE\TCPIP_"-Prefix to interface names 2021-10-24 16:52:18 +02:00
Serge Gautherie 6e894bc1c7 [IPHLPAPI] GetAdaptersInfo(): Update Wine registry key name (#3556) 2021-09-24 03:49:05 +03:00
Hermès Bélusca-Maïto 9393fc320e [FORMATTING] Remove trailing whitespace. Addendum to 34593d93.
Excluded: 3rd-party code (incl. wine) and most of the win32ss.
2021-09-13 03:52:22 +02:00
Doug Lyons 90be2f4e1b [IPHLPAPI] Fix for hasArp which crashes some iphlpapi tests. (#3216)
CORE-16513
2020-09-22 15:50:41 +02:00
Serge Gautherie 450425028c [IPHLPAPI] getNumInterfacesInt(): Remove 'if()' redundant condition (#2884)
No impact.

Detected by Cppcheck: redundantCondition.
Addendum to 1fe3a2d6c3 (r9788).
2020-06-04 23:26:28 +03:00
Serge Gautherie f540b2b20c [IPHLPAPI] GetAdaptersAddresses(): Add 1 free() in ERROR_NO_DATA case (#2526)
And fix 4 comments.
Follow-up to 68d94581.
2020-04-15 13:05:54 +02:00
Jérôme Gardou 68d94581ad [IPHLPAPI] Do not use free() on buffer allocated with HeapAlloc 2020-04-10 12:06:53 +02:00
Victor PerevertkinandTim Crawford dd2ff41dfc [IPHLPAPI] Make icmp functions use IOCTL_ICMP_ECHO_REQUEST from tcpip.sys
This adds missing features like using events and APCs within IcmpSendEcho2
functions and others.
CORE-10742 CORE-14411

Co-authored-by: Tim Crawford <[email protected]>
2020-04-07 05:32:40 +03:00
Timo Kreuzer 175abab7ad [IPHLPAPI] Simplify spec file
Also move the exports where they are on Windows. This was already handled correctly by MSVC and still doesn't fix the order on GCC builds, but that is a different story and shall be addressed at a different time.
2019-09-08 16:23:46 +02:00
Timo Kreuzer 76eed61813 [IPHLPAPI] Improve function stubs 2019-09-08 16:23:46 +02:00
Serge Gautherie 9f5f7a97f8 [IPHLPAPI] icmp.c: Restore sync after Wine Staging 1.7.55
Mark all our (new) differences.
2019-08-20 15:20:01 +02:00
Serge Gautherie 8ba4b11a33 [IPHLPAPI] icmp.c: Complete sync with Wine Staging 1.7.55
- Restore a missing brace.
- Mark all our differences (at that time). Please inspect them.

CORE-10536
2019-08-17 17:48:21 +02:00
Victor Perevertkin 042646ceac [IPHLPAPI] Use if_descrlen field for determining the length of
if_descr in IFEntry structure. This fixes heap corruption on GCC8.
CORE-16088
2019-07-05 22:49:12 +03:00
Timo Kreuzer 81bdf4e360 [CRT] Add missing posix error codes
These are required by latest mingw-w64 stl and we are mixing this with our crt headers.
Define _CRT_NO_POSIX_ERROR_CODES in all modules that define their own constants.
2019-05-27 13:22:40 +02:00
Timo Kreuzer f9a967b2ae [REACTOS] Fix misc 64 bit issues 2019-04-13 14:07:50 +02:00
Jérôme Gardou 23373acbb9 [CMAKE] Use modules instead of shared libraries
There is no need to compile our DLLs as shared libraries since we are
managing symbols exports and imports through spec files.

On my system, this reduces the configure-time by a factor of two.
2019-04-06 17:43:38 +02:00
Pierre Schweitzer 22cb300805 [IPHLPAPI] Properly handle GetModuleBaseName failure
CID 1442662, 1442663
2019-02-16 09:05:15 +01:00
Pierre Schweitzer 93b0957641 [IPHLPAPI] Check pointers when returning module info from specific connection 2019-02-16 09:00:06 +01:00
Pierre Schweitzer 22f60faf43 [IPHLPAPI] Remove dead code
CID 513306, 1442673, 1442697
2019-02-16 08:48:08 +01:00
Mark Jansen 0bdca09a85 [IPHLPAPI] Preserve decoration in exported symbols
CORE-8462
CORE-15665
2019-02-10 13:44:08 +01:00
Pierre Schweitzer aa55bb1bd3 [IPHLPAPI] Add support for service tags in GetOwnerModuleFromTcp/UdpEntry
If a service tag is set in owner information, then, we'll query advapi32 and
thus services to get the service name instead of the image name
2018-12-31 11:19:36 +01:00
Pierre Schweitzer 81aa879c13 [IPHLPAPI] Implement GetOwnerModuleFromUdpEntry() 2018-12-01 14:49:38 +01:00
Pierre Schweitzer 226195d4f2 [IPHLPAPI] Don't assume first member of MIB tables is always DWORD-big
This fixes last bits of heap corruption when using UDP/TCP enumeration
functions.
2018-11-30 20:06:29 +01:00
Pierre Schweitzer bf052e120b [IPHLPAPI] Reduce code duplication and use a single function for TCP and UDP enumerations
Furthermore, memory was improperly allocated before (alignment issues) leading to heap
corruption under certain circumstances
2018-11-30 20:06:29 +01:00
Pierre Schweitzer 3d2d957f81 [IPHLPAPI] Implement GetOwnerModuleFromTcpEntry()
CORE-4792
2018-11-29 20:36:08 +01:00
Pierre Schweitzer f87c88f6fe [IPHLPAPI] Implement the *_TABLE_OWNER_MODULE_* in GetExtendedTcp/UdpTable() functions
This fixes CurrPorts in ReactOS. It now properly displays current connections along
with their creation time.

CORE-10134
2018-11-27 23:12:57 +01:00
Pierre Schweitzer 159f5b676a [IPHLPAPI] Fix broken size computation leading to buffer overrun 2018-11-27 23:12:57 +01:00
Pierre Schweitzer 559297fe81 [IPHLPAPI] Implement getOwnerModUdpTable() and getOwnerModTcpTable()
These allow to enumerate UDP and TCP connections with module information
2018-11-27 23:12:56 +01:00
Pierre Schweitzer 7ce2f09a70 [SDK] Add AllocateAndGetTcp/UdpEx/2TableFromStack() functions family 2018-11-27 21:36:47 +01:00
Pierre Schweitzer 6d6e371225 [IPHLPAPI] Start handling certain flags in GetAdaptersAddresses()
For now, we only support the most useful ones: IP_ADAPTER_DDNS_ENABLED,
IP_ADAPTER_REGISTER_ADAPTER_SUFFIX, IP_ADAPTER_DHCP_ENABLED
2018-11-26 22:43:43 +01:00
Pierre Schweitzer 1a964b5139 [IPHLPAPI] In GetAdaptersAddresses(), return friendly name if asked for 2018-11-25 18:04:13 +01:00
Pierre Schweitzer 26415375e3 [IPHLPAPI] Implement AllocateAndGetUdpExTable2FromStack()
CORE-14391
2018-11-25 13:32:52 +01:00
Pierre Schweitzer 0bca12e01f [IPHLPAPI] Implement AllocateAndGetTcpExTable2FromStack()
CORE-14391
2018-11-25 13:29:26 +01:00