This repository has been archived on 2024-12-16. You can view files and clone it, but cannot push or open issues or pull requests.
CodeBlocksPortable/WATCOM/h/nt/nldef.h

213 lines
6.4 KiB
C

/*
* nldef.h Network layer definitions
*
* =========================================================================
*
* Open Watcom Project
*
* Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
*
* This file is automatically generated. Do not edit directly.
*
* =========================================================================
*/
#ifndef _NLDEF_
#define _NLDEF_
#ifndef _ENABLE_AUTODEPEND
#pragma read_only_file;
#endif
#ifdef __cplusplus
extern "C" {
#endif
/* Network layer maximum metric component */
#define NL_MAX_METRIC_COMPONENT 0x7FFFFFFFL
/* Macro to declare route protocols */
#define MAKE_ROUTE_PROTOCOL( p1, p2 ) \
MIB_IPPROTO_##p1 = p2, \
PROTO_IP_##p1 = p2
/* Network interface current session */
#define NET_IF_CURRENT_SESSION 0xFFFFFFFFL
/* Network layer prefix origins */
typedef enum {
IpPrefixOriginOther = 0,
IpPrefixOriginManual = 1,
IpPrefixOriginWellKnown = 2,
IpPrefixOriginDhcp = 3,
IpPrefixOriginRouterAdvertisement = 4,
IpPrefixOriginUnchanged = 8
} NL_PREFIX_ORIGIN;
#define NlpoOther IpPrefixOriginOther
#define NlpoManual IpPrefixOriginManual
#define NlpoWellKnown IpPrefixOriginWellKnown
#define NlpoDhcp IpPrefixOriginDhcp
#define NlpoRouterAdvertisement IpPrefixOriginRouterAdvertisement
/* Network layer suffix origins */
typedef enum {
NlsoOther = 0,
NlsoManual = 1,
NlsoWellKnown = 2,
NlsoDhcp = 3,
NlsoLinkLayerAddress = 4,
NlsoRandom = 5,
IpSuffixOriginOther = 0,
IpSuffixOriginManual = 1,
IpSuffixOriginWellKnown = 2,
IpSuffixOriginDhcp = 3,
IpSuffixOriginLinkLayerAddress = 4,
IpSuffixOriginRandom = 5,
IpSuffixOriginUnchanged = 8
} NL_SUFFIX_ORIGIN;
/* Network layer DAD states */
typedef enum {
NldsInvalid = 0,
NldsTentative = 1,
NldsDuplicate = 2,
NldsDeprecated = 3,
NldsPreferred = 4,
IpDadStateInvalid = 0,
IpDadStateTentative = 1,
IpDadStateDuplicate = 2,
IpDadStateDeprecated = 3,
IpDadStatePreferred = 4
} NL_DAD_STATE;
/* Network layer route protocols */
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;
typedef NL_ROUTE_PROTOCOL *PNL_ROUTE_PROTOCOL;
/* Network layer address types */
typedef enum {
NlatUnspecified = 0,
NlatUnicast = 1,
NlatAnycast = 2,
NlatMulticast = 3,
NlatBroadcast = 4,
NlatInvalid = 5
} NL_ADDRESS_TYPE;
typedef NL_ADDRESS_TYPE *PNL_ADDRESS_TYPE;
/* Network layer route origins */
typedef enum _NL_ROUTE_ORIGIN {
NlroManual = 0,
NlroWellKnown = 1,
NlroDHCP = 2,
NlroRouterAdvertisement = 3,
Nlro6to4 = 4
} NL_ROUTE_ORIGIN;
typedef NL_ROUTE_ORIGIN *PNL_ROUTE_ORIGIN;
/* Network layer neighbor states */
typedef enum _NL_NEIGHBOR_STATE {
NlnsUnreachable = 0,
NlnsIncomplete = 1,
NlnsProbe = 2,
NlnsDelay = 3,
NlnsState = 4,
NlnsReachable = 5,
NlnsPermanent = 6,
NlnsMaximum = 7
} NL_NEIGHBOR_STATE;
typedef NL_NEIGHBOR_STATE *PNL_NEIGHBOR_STATE;
/* Network layer link local address behaviors */
typedef enum _NL_LINK_LOCAL_ADDRESS_BEHAVIOR {
LinkLocalAlwaysOff = 0,
LinkLocalDelayed = 1,
LinkLocalAlwaysOn = 2,
LinkLocalUnchanged = -1
} NL_LINK_LOCAL_ADDRESS_BEHAVIOR;
/* Network layer interface offload rod */
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;
typedef NL_INTERFACE_OFFLOAD_ROD *PNL_INTERFACE_OFFLOAD_ROD;
/* Network layer router discovery behaviors */
typedef enum _NL_ROUTER_DISCOVERY_BEHAVIOR {
RouterDiscoveryDisabled = 0,
RouterDiscoveryEnabled = 1,
RouterDiscoveryDhcp = 2,
RouterDiscoveryUnchanged = -1
} NL_ROUTER_DISCOVERY_BEHAVIOR;
/* Network layer bandwidth flags */
typedef enum _NL_BANDWIDTH_FLAG {
NlbwDisabled = 0,
NlbwEnabled = 1,
NlbwUnchanged = -1
} NL_BANDWIDTH_FLAG;
typedef NL_BANDWIDTH_FLAG *PNL_BANDWIDTH_FLAG;
/* Network layer path bandwidth rod */
typedef struct _NL_PATH_BANDWIDTH_ROD {
ULONG64 Bandwidth;
ULONG64 Instability;
BOOLEAN BandwidthPeaked;
} NL_PATH_BANDWIDTH_ROD;
typedef NL_PATH_BANDWIDTH_ROD *PNL_PATH_BANDWIDTH_ROD;
/* Network layer network categories */
typedef enum _NL_NETWORK_CATEGORY {
NetworkCategoryPublic = 0,
NetworkCategoryPrivate = 1,
NetworkCategoryDomainAuthenticated = 2,
NetworkCategoryUnchanged = -1,
NetworkCategoryUnknown = -1
} NL_NETWORK_CATEGORY;
typedef NL_NETWORK_CATEGORY *PNL_NETWORK_CATEGORY;
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* _NLDEF_ */