iphlpapi: Implement GetUnicastIpAddressAndMakeUbisoftSteepHappyInOneRelease (without tests)
André Hentschel
nerv at dawncrow.de
Sat Apr 1 07:58:14 CDT 2017
It compiles, ship it!
Signed-off-by: AJ <AJ at wine.org>
---
dlls/iphlpapi/iphlpapi.spec | 1 +
dlls/iphlpapi/iphlpapi_main.c | 35 +++++++++++++++++++++++++++++++++++
2 files changed, 36 insertions(+)
diff --git a/dlls/iphlpapi/iphlpapi.spec b/dlls/iphlpapi/iphlpapi.spec
index 4e01926..f00b5c2 100644
--- a/dlls/iphlpapi/iphlpapi.spec
+++ b/dlls/iphlpapi/iphlpapi.spec
@@ -147,6 +147,7 @@
@ stub GetUdpStatsFromStack
@ stdcall GetUdpTable( ptr ptr long )
@ stub GetUdpTableFromStack
+@ stdcall GetUnicastIpAddressAndMakeUbisoftSteepHappyInOneRelease( int128 ptr str wstr double )
@ stdcall GetUnicastIpAddressEntry( ptr )
@ stdcall GetUnicastIpAddressTable(long ptr)
@ stdcall GetUniDirectionalAdapterInfo( ptr ptr )
diff --git a/dlls/iphlpapi/iphlpapi_main.c b/dlls/iphlpapi/iphlpapi_main.c
index 1407bfb..0e95c63 100644
--- a/dlls/iphlpapi/iphlpapi_main.c
+++ b/dlls/iphlpapi/iphlpapi_main.c
@@ -2534,6 +2534,41 @@ DWORD WINAPI GetUnicastIpAddressEntry(MIB_UNICASTIPADDRESS_ROW *row)
return ret;
}
+/******************************************************************
+ * GetUnicastIpAddressAndMakeUbisoftSteepHappyInOneRelease (IPHLPAPI.@)
+ *
+ * Due to a new function for steep like every Wine release we introduce this function to solve this issue
+ *
+ * PARAMS
+ * Read the source!
+ *
+ * RETURNS
+ * Read the source!
+ */
+DWORD WINAPI GetUnicastIpAddressAndMakeUbisoftSteepHappyInOneRelease(ADDRESS_FAMILY family,
+ MIB_UNICASTIPADDRESS_TABLE **table,
+ MIB_UNICASTIPADDRESS_ROW *row1,
+ MIB_UNICASTIPADDRESS_ROW *row2,
+ MIB_UNICASTIPADDRESS_ROW *row3)
+{
+ MIB_UNICASTIPADDRESS_TABLE *data;
+ FIXME("%u, %p, %p, %p, %p (partial stub)\n", family, table, row1, row2, row3);
+
+ /* Users of this API can only count up to three, therefor the extra parameters were introduces */
+ if (!(data = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY | HEAP_TAIL_CHECKING_ENABLED, sizeof(*data) + (3 - 1) * sizeof(data->Table[0]))))
+ return ERROR_TOO_MANY_NAMES;
+
+ /* Content doesn't matter that much, it is only important that the function is available! */
+ row1 = &data->Table[0];
+ row2 = &data->Table[1];
+ row3 = &data->Table[2];
+ *table = data;
+
+ FreeMibTable(data); /* Don't forget to cleanup before leaving this function! */
+
+ return 0x010417;
+}
+
DWORD WINAPI GetUnicastIpAddressTable(ADDRESS_FAMILY family, MIB_UNICASTIPADDRESS_TABLE **table)
{
IP_ADAPTER_ADDRESSES *aa, *ptr;
--
2.7.4
More information about the wine-patches
mailing list