mirror of
https://github.com/QB64Official/qb64.git
synced 2024-09-20 04:24:49 +00:00
187 lines
4.6 KiB
C
187 lines
4.6 KiB
C
|
/**
|
||
|
* This file is part of the mingw-w64 runtime package.
|
||
|
* No warranty is given; refer to the file DISCLAIMER within this package.
|
||
|
*/
|
||
|
|
||
|
#ifndef _NLDEF_
|
||
|
#define _NLDEF_
|
||
|
#include <winapifamily.h>
|
||
|
|
||
|
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= 0x0A00
|
||
|
|
||
|
typedef enum {
|
||
|
NldsInvalid,
|
||
|
NldsTentative,
|
||
|
NldsDuplicate,
|
||
|
NldsDeprecated,
|
||
|
NldsPreferred,
|
||
|
IpDadStateInvalid = 0,
|
||
|
IpDadStateTentative,
|
||
|
IpDadStateDuplicate,
|
||
|
IpDadStateDeprecated,
|
||
|
IpDadStatePreferred,
|
||
|
} NL_DAD_STATE;
|
||
|
|
||
|
#define MAKE_ROUTE_PROTOCOL(N, V) MIB_IPPROTO_ ## N = V, PROTO_IP_ ## N = V
|
||
|
|
||
|
typedef enum {
|
||
|
RouteProtocolOther = 1,
|
||
|
RouteProtocolLocal = 2,
|
||
|
RouteProtocolNetMgmt = 3,
|
||
|
RouteProtocolIcmp = 4,
|
||
|
RouteProtocolEgp = 5,
|
||
|
RouteProtocolGgp = 6,
|
||
|
RouteProtocolHello = 7,
|
||
|
RouteProtocolRip = 8,
|
||
|
RouteProtocolIsIs = 9,
|
||
|
RouteProtocolEsIs = 10,
|
||
|
RouteProtocolCisco = 11,
|
||
|
RouteProtocolBbn = 12,
|
||
|
RouteProtocolOspf = 13,
|
||
|
RouteProtocolBgp = 14,
|
||
|
|
||
|
MAKE_ROUTE_PROTOCOL (OTHER, 1),
|
||
|
MAKE_ROUTE_PROTOCOL (LOCAL, 2),
|
||
|
MAKE_ROUTE_PROTOCOL (NETMGMT, 3),
|
||
|
MAKE_ROUTE_PROTOCOL (ICMP, 4),
|
||
|
MAKE_ROUTE_PROTOCOL (EGP, 5),
|
||
|
MAKE_ROUTE_PROTOCOL (GGP, 6),
|
||
|
MAKE_ROUTE_PROTOCOL (HELLO, 7),
|
||
|
MAKE_ROUTE_PROTOCOL (RIP, 8),
|
||
|
MAKE_ROUTE_PROTOCOL (IS_IS, 9),
|
||
|
MAKE_ROUTE_PROTOCOL (ES_IS, 10),
|
||
|
MAKE_ROUTE_PROTOCOL (CISCO, 11),
|
||
|
MAKE_ROUTE_PROTOCOL (BBN, 12),
|
||
|
MAKE_ROUTE_PROTOCOL (OSPF, 13),
|
||
|
MAKE_ROUTE_PROTOCOL (BGP, 14),
|
||
|
MAKE_ROUTE_PROTOCOL (NT_AUTOSTATIC, 10002),
|
||
|
MAKE_ROUTE_PROTOCOL (NT_STATIC, 10006),
|
||
|
MAKE_ROUTE_PROTOCOL (NT_STATIC_NON_DOD, 10007)
|
||
|
} NL_ROUTE_PROTOCOL,*PNL_ROUTE_PROTOCOL;
|
||
|
|
||
|
typedef enum {
|
||
|
IpPrefixOriginOther = 0,
|
||
|
IpPrefixOriginManual,
|
||
|
IpPrefixOriginWellKnown,
|
||
|
IpPrefixOriginDhcp,
|
||
|
IpPrefixOriginRouterAdvertisement,
|
||
|
IpPrefixOriginUnchanged = 16
|
||
|
} NL_PREFIX_ORIGIN;
|
||
|
|
||
|
typedef enum {
|
||
|
NlsoOther = 0,
|
||
|
NlsoManual,
|
||
|
NlsoWellKnown,
|
||
|
NlsoDhcp,
|
||
|
NlsoLinkLayerAddress,
|
||
|
NlsoRandom,
|
||
|
IpSuffixOriginOther = 0,
|
||
|
IpSuffixOriginManual,
|
||
|
IpSuffixOriginWellKnown,
|
||
|
IpSuffixOriginDhcp,
|
||
|
IpSuffixOriginLinkLayerAddress,
|
||
|
IpSuffixOriginRandom,
|
||
|
IpSuffixOriginUnchanged = 16
|
||
|
} NL_SUFFIX_ORIGIN;
|
||
|
|
||
|
typedef enum {
|
||
|
NlatUnspecified,
|
||
|
NlatUnicast,
|
||
|
NlatAnycast,
|
||
|
NlatMulticast,
|
||
|
NlatBroadcast,
|
||
|
NlatInvalid
|
||
|
} NL_ADDRESS_TYPE, *PNL_ADDRESS_TYPE;
|
||
|
|
||
|
typedef enum _NL_ROUTE_ORIGIN {
|
||
|
NlroManual,
|
||
|
NlroWellKnown,
|
||
|
NlroDHCP,
|
||
|
NlroRouterAdvertisement,
|
||
|
Nlro6to4,
|
||
|
} NL_ROUTE_ORIGIN, *PNL_ROUTE_ORIGIN;
|
||
|
|
||
|
typedef enum _NL_NEIGHBOR_STATE {
|
||
|
NlnsUnreachable,
|
||
|
NlnsIncomplete,
|
||
|
NlnsProbe,
|
||
|
NlnsDelay,
|
||
|
NlnsStale,
|
||
|
NlnsReachable,
|
||
|
NlnsPermanent,
|
||
|
NlnsMaximum,
|
||
|
} NL_NEIGHBOR_STATE, *PNL_NEIGHBOR_STATE;
|
||
|
|
||
|
typedef enum _NL_LINK_LOCAL_ADDRESS_BEHAVIOR {
|
||
|
LinkLocalAlwaysOff = 0,
|
||
|
LinkLocalDelayed,
|
||
|
LinkLocalAlwaysOn,
|
||
|
LinkLocalUnchanged = -1
|
||
|
} NL_LINK_LOCAL_ADDRESS_BEHAVIOR;
|
||
|
|
||
|
typedef enum _NL_ROUTER_DISCOVERY_BEHAVIOR {
|
||
|
RouterDiscoveryDisabled = 0,
|
||
|
RouterDiscoveryEnabled,
|
||
|
RouterDiscoveryDhcp,
|
||
|
RouterDiscoveryUnchanged = -1
|
||
|
} NL_ROUTER_DISCOVERY_BEHAVIOR;
|
||
|
|
||
|
typedef enum _NL_BANDWIDTH_FLAG {
|
||
|
NlbwDisabled = 0,
|
||
|
NlbwEnabled,
|
||
|
NlbwUnchanged = -1
|
||
|
} NL_BANDWIDTH_FLAG, *PNL_BANDWIDTH_FLAG;
|
||
|
|
||
|
typedef enum _NL_INTERFACE_NETWORK_CATEGORY_STATE {
|
||
|
NlincCategoryUnknown = 0,
|
||
|
NlincPublic = 1,
|
||
|
NlincPrivate = 2,
|
||
|
NlincDomainAuthenticated = 3,
|
||
|
NlincCategoryStateMax
|
||
|
} NL_INTERFACE_NETWORK_CATEGORY_STATE, *PNL_INTERFACE_NETWORK_CATEGORY_STATE;
|
||
|
|
||
|
typedef struct _NL_INTERFACE_OFFLOAD_ROD {
|
||
|
BOOLEAN NlChecksumSupported : 1;
|
||
|
BOOLEAN NlOptionsSupported : 1;
|
||
|
BOOLEAN TlDatagramChecksumSupported : 1;
|
||
|
BOOLEAN TlStreamChecksumSupported : 1;
|
||
|
BOOLEAN TlStreamOptionsSupported : 1;
|
||
|
BOOLEAN FastPathCompatible : 1;
|
||
|
BOOLEAN TlLargeSendOffloadSupported : 1;
|
||
|
BOOLEAN TlGiantSendOffloadSupported : 1;
|
||
|
} NL_INTERFACE_OFFLOAD_ROD, *PNL_INTERFACE_OFFLOAD_ROD;
|
||
|
|
||
|
typedef struct _NL_PATH_BANDWIDTH_ROD {
|
||
|
ULONG64 Bandwidth;
|
||
|
ULONG64 Instability;
|
||
|
BOOLEAN BandwidthPeaked;
|
||
|
} NL_PATH_BANDWIDTH_ROD, *PNL_PATH_BANDWIDTH_ROD;
|
||
|
|
||
|
typedef enum _NL_NETWORK_CATEGORY {
|
||
|
NetworkCategoryPublic,
|
||
|
NetworkCategoryPrivate,
|
||
|
NetworkCategoryDomainAuthenticated,
|
||
|
NetworkCategoryUnchanged = -1,
|
||
|
NetworkCategoryUnknown = -1
|
||
|
} NL_NETWORK_CATEGORY,*PNL_NETWORK_CATEGORY;
|
||
|
|
||
|
typedef struct _NL_BANDWIDTH_INFORMATION {
|
||
|
ULONG64 Bandwidth;
|
||
|
ULONG64 Instability;
|
||
|
BOOLEAN BandwidthPeaked;
|
||
|
} NL_BANDWIDTH_INFORMATION, *PNL_BANDWIDTH_INFORMATION;
|
||
|
|
||
|
#define NlpoOther IpPrefixOriginOther
|
||
|
#define NlpoManual IpPrefixOriginManual
|
||
|
#define NlpoWellKnown IpPrefixOriginWellKnown
|
||
|
#define NlpoDhcp IpPrefixOriginDhcp
|
||
|
#define NlpoRouterAdvertisement IpPrefixOriginRouterAdvertisement
|
||
|
|
||
|
#define NL_MAX_METRIC_COMPONENT ((((ULONG) 1) << 31) - 1)
|
||
|
|
||
|
#define NET_IF_CURRENT_SESSION ((ULONG)-1)
|
||
|
|
||
|
#endif
|
||
|
|
||
|
#endif
|