iphlpapi: Add GetIpForwardTable2 stub.

Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Austin English 2018-04-13 16:11:15 -05:00 committed by Alexandre Julliard
parent 6cae93a36e
commit cf9eced885
4 changed files with 56 additions and 1 deletions

View File

@ -102,7 +102,7 @@
#@ stub GetIpErrorString
#@ stub GetIpForwardEntry2
@ stdcall GetIpForwardTable( ptr ptr long )
#@ stub GetIpForwardTable2
@ stdcall GetIpForwardTable2( long ptr )
@ stub GetIpForwardTableFromStack
#@ stub GetIpInterfaceEntry
#@ stub GetIpInterfaceTable

View File

@ -3264,3 +3264,14 @@ PCHAR WINAPI IPHLP_if_indextoname(NET_IFINDEX index, PCHAR name)
return getInterfaceNameByIndex(index, name);
}
/******************************************************************
* GetIpForwardTable2 (IPHLPAPI.@)
*/
DWORD WINAPI GetIpForwardTable2(ADDRESS_FAMILY family, PMIB_IPFORWARD_TABLE2 *table)
{
static int once;
if (!once++) FIXME("(%u %p): stub\n", family, table);
return ERROR_NOT_SUPPORTED;
}

View File

@ -21,6 +21,10 @@
#include <ntddndis.h>
#ifndef ANY_SIZE
#define ANY_SIZE 1
#endif
typedef enum _MIB_IF_TABLE_LEVEL
{
MibIfTableNormal,
@ -158,6 +162,37 @@ typedef struct _MIB_UNICASTIPADDRESS_TABLE
MIB_UNICASTIPADDRESS_ROW Table[1];
} MIB_UNICASTIPADDRESS_TABLE, *PMIB_UNICASTIPADDRESS_TABLE;
typedef struct _IP_ADDRESS_PREFIX
{
SOCKADDR_INET Prefix;
UINT8 PrefixLength;
} IP_ADDRESS_PREFIX, *PIP_ADDRESS_PREFIX;
typedef struct _MIB_IPFORWARD_ROW2
{
NET_LUID InterfaceLuid;
NET_IFINDEX InterfaceIndex;
IP_ADDRESS_PREFIX DestinationPrefix;
SOCKADDR_INET NextHop;
UCHAR SitePrefixLength;
ULONG ValidLifetime;
ULONG PreferredLifetime;
ULONG Metric;
NL_ROUTE_PROTOCOL Protocol;
BOOLEAN Loopback;
BOOLEAN AutoconfigureAddress;
BOOLEAN Publish;
BOOLEAN Immortal;
ULONG Age;
NL_ROUTE_ORIGIN Origin;
} MIB_IPFORWARD_ROW2, *PMIB_IPFORWARD_ROW2;
typedef struct _MIB_IPFORWARD_TABLE2
{
ULONG NumEntries;
MIB_IPFORWARD_ROW2 Table[ANY_SIZE];
} MIB_IPFORWARD_TABLE2, *PMIB_IPFORWARD_TABLE2;
typedef VOID (WINAPI *PIPINTERFACE_CHANGE_CALLBACK)(PVOID, PMIB_IPINTERFACE_ROW,
MIB_NOTIFICATION_TYPE);
typedef VOID (WINAPI *PUNICAST_IPADDRESS_CHANGE_CALLBACK)(PVOID, PMIB_UNICASTIPADDRESS_ROW,

View File

@ -28,6 +28,15 @@ typedef enum
IpPrefixOriginUnchanged = 16,
} NL_PREFIX_ORIGIN;
typedef enum _NL_ROUTE_ORIGIN
{
NlroManual,
NlroWellKnown,
NlroDHCP,
NlroRouterAdvertisement,
Nlro6to4,
} NL_ROUTE_ORIGIN, *PNL_ROUTE_ORIGIN;
typedef enum
{
IpSuffixOriginOther = 0,