Commit 1bab7ea2 authored by Rastislav Stanik's avatar Rastislav Stanik Committed by Alexandre Julliard

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
parent fb2ebbbb
......@@ -73,7 +73,7 @@
@ stdcall GetAdaptersAddresses( long long ptr ptr ptr )
@ stdcall GetAdaptersInfo( ptr ptr )
#@ stub GetAnycastIpAddressEntry
#@ stub GetAnycastIpAddressTable
@ stdcall GetAnycastIpAddressTable( long ptr )
@ stdcall GetBestInterface( long ptr )
@ stdcall GetBestInterfaceEx( ptr ptr )
@ stub GetBestInterfaceFromStack
......
......@@ -3734,6 +3734,18 @@ err:
return err;
}
DWORD WINAPI GetAnycastIpAddressTable(ADDRESS_FAMILY family, MIB_ANYCASTIPADDRESS_TABLE **table)
{
FIXME( "(%u, %p) stub\n", family, table );
if (!table || (family != AF_INET && family != AF_INET6 && family != AF_UNSPEC))
return ERROR_INVALID_PARAMETER;
*table = heap_alloc_zero(sizeof(MIB_ANYCASTIPADDRESS_TABLE));
if (!*table) return ERROR_NOT_ENOUGH_MEMORY;
(*table)->NumEntries = 0;
return NO_ERROR;
}
/******************************************************************
* GetUniDirectionalAdapterInfo (IPHLPAPI.@)
*
......
......@@ -172,6 +172,20 @@ typedef struct _MIB_UNICASTIPADDRESS_TABLE
MIB_UNICASTIPADDRESS_ROW Table[1];
} MIB_UNICASTIPADDRESS_TABLE, *PMIB_UNICASTIPADDRESS_TABLE;
typedef struct _MIB_ANYCASTIPADDRESS_ROW
{
SOCKADDR_INET Address;
NET_LUID InterfaceLuid;
NET_IFINDEX InterfaceIndex;
SCOPE_ID ScopeId;
} MIB_ANYCASTIPADDRESS_ROW, *PMIB_ANYCASTIPADDRESS_ROW;
typedef struct _MIB_ANYCASTIPADDRESS_TABLE
{
ULONG NumEntries;
MIB_ANYCASTIPADDRESS_ROW Table[ANY_SIZE];
} MIB_ANYCASTIPADDRESS_TABLE, *PMIB_ANYCASTIPADDRESS_TABLE;
typedef struct _IP_ADDRESS_PREFIX
{
SOCKADDR_INET Prefix;
......@@ -254,6 +268,7 @@ IPHLPAPI_DLL_LINKAGE DWORD WINAPI ConvertInterfaceNameToLuidA(const char*,NET_LU
IPHLPAPI_DLL_LINKAGE DWORD WINAPI ConvertInterfaceNameToLuidW(const WCHAR*,NET_LUID*);
IPHLPAPI_DLL_LINKAGE DWORD WINAPI ConvertLengthToIpv4Mask(ULONG,ULONG*);
IPHLPAPI_DLL_LINKAGE void WINAPI FreeMibTable(void*);
IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetAnycastIpAddressTable(ADDRESS_FAMILY,MIB_ANYCASTIPADDRESS_TABLE**);
IPHLPAPI_DLL_LINKAGE NET_IF_COMPARTMENT_ID WINAPI GetCurrentThreadCompartmentId(void);
IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetIfEntry2(MIB_IF_ROW2*);
IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetIfEntry2Ex(MIB_IF_TABLE_LEVEL,MIB_IF_ROW2*);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment