Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef _INC_NLDEF
      7 #define _INC_NLDEF
      8 
      9 typedef enum _NL_ADDRESS_TYPE {
     10   NlatUnspecified,
     11   NlatUnicast,
     12   NlatAnycast,
     13   NlatMulticast,
     14   NlatBroadcast,
     15   NlatInvalid
     16 } NL_ADDRESS_TYPE, *PNL_ADDRESS_TYPE;
     17 
     18 typedef enum _NL_DAD_STATE {
     19   NldsInvalid = 0,
     20   NldsTentative,
     21   NldsDuplicate,
     22   NldsDeprecated,
     23   NldsPreferred,
     24 
     25   IpDadStateInvalid   = 0,
     26   IpDadStateTentative,
     27   IpDadStateDuplicate,
     28   IpDadStateDeprecated,
     29   IpDadStatePreferred
     30 } NL_DAD_STATE;
     31 
     32 typedef enum _NL_LINK_LOCAL_ADDRESS_BEHAVIOR {
     33   LinkLocalAlwaysOff   = 0,
     34   LinkLocalDelayed,
     35   LinkLocalAlwaysOn,
     36   LinkLocalUnchanged   = -1
     37 } NL_LINK_LOCAL_ADDRESS_BEHAVIOR;
     38 
     39 typedef enum _NL_NEIGHBOR_STATE {
     40   NlnsUnreachable,
     41   NlnsIncomplete,
     42   NlnsProbe,
     43   NlnsDelay,
     44   NlnsStale,
     45   NlnsReachable,
     46   NlnsPermanent,
     47   NlnsMaximum
     48 } NL_NEIGHBOR_STATE, *PNL_NEIGHBOR_STATE;
     49 
     50 typedef enum _tag_NL_PREFIX_ORIGIN {
     51   IpPrefixOriginOther           = 0,
     52   IpPrefixOriginManual,
     53   IpPrefixOriginWellKnown,
     54   IpPrefixOriginDhcp,
     55   IpPrefixOriginRouterAdvertisement,
     56   IpPrefixOriginUnchanged  = 1 << 4
     57 } NL_PREFIX_ORIGIN;
     58 
     59 typedef enum _NL_ROUTE_ORIGIN {
     60   NlroManual,
     61   NlroWellKnown,
     62   NlroDHCP,
     63   NlroRouterAdvertisement,
     64   Nlro6to4
     65 } NL_ROUTE_ORIGIN, *PNL_ROUTE_ORIGIN;
     66 
     67 typedef enum _NL_ROUTE_PROTOCOL {
     68   RouteProtocolOther              = 1,
     69   RouteProtocolLocal,
     70   RouteProtocolNetMgmt,
     71   RouteProtocolIcmp,
     72   RouteProtocolEgp,
     73   RouteProtocolGgp,
     74   RouteProtocolHello,
     75   RouteProtocolRip,
     76   RouteProtocolIsIs,
     77   RouteProtocolEsIs,
     78   RouteProtocolCisco,
     79   RouteProtocolBbn,
     80   RouteProtocolOspf,
     81   RouteProtocolBgp,
     82 
     83   MIB_IPPROTO_OTHER               = 1,
     84      PROTO_IP_OTHER               = 1,
     85   MIB_IPPROTO_LOCAL               = 2,
     86      PROTO_IP_LOCAL               = 2,
     87   MIB_IPPROTO_NETMGMT             = 3,
     88      PROTO_IP_NETMGMT             = 3,
     89   MIB_IPPROTO_ICMP                = 4,
     90      PROTO_IP_ICMP                = 4,
     91   MIB_IPPROTO_EGP                 = 5,
     92      PROTO_IP_EGP                 = 5,
     93   MIB_IPPROTO_GGP                 = 6,
     94      PROTO_IP_GGP                 = 6,
     95   MIB_IPPROTO_HELLO               = 7,
     96      PROTO_IP_HELLO               = 7,
     97   MIB_IPPROTO_RIP                 = 8,
     98      PROTO_IP_RIP                 = 8,
     99   MIB_IPPROTO_IS_IS               = 9,
    100      PROTO_IP_IS_IS               = 9,
    101   MIB_IPPROTO_ES_IS               = 10,
    102      PROTO_IP_ES_IS               = 10,
    103   MIB_IPPROTO_CISCO               = 11,
    104      PROTO_IP_CISCO               = 11,
    105   MIB_IPPROTO_BBN                 = 12,
    106      PROTO_IP_BBN                 = 12,
    107   MIB_IPPROTO_OSPF                = 13,
    108      PROTO_IP_OSPF                = 13,
    109   MIB_IPPROTO_BGP                 = 14,
    110      PROTO_IP_BGP                 = 14,
    111   MIB_IPPROTO_NT_AUTOSTATIC       = 10002,
    112      PROTO_IP_NT_AUTOSTATIC       = 10002,
    113   MIB_IPPROTO_NT_STATIC           = 10006,
    114      PROTO_IP_NT_STATIC           = 10006,
    115   MIB_IPPROTO_NT_STATIC_NON_DOD   = 10007,
    116      PROTO_IP_NT_STATIC_NON_DOD   = 10007
    117 } NL_ROUTE_PROTOCOL, *PNL_ROUTE_PROTOCOL;
    118 
    119 typedef enum _NL_ROUTER_DISCOVERY_BEHAVIOR {
    120   RouterDiscoveryDisabled    = 0,
    121   RouterDiscoveryEnabled,
    122   RouterDiscoveryDhcp,
    123   RouterDiscoveryUnchanged   = -1
    124 } NL_ROUTER_DISCOVERY_BEHAVIOR;
    125 
    126 typedef enum _tag_NL_SUFFIX_ORIGIN {
    127   NlsoOther = 0,
    128   NlsoManual,
    129   NlsoWellKnown,
    130   NlsoDhcp,
    131   NlsoLinkLayerAddress,
    132   NlsoRandom,
    133 
    134   IpSuffixOriginOther        = 0,
    135   IpSuffixOriginManual,
    136   IpSuffixOriginWellKnown,
    137   IpSuffixOriginDhcp,
    138   IpSuffixOriginLinkLayerAddress,
    139   IpSuffixOriginRandom,
    140   IpSuffixOriginUnchanged = 1 << 4
    141 } NL_SUFFIX_ORIGIN;
    142 
    143 typedef struct _NL_INTERFACE_OFFLOAD_ROD {
    144   BOOLEAN NlChecksumSupported  :1;
    145   BOOLEAN NlOptionsSupported  :1;
    146   BOOLEAN TlDatagramChecksumSupported  :1;
    147   BOOLEAN TlStreamChecksumSupported  :1;
    148   BOOLEAN TlStreamOptionsSupported  :1;
    149   BOOLEAN FastPathCompatible : 1;
    150   BOOLEAN TlLargeSendOffloadSupported  :1;
    151   BOOLEAN TlGiantSendOffloadSupported  :1;
    152 } NL_INTERFACE_OFFLOAD_ROD, *PNL_INTERFACE_OFFLOAD_ROD;
    153 
    154 #endif /*_INC_NLDEF*/
    155 
    156