//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (1831)
//--------------------------------------------------------------------------------
pub const IOCTL_NDIS_RESERVED5 = @as(u32, 1507380);
pub const IOCTL_NDIS_RESERVED6 = @as(u32, 1540152);
pub const NDIS_OBJECT_TYPE_DEFAULT = @as(u32, 128);
pub const NDIS_OBJECT_TYPE_MINIPORT_INIT_PARAMETERS = @as(u32, 129);
pub const NDIS_OBJECT_TYPE_SG_DMA_DESCRIPTION = @as(u32, 131);
pub const NDIS_OBJECT_TYPE_MINIPORT_INTERRUPT = @as(u32, 132);
pub const NDIS_OBJECT_TYPE_DEVICE_OBJECT_ATTRIBUTES = @as(u32, 133);
pub const NDIS_OBJECT_TYPE_BIND_PARAMETERS = @as(u32, 134);
pub const NDIS_OBJECT_TYPE_OPEN_PARAMETERS = @as(u32, 135);
pub const NDIS_OBJECT_TYPE_RSS_CAPABILITIES = @as(u32, 136);
pub const NDIS_OBJECT_TYPE_RSS_PARAMETERS = @as(u32, 137);
pub const NDIS_OBJECT_TYPE_MINIPORT_DRIVER_CHARACTERISTICS = @as(u32, 138);
pub const NDIS_OBJECT_TYPE_FILTER_DRIVER_CHARACTERISTICS = @as(u32, 139);
pub const NDIS_OBJECT_TYPE_FILTER_PARTIAL_CHARACTERISTICS = @as(u32, 140);
pub const NDIS_OBJECT_TYPE_FILTER_ATTRIBUTES = @as(u32, 141);
pub const NDIS_OBJECT_TYPE_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS = @as(u32, 142);
pub const NDIS_OBJECT_TYPE_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS = @as(u32, 143);
pub const NDIS_OBJECT_TYPE_CO_PROTOCOL_CHARACTERISTICS = @as(u32, 144);
pub const NDIS_OBJECT_TYPE_CO_MINIPORT_CHARACTERISTICS = @as(u32, 145);
pub const NDIS_OBJECT_TYPE_MINIPORT_PNP_CHARACTERISTICS = @as(u32, 146);
pub const NDIS_OBJECT_TYPE_CLIENT_CHIMNEY_OFFLOAD_CHARACTERISTICS = @as(u32, 147);
pub const NDIS_OBJECT_TYPE_PROVIDER_CHIMNEY_OFFLOAD_CHARACTERISTICS = @as(u32, 148);
pub const NDIS_OBJECT_TYPE_PROTOCOL_DRIVER_CHARACTERISTICS = @as(u32, 149);
pub const NDIS_OBJECT_TYPE_REQUEST_EX = @as(u32, 150);
pub const NDIS_OBJECT_TYPE_TIMER_CHARACTERISTICS = @as(u32, 151);
pub const NDIS_OBJECT_TYPE_STATUS_INDICATION = @as(u32, 152);
pub const NDIS_OBJECT_TYPE_FILTER_ATTACH_PARAMETERS = @as(u32, 153);
pub const NDIS_OBJECT_TYPE_FILTER_PAUSE_PARAMETERS = @as(u32, 154);
pub const NDIS_OBJECT_TYPE_FILTER_RESTART_PARAMETERS = @as(u32, 155);
pub const NDIS_OBJECT_TYPE_PORT_CHARACTERISTICS = @as(u32, 156);
pub const NDIS_OBJECT_TYPE_PORT_STATE = @as(u32, 157);
pub const NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES = @as(u32, 158);
pub const NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES = @as(u32, 159);
pub const NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES = @as(u32, 160);
pub const NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES = @as(u32, 161);
pub const NDIS_OBJECT_TYPE_RESTART_GENERAL_ATTRIBUTES = @as(u32, 162);
pub const NDIS_OBJECT_TYPE_PROTOCOL_RESTART_PARAMETERS = @as(u32, 163);
pub const NDIS_OBJECT_TYPE_MINIPORT_ADD_DEVICE_REGISTRATION_ATTRIBUTES = @as(u32, 164);
pub const NDIS_OBJECT_TYPE_CO_CALL_MANAGER_OPTIONAL_HANDLERS = @as(u32, 165);
pub const NDIS_OBJECT_TYPE_CO_CLIENT_OPTIONAL_HANDLERS = @as(u32, 166);
pub const NDIS_OBJECT_TYPE_OFFLOAD = @as(u32, 167);
pub const NDIS_OBJECT_TYPE_OFFLOAD_ENCAPSULATION = @as(u32, 168);
pub const NDIS_OBJECT_TYPE_CONFIGURATION_OBJECT = @as(u32, 169);
pub const NDIS_OBJECT_TYPE_DRIVER_WRAPPER_OBJECT = @as(u32, 170);
pub const NDIS_OBJECT_TYPE_HD_SPLIT_ATTRIBUTES = @as(u32, 171);
pub const NDIS_OBJECT_TYPE_NSI_NETWORK_RW_STRUCT = @as(u32, 172);
pub const NDIS_OBJECT_TYPE_NSI_COMPARTMENT_RW_STRUCT = @as(u32, 173);
pub const NDIS_OBJECT_TYPE_NSI_INTERFACE_PERSIST_RW_STRUCT = @as(u32, 174);
pub const NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES = @as(u32, 175);
pub const NDIS_OBJECT_TYPE_SHARED_MEMORY_PROVIDER_CHARACTERISTICS = @as(u32, 176);
pub const NDIS_OBJECT_TYPE_RSS_PROCESSOR_INFO = @as(u32, 177);
pub const NDIS_OBJECT_TYPE_NDK_PROVIDER_CHARACTERISTICS = @as(u32, 178);
pub const NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_NDK_ATTRIBUTES = @as(u32, 179);
pub const NDIS_OBJECT_TYPE_MINIPORT_SS_CHARACTERISTICS = @as(u32, 180);
pub const NDIS_OBJECT_TYPE_QOS_CAPABILITIES = @as(u32, 181);
pub const NDIS_OBJECT_TYPE_QOS_PARAMETERS = @as(u32, 182);
pub const NDIS_OBJECT_TYPE_QOS_CLASSIFICATION_ELEMENT = @as(u32, 183);
pub const NDIS_OBJECT_TYPE_SWITCH_OPTIONAL_HANDLERS = @as(u32, 184);
pub const NDIS_OBJECT_TYPE_PD_TRANSMIT_QUEUE = @as(u32, 190);
pub const NDIS_OBJECT_TYPE_PD_RECEIVE_QUEUE = @as(u32, 191);
pub const NDIS_OBJECT_TYPE_MINIPORT_ADAPTER_PACKET_DIRECT_ATTRIBUTES = @as(u32, 197);
pub const NDIS_OBJECT_TYPE_MINIPORT_DEVICE_POWER_NOTIFICATION = @as(u32, 198);
pub const NDIS_OBJECT_TYPE_RSS_PARAMETERS_V2 = @as(u32, 200);
pub const NDIS_OBJECT_TYPE_RSS_SET_INDIRECTION_ENTRIES = @as(u32, 201);
pub const NDIS_STATISTICS_FLAGS_VALID_DIRECTED_FRAMES_RCV = @as(u32, 1);
pub const NDIS_STATISTICS_FLAGS_VALID_MULTICAST_FRAMES_RCV = @as(u32, 2);
pub const NDIS_STATISTICS_FLAGS_VALID_BROADCAST_FRAMES_RCV = @as(u32, 4);
pub const NDIS_STATISTICS_FLAGS_VALID_BYTES_RCV = @as(u32, 8);
pub const NDIS_STATISTICS_FLAGS_VALID_RCV_DISCARDS = @as(u32, 16);
pub const NDIS_STATISTICS_FLAGS_VALID_RCV_ERROR = @as(u32, 32);
pub const NDIS_STATISTICS_FLAGS_VALID_DIRECTED_FRAMES_XMIT = @as(u32, 64);
pub const NDIS_STATISTICS_FLAGS_VALID_MULTICAST_FRAMES_XMIT = @as(u32, 128);
pub const NDIS_STATISTICS_FLAGS_VALID_BROADCAST_FRAMES_XMIT = @as(u32, 256);
pub const NDIS_STATISTICS_FLAGS_VALID_BYTES_XMIT = @as(u32, 512);
pub const NDIS_STATISTICS_FLAGS_VALID_XMIT_ERROR = @as(u32, 1024);
pub const NDIS_STATISTICS_FLAGS_VALID_XMIT_DISCARDS = @as(u32, 32768);
pub const NDIS_STATISTICS_FLAGS_VALID_DIRECTED_BYTES_RCV = @as(u32, 65536);
pub const NDIS_STATISTICS_FLAGS_VALID_MULTICAST_BYTES_RCV = @as(u32, 131072);
pub const NDIS_STATISTICS_FLAGS_VALID_BROADCAST_BYTES_RCV = @as(u32, 262144);
pub const NDIS_STATISTICS_FLAGS_VALID_DIRECTED_BYTES_XMIT = @as(u32, 524288);
pub const NDIS_STATISTICS_FLAGS_VALID_MULTICAST_BYTES_XMIT = @as(u32, 1048576);
pub const NDIS_STATISTICS_FLAGS_VALID_BROADCAST_BYTES_XMIT = @as(u32, 2097152);
pub const NDIS_STATISTICS_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_RSC_STATISTICS_REVISION_1 = @as(u32, 1);
pub const NDIS_INTERRUPT_MODERATION_CHANGE_NEEDS_RESET = @as(u32, 1);
pub const NDIS_INTERRUPT_MODERATION_CHANGE_NEEDS_REINITIALIZE = @as(u32, 2);
pub const NDIS_INTERRUPT_MODERATION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_TIMEOUT_DPC_REQUEST_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_OBJECT_TYPE_PCI_DEVICE_CUSTOM_PROPERTIES_REVISION_1 = @as(u32, 1);
pub const NDIS_OBJECT_TYPE_PCI_DEVICE_CUSTOM_PROPERTIES_REVISION_2 = @as(u32, 2);
pub const OID_GEN_SUPPORTED_LIST = @as(u32, 65793);
pub const OID_GEN_HARDWARE_STATUS = @as(u32, 65794);
pub const OID_GEN_MEDIA_SUPPORTED = @as(u32, 65795);
pub const OID_GEN_MEDIA_IN_USE = @as(u32, 65796);
pub const OID_GEN_MAXIMUM_LOOKAHEAD = @as(u32, 65797);
pub const OID_GEN_MAXIMUM_FRAME_SIZE = @as(u32, 65798);
pub const OID_GEN_LINK_SPEED = @as(u32, 65799);
pub const OID_GEN_TRANSMIT_BUFFER_SPACE = @as(u32, 65800);
pub const OID_GEN_RECEIVE_BUFFER_SPACE = @as(u32, 65801);
pub const OID_GEN_TRANSMIT_BLOCK_SIZE = @as(u32, 65802);
pub const OID_GEN_RECEIVE_BLOCK_SIZE = @as(u32, 65803);
pub const OID_GEN_VENDOR_ID = @as(u32, 65804);
pub const OID_GEN_VENDOR_DESCRIPTION = @as(u32, 65805);
pub const OID_GEN_CURRENT_PACKET_FILTER = @as(u32, 65806);
pub const OID_GEN_CURRENT_LOOKAHEAD = @as(u32, 65807);
pub const OID_GEN_DRIVER_VERSION = @as(u32, 65808);
pub const OID_GEN_MAXIMUM_TOTAL_SIZE = @as(u32, 65809);
pub const OID_GEN_PROTOCOL_OPTIONS = @as(u32, 65810);
pub const OID_GEN_MAC_OPTIONS = @as(u32, 65811);
pub const OID_GEN_MEDIA_CONNECT_STATUS = @as(u32, 65812);
pub const OID_GEN_MAXIMUM_SEND_PACKETS = @as(u32, 65813);
pub const OID_GEN_VENDOR_DRIVER_VERSION = @as(u32, 65814);
pub const OID_GEN_SUPPORTED_GUIDS = @as(u32, 65815);
pub const OID_GEN_NETWORK_LAYER_ADDRESSES = @as(u32, 65816);
pub const OID_GEN_TRANSPORT_HEADER_OFFSET = @as(u32, 65817);
pub const OID_GEN_MEDIA_CAPABILITIES = @as(u32, 66049);
pub const OID_GEN_PHYSICAL_MEDIUM = @as(u32, 66050);
pub const OID_GEN_RECEIVE_SCALE_CAPABILITIES = @as(u32, 66051);
pub const OID_GEN_RECEIVE_SCALE_PARAMETERS = @as(u32, 66052);
pub const OID_GEN_MAC_ADDRESS = @as(u32, 66053);
pub const OID_GEN_MAX_LINK_SPEED = @as(u32, 66054);
pub const OID_GEN_LINK_STATE = @as(u32, 66055);
pub const OID_GEN_LINK_PARAMETERS = @as(u32, 66056);
pub const OID_GEN_INTERRUPT_MODERATION = @as(u32, 66057);
pub const OID_GEN_NDIS_RESERVED_3 = @as(u32, 66058);
pub const OID_GEN_NDIS_RESERVED_4 = @as(u32, 66059);
pub const OID_GEN_NDIS_RESERVED_5 = @as(u32, 66060);
pub const OID_GEN_ENUMERATE_PORTS = @as(u32, 66061);
pub const OID_GEN_PORT_STATE = @as(u32, 66062);
pub const OID_GEN_PORT_AUTHENTICATION_PARAMETERS = @as(u32, 66063);
pub const OID_GEN_TIMEOUT_DPC_REQUEST_CAPABILITIES = @as(u32, 66064);
pub const OID_GEN_PCI_DEVICE_CUSTOM_PROPERTIES = @as(u32, 66065);
pub const OID_GEN_NDIS_RESERVED_6 = @as(u32, 66066);
pub const OID_GEN_PHYSICAL_MEDIUM_EX = @as(u32, 66067);
pub const OID_GEN_RECEIVE_SCALE_PARAMETERS_V2 = @as(u32, 66068);
pub const OID_GEN_MACHINE_NAME = @as(u32, 66074);
pub const OID_GEN_RNDIS_CONFIG_PARAMETER = @as(u32, 66075);
pub const OID_GEN_VLAN_ID = @as(u32, 66076);
pub const OID_GEN_RECEIVE_HASH = @as(u32, 66079);
pub const OID_GEN_MINIPORT_RESTART_ATTRIBUTES = @as(u32, 66077);
pub const OID_GEN_HD_SPLIT_PARAMETERS = @as(u32, 66078);
pub const OID_GEN_HD_SPLIT_CURRENT_CONFIG = @as(u32, 66080);
pub const OID_GEN_PROMISCUOUS_MODE = @as(u32, 66176);
pub const OID_GEN_LAST_CHANGE = @as(u32, 66177);
pub const OID_GEN_DISCONTINUITY_TIME = @as(u32, 66178);
pub const OID_GEN_OPERATIONAL_STATUS = @as(u32, 66179);
pub const OID_GEN_XMIT_LINK_SPEED = @as(u32, 66180);
pub const OID_GEN_RCV_LINK_SPEED = @as(u32, 66181);
pub const OID_GEN_UNKNOWN_PROTOS = @as(u32, 66182);
pub const OID_GEN_INTERFACE_INFO = @as(u32, 66183);
pub const OID_GEN_ADMIN_STATUS = @as(u32, 66184);
pub const OID_GEN_ALIAS = @as(u32, 66185);
pub const OID_GEN_MEDIA_CONNECT_STATUS_EX = @as(u32, 66186);
pub const OID_GEN_LINK_SPEED_EX = @as(u32, 66187);
pub const OID_GEN_MEDIA_DUPLEX_STATE = @as(u32, 66188);
pub const OID_GEN_IP_OPER_STATUS = @as(u32, 66189);
pub const OID_WWAN_DRIVER_CAPS = @as(u32, 234946816);
pub const OID_WWAN_DEVICE_CAPS = @as(u32, 234946817);
pub const OID_WWAN_READY_INFO = @as(u32, 234946818);
pub const OID_WWAN_RADIO_STATE = @as(u32, 234946819);
pub const OID_WWAN_PIN = @as(u32, 234946820);
pub const OID_WWAN_PIN_LIST = @as(u32, 234946821);
pub const OID_WWAN_HOME_PROVIDER = @as(u32, 234946822);
pub const OID_WWAN_PREFERRED_PROVIDERS = @as(u32, 234946823);
pub const OID_WWAN_VISIBLE_PROVIDERS = @as(u32, 234946824);
pub const OID_WWAN_REGISTER_STATE = @as(u32, 234946825);
pub const OID_WWAN_PACKET_SERVICE = @as(u32, 234946826);
pub const OID_WWAN_SIGNAL_STATE = @as(u32, 234946827);
pub const OID_WWAN_CONNECT = @as(u32, 234946828);
pub const OID_WWAN_PROVISIONED_CONTEXTS = @as(u32, 234946829);
pub const OID_WWAN_SERVICE_ACTIVATION = @as(u32, 234946830);
pub const OID_WWAN_SMS_CONFIGURATION = @as(u32, 234946831);
pub const OID_WWAN_SMS_READ = @as(u32, 234946832);
pub const OID_WWAN_SMS_SEND = @as(u32, 234946833);
pub const OID_WWAN_SMS_DELETE = @as(u32, 234946834);
pub const OID_WWAN_SMS_STATUS = @as(u32, 234946835);
pub const OID_WWAN_VENDOR_SPECIFIC = @as(u32, 234946836);
pub const OID_WWAN_AUTH_CHALLENGE = @as(u32, 234946837);
pub const OID_WWAN_ENUMERATE_DEVICE_SERVICES = @as(u32, 234946838);
pub const OID_WWAN_SUBSCRIBE_DEVICE_SERVICE_EVENTS = @as(u32, 234946839);
pub const OID_WWAN_DEVICE_SERVICE_COMMAND = @as(u32, 234946840);
pub const OID_WWAN_USSD = @as(u32, 234946841);
pub const OID_WWAN_PIN_EX = @as(u32, 234946849);
pub const OID_WWAN_ENUMERATE_DEVICE_SERVICE_COMMANDS = @as(u32, 234946850);
pub const OID_WWAN_DEVICE_SERVICE_SESSION = @as(u32, 234946851);
pub const OID_WWAN_DEVICE_SERVICE_SESSION_WRITE = @as(u32, 234946852);
pub const OID_WWAN_PREFERRED_MULTICARRIER_PROVIDERS = @as(u32, 234946853);
pub const OID_WWAN_CREATE_MAC = @as(u32, 234946854);
pub const OID_WWAN_DELETE_MAC = @as(u32, 234946855);
pub const OID_WWAN_UICC_FILE_STATUS = @as(u32, 234946856);
pub const OID_WWAN_UICC_ACCESS_BINARY = @as(u32, 234946857);
pub const OID_WWAN_UICC_ACCESS_RECORD = @as(u32, 234946858);
pub const OID_WWAN_PIN_EX2 = @as(u32, 234946859);
pub const OID_WWAN_MBIM_VERSION = @as(u32, 234946860);
pub const OID_WWAN_SYS_CAPS = @as(u32, 234946861);
pub const OID_WWAN_DEVICE_CAPS_EX = @as(u32, 234946862);
pub const OID_WWAN_SYS_SLOTMAPPINGS = @as(u32, 234946863);
pub const OID_WWAN_SLOT_INFO_STATUS = @as(u32, 234946864);
pub const OID_WWAN_DEVICE_BINDINGS = @as(u32, 234946865);
pub const OID_WWAN_REGISTER_STATE_EX = @as(u32, 234946866);
pub const OID_WWAN_IMS_VOICE_STATE = @as(u32, 234946867);
pub const OID_WWAN_SIGNAL_STATE_EX = @as(u32, 234946868);
pub const OID_WWAN_LOCATION_STATE = @as(u32, 234946869);
pub const OID_WWAN_NITZ = @as(u32, 234946870);
pub const OID_WWAN_NETWORK_IDLE_HINT = @as(u32, 234946871);
pub const OID_WWAN_PRESHUTDOWN = @as(u32, 234946872);
pub const OID_WWAN_UICC_ATR = @as(u32, 234946873);
pub const OID_WWAN_UICC_OPEN_CHANNEL = @as(u32, 234946874);
pub const OID_WWAN_UICC_CLOSE_CHANNEL = @as(u32, 234946875);
pub const OID_WWAN_UICC_APDU = @as(u32, 234946876);
pub const OID_WWAN_UICC_TERMINAL_CAPABILITY = @as(u32, 234946877);
pub const OID_WWAN_PS_MEDIA_CONFIG = @as(u32, 234946878);
pub const OID_WWAN_SAR_CONFIG = @as(u32, 234946879);
pub const OID_WWAN_SAR_TRANSMISSION_STATUS = @as(u32, 234946880);
pub const OID_WWAN_NETWORK_BLACKLIST = @as(u32, 234946881);
pub const OID_WWAN_LTE_ATTACH_CONFIG = @as(u32, 234946882);
pub const OID_WWAN_LTE_ATTACH_STATUS = @as(u32, 234946883);
pub const OID_WWAN_MODEM_CONFIG_INFO = @as(u32, 234946884);
pub const OID_WWAN_PCO = @as(u32, 234946885);
pub const OID_WWAN_UICC_RESET = @as(u32, 234946886);
pub const OID_WWAN_DEVICE_RESET = @as(u32, 234946887);
pub const OID_WWAN_BASE_STATIONS_INFO = @as(u32, 234946888);
pub const OID_WWAN_MPDP = @as(u32, 234946889);
pub const OID_WWAN_UICC_APP_LIST = @as(u32, 234946890);
pub const OID_WWAN_MODEM_LOGGING_CONFIG = @as(u32, 234946891);
pub const OID_WWAN_REGISTER_PARAMS = @as(u32, 234946892);
pub const OID_WWAN_NETWORK_PARAMS = @as(u32, 234946893);
pub const OID_GEN_XMIT_OK = @as(u32, 131329);
pub const OID_GEN_RCV_OK = @as(u32, 131330);
pub const OID_GEN_XMIT_ERROR = @as(u32, 131331);
pub const OID_GEN_RCV_ERROR = @as(u32, 131332);
pub const OID_GEN_RCV_NO_BUFFER = @as(u32, 131333);
pub const OID_GEN_STATISTICS = @as(u32, 131334);
pub const OID_GEN_DIRECTED_BYTES_XMIT = @as(u32, 131585);
pub const OID_GEN_DIRECTED_FRAMES_XMIT = @as(u32, 131586);
pub const OID_GEN_MULTICAST_BYTES_XMIT = @as(u32, 131587);
pub const OID_GEN_MULTICAST_FRAMES_XMIT = @as(u32, 131588);
pub const OID_GEN_BROADCAST_BYTES_XMIT = @as(u32, 131589);
pub const OID_GEN_BROADCAST_FRAMES_XMIT = @as(u32, 131590);
pub const OID_GEN_DIRECTED_BYTES_RCV = @as(u32, 131591);
pub const OID_GEN_DIRECTED_FRAMES_RCV = @as(u32, 131592);
pub const OID_GEN_MULTICAST_BYTES_RCV = @as(u32, 131593);
pub const OID_GEN_MULTICAST_FRAMES_RCV = @as(u32, 131594);
pub const OID_GEN_BROADCAST_BYTES_RCV = @as(u32, 131595);
pub const OID_GEN_BROADCAST_FRAMES_RCV = @as(u32, 131596);
pub const OID_GEN_RCV_CRC_ERROR = @as(u32, 131597);
pub const OID_GEN_TRANSMIT_QUEUE_LENGTH = @as(u32, 131598);
pub const OID_GEN_GET_TIME_CAPS = @as(u32, 131599);
pub const OID_GEN_GET_NETCARD_TIME = @as(u32, 131600);
pub const OID_GEN_NETCARD_LOAD = @as(u32, 131601);
pub const OID_GEN_DEVICE_PROFILE = @as(u32, 131602);
pub const OID_GEN_INIT_TIME_MS = @as(u32, 131603);
pub const OID_GEN_RESET_COUNTS = @as(u32, 131604);
pub const OID_GEN_MEDIA_SENSE_COUNTS = @as(u32, 131605);
pub const OID_GEN_FRIENDLY_NAME = @as(u32, 131606);
pub const OID_GEN_NDIS_RESERVED_1 = @as(u32, 131607);
pub const OID_GEN_NDIS_RESERVED_2 = @as(u32, 131608);
pub const OID_GEN_BYTES_RCV = @as(u32, 131609);
pub const OID_GEN_BYTES_XMIT = @as(u32, 131610);
pub const OID_GEN_RCV_DISCARDS = @as(u32, 131611);
pub const OID_GEN_XMIT_DISCARDS = @as(u32, 131612);
pub const OID_TCP_RSC_STATISTICS = @as(u32, 131613);
pub const OID_GEN_NDIS_RESERVED_7 = @as(u32, 131614);
pub const OID_GEN_CO_SUPPORTED_LIST = @as(u32, 65793);
pub const OID_GEN_CO_HARDWARE_STATUS = @as(u32, 65794);
pub const OID_GEN_CO_MEDIA_SUPPORTED = @as(u32, 65795);
pub const OID_GEN_CO_MEDIA_IN_USE = @as(u32, 65796);
pub const OID_GEN_CO_LINK_SPEED = @as(u32, 65799);
pub const OID_GEN_CO_VENDOR_ID = @as(u32, 65804);
pub const OID_GEN_CO_VENDOR_DESCRIPTION = @as(u32, 65805);
pub const OID_GEN_CO_DRIVER_VERSION = @as(u32, 65808);
pub const OID_GEN_CO_PROTOCOL_OPTIONS = @as(u32, 65810);
pub const OID_GEN_CO_MAC_OPTIONS = @as(u32, 65811);
pub const OID_GEN_CO_MEDIA_CONNECT_STATUS = @as(u32, 65812);
pub const OID_GEN_CO_VENDOR_DRIVER_VERSION = @as(u32, 65814);
pub const OID_GEN_CO_SUPPORTED_GUIDS = @as(u32, 65815);
pub const OID_GEN_CO_GET_TIME_CAPS = @as(u32, 131599);
pub const OID_GEN_CO_GET_NETCARD_TIME = @as(u32, 131600);
pub const OID_GEN_CO_MINIMUM_LINK_SPEED = @as(u32, 131360);
pub const OID_GEN_CO_XMIT_PDUS_OK = @as(u32, 131329);
pub const OID_GEN_CO_RCV_PDUS_OK = @as(u32, 131330);
pub const OID_GEN_CO_XMIT_PDUS_ERROR = @as(u32, 131331);
pub const OID_GEN_CO_RCV_PDUS_ERROR = @as(u32, 131332);
pub const OID_GEN_CO_RCV_PDUS_NO_BUFFER = @as(u32, 131333);
pub const OID_GEN_CO_RCV_CRC_ERROR = @as(u32, 131597);
pub const OID_GEN_CO_TRANSMIT_QUEUE_LENGTH = @as(u32, 131598);
pub const OID_GEN_CO_BYTES_XMIT = @as(u32, 131585);
pub const OID_GEN_CO_BYTES_RCV = @as(u32, 131591);
pub const OID_GEN_CO_NETCARD_LOAD = @as(u32, 131601);
pub const OID_GEN_CO_DEVICE_PROFILE = @as(u32, 131602);
pub const OID_GEN_CO_BYTES_XMIT_OUTSTANDING = @as(u32, 131617);
pub const OID_KDNET_ENUMERATE_PFS = @as(u32, 131618);
pub const OID_KDNET_ADD_PF = @as(u32, 131619);
pub const OID_KDNET_REMOVE_PF = @as(u32, 131620);
pub const OID_KDNET_QUERY_PF_INFORMATION = @as(u32, 131621);
pub const OID_802_3_PERMANENT_ADDRESS = @as(u32, 16843009);
pub const OID_802_3_CURRENT_ADDRESS = @as(u32, 16843010);
pub const OID_802_3_MULTICAST_LIST = @as(u32, 16843011);
pub const OID_802_3_MAXIMUM_LIST_SIZE = @as(u32, 16843012);
pub const OID_802_3_MAC_OPTIONS = @as(u32, 16843013);
pub const NDIS_802_3_MAC_OPTION_PRIORITY = @as(u32, 1);
pub const OID_802_3_RCV_ERROR_ALIGNMENT = @as(u32, 16908545);
pub const OID_802_3_XMIT_ONE_COLLISION = @as(u32, 16908546);
pub const OID_802_3_XMIT_MORE_COLLISIONS = @as(u32, 16908547);
pub const OID_802_3_XMIT_DEFERRED = @as(u32, 16908801);
pub const OID_802_3_XMIT_MAX_COLLISIONS = @as(u32, 16908802);
pub const OID_802_3_RCV_OVERRUN = @as(u32, 16908803);
pub const OID_802_3_XMIT_UNDERRUN = @as(u32, 16908804);
pub const OID_802_3_XMIT_HEARTBEAT_FAILURE = @as(u32, 16908805);
pub const OID_802_3_XMIT_TIMES_CRS_LOST = @as(u32, 16908806);
pub const OID_802_3_XMIT_LATE_COLLISIONS = @as(u32, 16908807);
pub const OID_802_3_ADD_MULTICAST_ADDRESS = @as(u32, 16843272);
pub const OID_802_3_DELETE_MULTICAST_ADDRESS = @as(u32, 16843273);
pub const OID_802_5_PERMANENT_ADDRESS = @as(u32, 33620225);
pub const OID_802_5_CURRENT_ADDRESS = @as(u32, 33620226);
pub const OID_802_5_CURRENT_FUNCTIONAL = @as(u32, 33620227);
pub const OID_802_5_CURRENT_GROUP = @as(u32, 33620228);
pub const OID_802_5_LAST_OPEN_STATUS = @as(u32, 33620229);
pub const OID_802_5_CURRENT_RING_STATUS = @as(u32, 33620230);
pub const OID_802_5_CURRENT_RING_STATE = @as(u32, 33620231);
pub const OID_802_5_LINE_ERRORS = @as(u32, 33685761);
pub const OID_802_5_LOST_FRAMES = @as(u32, 33685762);
pub const OID_802_5_BURST_ERRORS = @as(u32, 33686017);
pub const OID_802_5_AC_ERRORS = @as(u32, 33686018);
pub const OID_802_5_ABORT_DELIMETERS = @as(u32, 33686019);
pub const OID_802_5_FRAME_COPIED_ERRORS = @as(u32, 33686020);
pub const OID_802_5_FREQUENCY_ERRORS = @as(u32, 33686021);
pub const OID_802_5_TOKEN_ERRORS = @as(u32, 33686022);
pub const OID_802_5_INTERNAL_ERRORS = @as(u32, 33686023);
pub const OID_FDDI_LONG_PERMANENT_ADDR = @as(u32, 50397441);
pub const OID_FDDI_LONG_CURRENT_ADDR = @as(u32, 50397442);
pub const OID_FDDI_LONG_MULTICAST_LIST = @as(u32, 50397443);
pub const OID_FDDI_LONG_MAX_LIST_SIZE = @as(u32, 50397444);
pub const OID_FDDI_SHORT_PERMANENT_ADDR = @as(u32, 50397445);
pub const OID_FDDI_SHORT_CURRENT_ADDR = @as(u32, 50397446);
pub const OID_FDDI_SHORT_MULTICAST_LIST = @as(u32, 50397447);
pub const OID_FDDI_SHORT_MAX_LIST_SIZE = @as(u32, 50397448);
pub const OID_FDDI_ATTACHMENT_TYPE = @as(u32, 50462977);
pub const OID_FDDI_UPSTREAM_NODE_LONG = @as(u32, 50462978);
pub const OID_FDDI_DOWNSTREAM_NODE_LONG = @as(u32, 50462979);
pub const OID_FDDI_FRAME_ERRORS = @as(u32, 50462980);
pub const OID_FDDI_FRAMES_LOST = @as(u32, 50462981);
pub const OID_FDDI_RING_MGT_STATE = @as(u32, 50462982);
pub const OID_FDDI_LCT_FAILURES = @as(u32, 50462983);
pub const OID_FDDI_LEM_REJECTS = @as(u32, 50462984);
pub const OID_FDDI_LCONNECTION_STATE = @as(u32, 50462985);
pub const OID_FDDI_SMT_STATION_ID = @as(u32, 50528769);
pub const OID_FDDI_SMT_OP_VERSION_ID = @as(u32, 50528770);
pub const OID_FDDI_SMT_HI_VERSION_ID = @as(u32, 50528771);
pub const OID_FDDI_SMT_LO_VERSION_ID = @as(u32, 50528772);
pub const OID_FDDI_SMT_MANUFACTURER_DATA = @as(u32, 50528773);
pub const OID_FDDI_SMT_USER_DATA = @as(u32, 50528774);
pub const OID_FDDI_SMT_MIB_VERSION_ID = @as(u32, 50528775);
pub const OID_FDDI_SMT_MAC_CT = @as(u32, 50528776);
pub const OID_FDDI_SMT_NON_MASTER_CT = @as(u32, 50528777);
pub const OID_FDDI_SMT_MASTER_CT = @as(u32, 50528778);
pub const OID_FDDI_SMT_AVAILABLE_PATHS = @as(u32, 50528779);
pub const OID_FDDI_SMT_CONFIG_CAPABILITIES = @as(u32, 50528780);
pub const OID_FDDI_SMT_CONFIG_POLICY = @as(u32, 50528781);
pub const OID_FDDI_SMT_CONNECTION_POLICY = @as(u32, 50528782);
pub const OID_FDDI_SMT_T_NOTIFY = @as(u32, 50528783);
pub const OID_FDDI_SMT_STAT_RPT_POLICY = @as(u32, 50528784);
pub const OID_FDDI_SMT_TRACE_MAX_EXPIRATION = @as(u32, 50528785);
pub const OID_FDDI_SMT_PORT_INDEXES = @as(u32, 50528786);
pub const OID_FDDI_SMT_MAC_INDEXES = @as(u32, 50528787);
pub const OID_FDDI_SMT_BYPASS_PRESENT = @as(u32, 50528788);
pub const OID_FDDI_SMT_ECM_STATE = @as(u32, 50528789);
pub const OID_FDDI_SMT_CF_STATE = @as(u32, 50528790);
pub const OID_FDDI_SMT_HOLD_STATE = @as(u32, 50528791);
pub const OID_FDDI_SMT_REMOTE_DISCONNECT_FLAG = @as(u32, 50528792);
pub const OID_FDDI_SMT_STATION_STATUS = @as(u32, 50528793);
pub const OID_FDDI_SMT_PEER_WRAP_FLAG = @as(u32, 50528794);
pub const OID_FDDI_SMT_MSG_TIME_STAMP = @as(u32, 50528795);
pub const OID_FDDI_SMT_TRANSITION_TIME_STAMP = @as(u32, 50528796);
pub const OID_FDDI_SMT_SET_COUNT = @as(u32, 50528797);
pub const OID_FDDI_SMT_LAST_SET_STATION_ID = @as(u32, 50528798);
pub const OID_FDDI_MAC_FRAME_STATUS_FUNCTIONS = @as(u32, 50528799);
pub const OID_FDDI_MAC_BRIDGE_FUNCTIONS = @as(u32, 50528800);
pub const OID_FDDI_MAC_T_MAX_CAPABILITY = @as(u32, 50528801);
pub const OID_FDDI_MAC_TVX_CAPABILITY = @as(u32, 50528802);
pub const OID_FDDI_MAC_AVAILABLE_PATHS = @as(u32, 50528803);
pub const OID_FDDI_MAC_CURRENT_PATH = @as(u32, 50528804);
pub const OID_FDDI_MAC_UPSTREAM_NBR = @as(u32, 50528805);
pub const OID_FDDI_MAC_DOWNSTREAM_NBR = @as(u32, 50528806);
pub const OID_FDDI_MAC_OLD_UPSTREAM_NBR = @as(u32, 50528807);
pub const OID_FDDI_MAC_OLD_DOWNSTREAM_NBR = @as(u32, 50528808);
pub const OID_FDDI_MAC_DUP_ADDRESS_TEST = @as(u32, 50528809);
pub const OID_FDDI_MAC_REQUESTED_PATHS = @as(u32, 50528810);
pub const OID_FDDI_MAC_DOWNSTREAM_PORT_TYPE = @as(u32, 50528811);
pub const OID_FDDI_MAC_INDEX = @as(u32, 50528812);
pub const OID_FDDI_MAC_SMT_ADDRESS = @as(u32, 50528813);
pub const OID_FDDI_MAC_LONG_GRP_ADDRESS = @as(u32, 50528814);
pub const OID_FDDI_MAC_SHORT_GRP_ADDRESS = @as(u32, 50528815);
pub const OID_FDDI_MAC_T_REQ = @as(u32, 50528816);
pub const OID_FDDI_MAC_T_NEG = @as(u32, 50528817);
pub const OID_FDDI_MAC_T_MAX = @as(u32, 50528818);
pub const OID_FDDI_MAC_TVX_VALUE = @as(u32, 50528819);
pub const OID_FDDI_MAC_T_PRI0 = @as(u32, 50528820);
pub const OID_FDDI_MAC_T_PRI1 = @as(u32, 50528821);
pub const OID_FDDI_MAC_T_PRI2 = @as(u32, 50528822);
pub const OID_FDDI_MAC_T_PRI3 = @as(u32, 50528823);
pub const OID_FDDI_MAC_T_PRI4 = @as(u32, 50528824);
pub const OID_FDDI_MAC_T_PRI5 = @as(u32, 50528825);
pub const OID_FDDI_MAC_T_PRI6 = @as(u32, 50528826);
pub const OID_FDDI_MAC_FRAME_CT = @as(u32, 50528827);
pub const OID_FDDI_MAC_COPIED_CT = @as(u32, 50528828);
pub const OID_FDDI_MAC_TRANSMIT_CT = @as(u32, 50528829);
pub const OID_FDDI_MAC_TOKEN_CT = @as(u32, 50528830);
pub const OID_FDDI_MAC_ERROR_CT = @as(u32, 50528831);
pub const OID_FDDI_MAC_LOST_CT = @as(u32, 50528832);
pub const OID_FDDI_MAC_TVX_EXPIRED_CT = @as(u32, 50528833);
pub const OID_FDDI_MAC_NOT_COPIED_CT = @as(u32, 50528834);
pub const OID_FDDI_MAC_LATE_CT = @as(u32, 50528835);
pub const OID_FDDI_MAC_RING_OP_CT = @as(u32, 50528836);
pub const OID_FDDI_MAC_FRAME_ERROR_THRESHOLD = @as(u32, 50528837);
pub const OID_FDDI_MAC_FRAME_ERROR_RATIO = @as(u32, 50528838);
pub const OID_FDDI_MAC_NOT_COPIED_THRESHOLD = @as(u32, 50528839);
pub const OID_FDDI_MAC_NOT_COPIED_RATIO = @as(u32, 50528840);
pub const OID_FDDI_MAC_RMT_STATE = @as(u32, 50528841);
pub const OID_FDDI_MAC_DA_FLAG = @as(u32, 50528842);
pub const OID_FDDI_MAC_UNDA_FLAG = @as(u32, 50528843);
pub const OID_FDDI_MAC_FRAME_ERROR_FLAG = @as(u32, 50528844);
pub const OID_FDDI_MAC_NOT_COPIED_FLAG = @as(u32, 50528845);
pub const OID_FDDI_MAC_MA_UNITDATA_AVAILABLE = @as(u32, 50528846);
pub const OID_FDDI_MAC_HARDWARE_PRESENT = @as(u32, 50528847);
pub const OID_FDDI_MAC_MA_UNITDATA_ENABLE = @as(u32, 50528848);
pub const OID_FDDI_PATH_INDEX = @as(u32, 50528849);
pub const OID_FDDI_PATH_RING_LATENCY = @as(u32, 50528850);
pub const OID_FDDI_PATH_TRACE_STATUS = @as(u32, 50528851);
pub const OID_FDDI_PATH_SBA_PAYLOAD = @as(u32, 50528852);
pub const OID_FDDI_PATH_SBA_OVERHEAD = @as(u32, 50528853);
pub const OID_FDDI_PATH_CONFIGURATION = @as(u32, 50528854);
pub const OID_FDDI_PATH_T_R_MODE = @as(u32, 50528855);
pub const OID_FDDI_PATH_SBA_AVAILABLE = @as(u32, 50528856);
pub const OID_FDDI_PATH_TVX_LOWER_BOUND = @as(u32, 50528857);
pub const OID_FDDI_PATH_T_MAX_LOWER_BOUND = @as(u32, 50528858);
pub const OID_FDDI_PATH_MAX_T_REQ = @as(u32, 50528859);
pub const OID_FDDI_PORT_MY_TYPE = @as(u32, 50528860);
pub const OID_FDDI_PORT_NEIGHBOR_TYPE = @as(u32, 50528861);
pub const OID_FDDI_PORT_CONNECTION_POLICIES = @as(u32, 50528862);
pub const OID_FDDI_PORT_MAC_INDICATED = @as(u32, 50528863);
pub const OID_FDDI_PORT_CURRENT_PATH = @as(u32, 50528864);
pub const OID_FDDI_PORT_REQUESTED_PATHS = @as(u32, 50528865);
pub const OID_FDDI_PORT_MAC_PLACEMENT = @as(u32, 50528866);
pub const OID_FDDI_PORT_AVAILABLE_PATHS = @as(u32, 50528867);
pub const OID_FDDI_PORT_MAC_LOOP_TIME = @as(u32, 50528868);
pub const OID_FDDI_PORT_PMD_CLASS = @as(u32, 50528869);
pub const OID_FDDI_PORT_CONNECTION_CAPABILITIES = @as(u32, 50528870);
pub const OID_FDDI_PORT_INDEX = @as(u32, 50528871);
pub const OID_FDDI_PORT_MAINT_LS = @as(u32, 50528872);
pub const OID_FDDI_PORT_BS_FLAG = @as(u32, 50528873);
pub const OID_FDDI_PORT_PC_LS = @as(u32, 50528874);
pub const OID_FDDI_PORT_EB_ERROR_CT = @as(u32, 50528875);
pub const OID_FDDI_PORT_LCT_FAIL_CT = @as(u32, 50528876);
pub const OID_FDDI_PORT_LER_ESTIMATE = @as(u32, 50528877);
pub const OID_FDDI_PORT_LEM_REJECT_CT = @as(u32, 50528878);
pub const OID_FDDI_PORT_LEM_CT = @as(u32, 50528879);
pub const OID_FDDI_PORT_LER_CUTOFF = @as(u32, 50528880);
pub const OID_FDDI_PORT_LER_ALARM = @as(u32, 50528881);
pub const OID_FDDI_PORT_CONNNECT_STATE = @as(u32, 50528882);
pub const OID_FDDI_PORT_PCM_STATE = @as(u32, 50528883);
pub const OID_FDDI_PORT_PC_WITHHOLD = @as(u32, 50528884);
pub const OID_FDDI_PORT_LER_FLAG = @as(u32, 50528885);
pub const OID_FDDI_PORT_HARDWARE_PRESENT = @as(u32, 50528886);
pub const OID_FDDI_SMT_STATION_ACTION = @as(u32, 50528887);
pub const OID_FDDI_PORT_ACTION = @as(u32, 50528888);
pub const OID_FDDI_IF_DESCR = @as(u32, 50528889);
pub const OID_FDDI_IF_TYPE = @as(u32, 50528890);
pub const OID_FDDI_IF_MTU = @as(u32, 50528891);
pub const OID_FDDI_IF_SPEED = @as(u32, 50528892);
pub const OID_FDDI_IF_PHYS_ADDRESS = @as(u32, 50528893);
pub const OID_FDDI_IF_ADMIN_STATUS = @as(u32, 50528894);
pub const OID_FDDI_IF_OPER_STATUS = @as(u32, 50528895);
pub const OID_FDDI_IF_LAST_CHANGE = @as(u32, 50528896);
pub const OID_FDDI_IF_IN_OCTETS = @as(u32, 50528897);
pub const OID_FDDI_IF_IN_UCAST_PKTS = @as(u32, 50528898);
pub const OID_FDDI_IF_IN_NUCAST_PKTS = @as(u32, 50528899);
pub const OID_FDDI_IF_IN_DISCARDS = @as(u32, 50528900);
pub const OID_FDDI_IF_IN_ERRORS = @as(u32, 50528901);
pub const OID_FDDI_IF_IN_UNKNOWN_PROTOS = @as(u32, 50528902);
pub const OID_FDDI_IF_OUT_OCTETS = @as(u32, 50528903);
pub const OID_FDDI_IF_OUT_UCAST_PKTS = @as(u32, 50528904);
pub const OID_FDDI_IF_OUT_NUCAST_PKTS = @as(u32, 50528905);
pub const OID_FDDI_IF_OUT_DISCARDS = @as(u32, 50528906);
pub const OID_FDDI_IF_OUT_ERRORS = @as(u32, 50528907);
pub const OID_FDDI_IF_OUT_QLEN = @as(u32, 50528908);
pub const OID_FDDI_IF_SPECIFIC = @as(u32, 50528909);
pub const OID_WAN_PERMANENT_ADDRESS = @as(u32, 67174657);
pub const OID_WAN_CURRENT_ADDRESS = @as(u32, 67174658);
pub const OID_WAN_QUALITY_OF_SERVICE = @as(u32, 67174659);
pub const OID_WAN_PROTOCOL_TYPE = @as(u32, 67174660);
pub const OID_WAN_MEDIUM_SUBTYPE = @as(u32, 67174661);
pub const OID_WAN_HEADER_FORMAT = @as(u32, 67174662);
pub const OID_WAN_GET_INFO = @as(u32, 67174663);
pub const OID_WAN_SET_LINK_INFO = @as(u32, 67174664);
pub const OID_WAN_GET_LINK_INFO = @as(u32, 67174665);
pub const OID_WAN_LINE_COUNT = @as(u32, 67174666);
pub const OID_WAN_PROTOCOL_CAPS = @as(u32, 67174667);
pub const OID_WAN_GET_BRIDGE_INFO = @as(u32, 67174922);
pub const OID_WAN_SET_BRIDGE_INFO = @as(u32, 67174923);
pub const OID_WAN_GET_COMP_INFO = @as(u32, 67174924);
pub const OID_WAN_SET_COMP_INFO = @as(u32, 67174925);
pub const OID_WAN_GET_STATS_INFO = @as(u32, 67174926);
pub const OID_WAN_CO_GET_INFO = @as(u32, 67174784);
pub const OID_WAN_CO_SET_LINK_INFO = @as(u32, 67174785);
pub const OID_WAN_CO_GET_LINK_INFO = @as(u32, 67174786);
pub const OID_WAN_CO_GET_COMP_INFO = @as(u32, 67175040);
pub const OID_WAN_CO_SET_COMP_INFO = @as(u32, 67175041);
pub const OID_WAN_CO_GET_STATS_INFO = @as(u32, 67175042);
pub const OID_LTALK_CURRENT_NODE_ID = @as(u32, 83951874);
pub const OID_LTALK_IN_BROADCASTS = @as(u32, 84017409);
pub const OID_LTALK_IN_LENGTH_ERRORS = @as(u32, 84017410);
pub const OID_LTALK_OUT_NO_HANDLERS = @as(u32, 84017665);
pub const OID_LTALK_COLLISIONS = @as(u32, 84017666);
pub const OID_LTALK_DEFERS = @as(u32, 84017667);
pub const OID_LTALK_NO_DATA_ERRORS = @as(u32, 84017668);
pub const OID_LTALK_RANDOM_CTS_ERRORS = @as(u32, 84017669);
pub const OID_LTALK_FCS_ERRORS = @as(u32, 84017670);
pub const OID_ARCNET_PERMANENT_ADDRESS = @as(u32, 100729089);
pub const OID_ARCNET_CURRENT_ADDRESS = @as(u32, 100729090);
pub const OID_ARCNET_RECONFIGURATIONS = @as(u32, 100794881);
pub const OID_TAPI_ACCEPT = @as(u32, 117637377);
pub const OID_TAPI_ANSWER = @as(u32, 117637378);
pub const OID_TAPI_CLOSE = @as(u32, 117637379);
pub const OID_TAPI_CLOSE_CALL = @as(u32, 117637380);
pub const OID_TAPI_CONDITIONAL_MEDIA_DETECTION = @as(u32, 117637381);
pub const OID_TAPI_CONFIG_DIALOG = @as(u32, 117637382);
pub const OID_TAPI_DEV_SPECIFIC = @as(u32, 117637383);
pub const OID_TAPI_DIAL = @as(u32, 117637384);
pub const OID_TAPI_DROP = @as(u32, 117637385);
pub const OID_TAPI_GET_ADDRESS_CAPS = @as(u32, 117637386);
pub const OID_TAPI_GET_ADDRESS_ID = @as(u32, 117637387);
pub const OID_TAPI_GET_ADDRESS_STATUS = @as(u32, 117637388);
pub const OID_TAPI_GET_CALL_ADDRESS_ID = @as(u32, 117637389);
pub const OID_TAPI_GET_CALL_INFO = @as(u32, 117637390);
pub const OID_TAPI_GET_CALL_STATUS = @as(u32, 117637391);
pub const OID_TAPI_GET_DEV_CAPS = @as(u32, 117637392);
pub const OID_TAPI_GET_DEV_CONFIG = @as(u32, 117637393);
pub const OID_TAPI_GET_EXTENSION_ID = @as(u32, 117637394);
pub const OID_TAPI_GET_ID = @as(u32, 117637395);
pub const OID_TAPI_GET_LINE_DEV_STATUS = @as(u32, 117637396);
pub const OID_TAPI_MAKE_CALL = @as(u32, 117637397);
pub const OID_TAPI_NEGOTIATE_EXT_VERSION = @as(u32, 117637398);
pub const OID_TAPI_OPEN = @as(u32, 117637399);
pub const OID_TAPI_PROVIDER_INITIALIZE = @as(u32, 117637400);
pub const OID_TAPI_PROVIDER_SHUTDOWN = @as(u32, 117637401);
pub const OID_TAPI_SECURE_CALL = @as(u32, 117637402);
pub const OID_TAPI_SELECT_EXT_VERSION = @as(u32, 117637403);
pub const OID_TAPI_SEND_USER_USER_INFO = @as(u32, 117637404);
pub const OID_TAPI_SET_APP_SPECIFIC = @as(u32, 117637405);
pub const OID_TAPI_SET_CALL_PARAMS = @as(u32, 117637406);
pub const OID_TAPI_SET_DEFAULT_MEDIA_DETECTION = @as(u32, 117637407);
pub const OID_TAPI_SET_DEV_CONFIG = @as(u32, 117637408);
pub const OID_TAPI_SET_MEDIA_MODE = @as(u32, 117637409);
pub const OID_TAPI_SET_STATUS_MESSAGES = @as(u32, 117637410);
pub const OID_TAPI_GATHER_DIGITS = @as(u32, 117637411);
pub const OID_TAPI_MONITOR_DIGITS = @as(u32, 117637412);
pub const OID_ATM_SUPPORTED_VC_RATES = @as(u32, 134283521);
pub const OID_ATM_SUPPORTED_SERVICE_CATEGORY = @as(u32, 134283522);
pub const OID_ATM_SUPPORTED_AAL_TYPES = @as(u32, 134283523);
pub const OID_ATM_HW_CURRENT_ADDRESS = @as(u32, 134283524);
pub const OID_ATM_MAX_ACTIVE_VCS = @as(u32, 134283525);
pub const OID_ATM_MAX_ACTIVE_VCI_BITS = @as(u32, 134283526);
pub const OID_ATM_MAX_ACTIVE_VPI_BITS = @as(u32, 134283527);
pub const OID_ATM_MAX_AAL0_PACKET_SIZE = @as(u32, 134283528);
pub const OID_ATM_MAX_AAL1_PACKET_SIZE = @as(u32, 134283529);
pub const OID_ATM_MAX_AAL34_PACKET_SIZE = @as(u32, 134283530);
pub const OID_ATM_MAX_AAL5_PACKET_SIZE = @as(u32, 134283531);
pub const OID_ATM_SIGNALING_VPIVCI = @as(u32, 134283777);
pub const OID_ATM_ASSIGNED_VPI = @as(u32, 134283778);
pub const OID_ATM_ACQUIRE_ACCESS_NET_RESOURCES = @as(u32, 134283779);
pub const OID_ATM_RELEASE_ACCESS_NET_RESOURCES = @as(u32, 134283780);
pub const OID_ATM_ILMI_VPIVCI = @as(u32, 134283781);
pub const OID_ATM_DIGITAL_BROADCAST_VPIVCI = @as(u32, 134283782);
pub const OID_ATM_GET_NEAREST_FLOW = @as(u32, 134283783);
pub const OID_ATM_ALIGNMENT_REQUIRED = @as(u32, 134283784);
pub const OID_ATM_LECS_ADDRESS = @as(u32, 134283785);
pub const OID_ATM_SERVICE_ADDRESS = @as(u32, 134283786);
pub const OID_ATM_CALL_PROCEEDING = @as(u32, 134283787);
pub const OID_ATM_CALL_ALERTING = @as(u32, 134283788);
pub const OID_ATM_PARTY_ALERTING = @as(u32, 134283789);
pub const OID_ATM_CALL_NOTIFY = @as(u32, 134283790);
pub const OID_ATM_MY_IP_NM_ADDRESS = @as(u32, 134283791);
pub const OID_ATM_RCV_CELLS_OK = @as(u32, 134349057);
pub const OID_ATM_XMIT_CELLS_OK = @as(u32, 134349058);
pub const OID_ATM_RCV_CELLS_DROPPED = @as(u32, 134349059);
pub const OID_ATM_RCV_INVALID_VPI_VCI = @as(u32, 134349313);
pub const OID_ATM_CELLS_HEC_ERROR = @as(u32, 134349314);
pub const OID_ATM_RCV_REASSEMBLY_ERROR = @as(u32, 134349315);
pub const OID_802_11_BSSID = @as(u32, 218169601);
pub const OID_802_11_SSID = @as(u32, 218169602);
pub const OID_802_11_NETWORK_TYPES_SUPPORTED = @as(u32, 218169859);
pub const OID_802_11_NETWORK_TYPE_IN_USE = @as(u32, 218169860);
pub const OID_802_11_TX_POWER_LEVEL = @as(u32, 218169861);
pub const OID_802_11_RSSI = @as(u32, 218169862);
pub const OID_802_11_RSSI_TRIGGER = @as(u32, 218169863);
pub const OID_802_11_INFRASTRUCTURE_MODE = @as(u32, 218169608);
pub const OID_802_11_FRAGMENTATION_THRESHOLD = @as(u32, 218169865);
pub const OID_802_11_RTS_THRESHOLD = @as(u32, 218169866);
pub const OID_802_11_NUMBER_OF_ANTENNAS = @as(u32, 218169867);
pub const OID_802_11_RX_ANTENNA_SELECTED = @as(u32, 218169868);
pub const OID_802_11_TX_ANTENNA_SELECTED = @as(u32, 218169869);
pub const OID_802_11_SUPPORTED_RATES = @as(u32, 218169870);
pub const OID_802_11_DESIRED_RATES = @as(u32, 218169872);
pub const OID_802_11_CONFIGURATION = @as(u32, 218169873);
pub const OID_802_11_STATISTICS = @as(u32, 218235410);
pub const OID_802_11_ADD_WEP = @as(u32, 218169619);
pub const OID_802_11_REMOVE_WEP = @as(u32, 218169620);
pub const OID_802_11_DISASSOCIATE = @as(u32, 218169621);
pub const OID_802_11_POWER_MODE = @as(u32, 218169878);
pub const OID_802_11_BSSID_LIST = @as(u32, 218169879);
pub const OID_802_11_AUTHENTICATION_MODE = @as(u32, 218169624);
pub const OID_802_11_PRIVACY_FILTER = @as(u32, 218169625);
pub const OID_802_11_BSSID_LIST_SCAN = @as(u32, 218169626);
pub const OID_802_11_WEP_STATUS = @as(u32, 218169627);
pub const OID_802_11_ENCRYPTION_STATUS = @as(u32, 218169627);
pub const OID_802_11_RELOAD_DEFAULTS = @as(u32, 218169628);
pub const OID_802_11_ADD_KEY = @as(u32, 218169629);
pub const OID_802_11_REMOVE_KEY = @as(u32, 218169630);
pub const OID_802_11_ASSOCIATION_INFORMATION = @as(u32, 218169631);
pub const OID_802_11_TEST = @as(u32, 218169632);
pub const OID_802_11_MEDIA_STREAM_MODE = @as(u32, 218169633);
pub const OID_802_11_CAPABILITY = @as(u32, 218169634);
pub const OID_802_11_PMKID = @as(u32, 218169635);
pub const OID_802_11_NON_BCAST_SSID_LIST = @as(u32, 218169636);
pub const OID_802_11_RADIO_STATUS = @as(u32, 218169637);
pub const NDIS_ETH_TYPE_IPV4 = @as(u32, 2048);
pub const NDIS_ETH_TYPE_ARP = @as(u32, 2054);
pub const NDIS_ETH_TYPE_IPV6 = @as(u32, 34525);
pub const NDIS_ETH_TYPE_802_1X = @as(u32, 34958);
pub const NDIS_ETH_TYPE_802_1Q = @as(u32, 33024);
pub const NDIS_ETH_TYPE_SLOW_PROTOCOL = @as(u32, 34825);
pub const NDIS_802_11_LENGTH_SSID = @as(u32, 32);
pub const NDIS_802_11_LENGTH_RATES = @as(u32, 8);
pub const NDIS_802_11_LENGTH_RATES_EX = @as(u32, 16);
pub const NDIS_802_11_AUTH_REQUEST_AUTH_FIELDS = @as(u32, 15);
pub const NDIS_802_11_AUTH_REQUEST_REAUTH = @as(u32, 1);
pub const NDIS_802_11_AUTH_REQUEST_KEYUPDATE = @as(u32, 2);
pub const NDIS_802_11_AUTH_REQUEST_PAIRWISE_ERROR = @as(u32, 6);
pub const NDIS_802_11_AUTH_REQUEST_GROUP_ERROR = @as(u32, 14);
pub const NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED = @as(u32, 1);
pub const NDIS_802_11_AI_REQFI_CAPABILITIES = @as(u32, 1);
pub const NDIS_802_11_AI_REQFI_LISTENINTERVAL = @as(u32, 2);
pub const NDIS_802_11_AI_REQFI_CURRENTAPADDRESS = @as(u32, 4);
pub const NDIS_802_11_AI_RESFI_CAPABILITIES = @as(u32, 1);
pub const NDIS_802_11_AI_RESFI_STATUSCODE = @as(u32, 2);
pub const NDIS_802_11_AI_RESFI_ASSOCIATIONID = @as(u32, 4);
pub const OID_IRDA_RECEIVING = @as(u32, 167837952);
pub const OID_IRDA_TURNAROUND_TIME = @as(u32, 167837953);
pub const OID_IRDA_SUPPORTED_SPEEDS = @as(u32, 167837954);
pub const OID_IRDA_LINK_SPEED = @as(u32, 167837955);
pub const OID_IRDA_MEDIA_BUSY = @as(u32, 167837956);
pub const OID_IRDA_EXTRA_RCV_BOFS = @as(u32, 167838208);
pub const OID_IRDA_RATE_SNIFF = @as(u32, 167838209);
pub const OID_IRDA_UNICAST_LIST = @as(u32, 167838210);
pub const OID_IRDA_MAX_UNICAST_LIST_SIZE = @as(u32, 167838211);
pub const OID_IRDA_MAX_RECEIVE_WINDOW_SIZE = @as(u32, 167838212);
pub const OID_IRDA_MAX_SEND_WINDOW_SIZE = @as(u32, 167838213);
pub const OID_IRDA_RESERVED1 = @as(u32, 167838218);
pub const OID_IRDA_RESERVED2 = @as(u32, 167838223);
pub const OID_1394_LOCAL_NODE_INFO = @as(u32, 201392385);
pub const OID_1394_VC_INFO = @as(u32, 201392386);
pub const OID_CO_ADD_PVC = @as(u32, 4261412865);
pub const OID_CO_DELETE_PVC = @as(u32, 4261412866);
pub const OID_CO_GET_CALL_INFORMATION = @as(u32, 4261412867);
pub const OID_CO_ADD_ADDRESS = @as(u32, 4261412868);
pub const OID_CO_DELETE_ADDRESS = @as(u32, 4261412869);
pub const OID_CO_GET_ADDRESSES = @as(u32, 4261412870);
pub const OID_CO_ADDRESS_CHANGE = @as(u32, 4261412871);
pub const OID_CO_SIGNALING_ENABLED = @as(u32, 4261412872);
pub const OID_CO_SIGNALING_DISABLED = @as(u32, 4261412873);
pub const OID_CO_AF_CLOSE = @as(u32, 4261412874);
pub const OID_CO_TAPI_CM_CAPS = @as(u32, 4261416961);
pub const OID_CO_TAPI_LINE_CAPS = @as(u32, 4261416962);
pub const OID_CO_TAPI_ADDRESS_CAPS = @as(u32, 4261416963);
pub const OID_CO_TAPI_TRANSLATE_TAPI_CALLPARAMS = @as(u32, 4261416964);
pub const OID_CO_TAPI_TRANSLATE_NDIS_CALLPARAMS = @as(u32, 4261416965);
pub const OID_CO_TAPI_TRANSLATE_TAPI_SAP = @as(u32, 4261416966);
pub const OID_CO_TAPI_GET_CALL_DIAGNOSTICS = @as(u32, 4261416967);
pub const OID_CO_TAPI_REPORT_DIGITS = @as(u32, 4261416968);
pub const OID_CO_TAPI_DONT_REPORT_DIGITS = @as(u32, 4261416969);
pub const OID_PNP_CAPABILITIES = @as(u32, 4244701440);
pub const OID_PNP_SET_POWER = @as(u32, 4244701441);
pub const OID_PNP_QUERY_POWER = @as(u32, 4244701442);
pub const OID_PNP_ADD_WAKE_UP_PATTERN = @as(u32, 4244701443);
pub const OID_PNP_REMOVE_WAKE_UP_PATTERN = @as(u32, 4244701444);
pub const OID_PNP_WAKE_UP_PATTERN_LIST = @as(u32, 4244701445);
pub const OID_PNP_ENABLE_WAKE_UP = @as(u32, 4244701446);
pub const OID_PNP_WAKE_UP_OK = @as(u32, 4244767232);
pub const OID_PNP_WAKE_UP_ERROR = @as(u32, 4244767233);
pub const OID_PM_CURRENT_CAPABILITIES = @as(u32, 4244701447);
pub const OID_PM_HARDWARE_CAPABILITIES = @as(u32, 4244701448);
pub const OID_PM_PARAMETERS = @as(u32, 4244701449);
pub const OID_PM_ADD_WOL_PATTERN = @as(u32, 4244701450);
pub const OID_PM_REMOVE_WOL_PATTERN = @as(u32, 4244701451);
pub const OID_PM_WOL_PATTERN_LIST = @as(u32, 4244701452);
pub const OID_PM_ADD_PROTOCOL_OFFLOAD = @as(u32, 4244701453);
pub const OID_PM_GET_PROTOCOL_OFFLOAD = @as(u32, 4244701454);
pub const OID_PM_REMOVE_PROTOCOL_OFFLOAD = @as(u32, 4244701455);
pub const OID_PM_PROTOCOL_OFFLOAD_LIST = @as(u32, 4244701456);
pub const OID_PM_RESERVED_1 = @as(u32, 4244701457);
pub const OID_RECEIVE_FILTER_HARDWARE_CAPABILITIES = @as(u32, 66081);
pub const OID_RECEIVE_FILTER_GLOBAL_PARAMETERS = @as(u32, 66082);
pub const OID_RECEIVE_FILTER_ALLOCATE_QUEUE = @as(u32, 66083);
pub const OID_RECEIVE_FILTER_FREE_QUEUE = @as(u32, 66084);
pub const OID_RECEIVE_FILTER_ENUM_QUEUES = @as(u32, 66085);
pub const OID_RECEIVE_FILTER_QUEUE_PARAMETERS = @as(u32, 66086);
pub const OID_RECEIVE_FILTER_SET_FILTER = @as(u32, 66087);
pub const OID_RECEIVE_FILTER_CLEAR_FILTER = @as(u32, 66088);
pub const OID_RECEIVE_FILTER_ENUM_FILTERS = @as(u32, 66089);
pub const OID_RECEIVE_FILTER_PARAMETERS = @as(u32, 66090);
pub const OID_RECEIVE_FILTER_QUEUE_ALLOCATION_COMPLETE = @as(u32, 66091);
pub const OID_RECEIVE_FILTER_CURRENT_CAPABILITIES = @as(u32, 66093);
pub const OID_NIC_SWITCH_HARDWARE_CAPABILITIES = @as(u32, 66094);
pub const OID_NIC_SWITCH_CURRENT_CAPABILITIES = @as(u32, 66095);
pub const OID_RECEIVE_FILTER_MOVE_FILTER = @as(u32, 66096);
pub const OID_VLAN_RESERVED1 = @as(u32, 66097);
pub const OID_VLAN_RESERVED2 = @as(u32, 66098);
pub const OID_VLAN_RESERVED3 = @as(u32, 66099);
pub const OID_VLAN_RESERVED4 = @as(u32, 66100);
pub const OID_PACKET_COALESCING_FILTER_MATCH_COUNT = @as(u32, 66101);
pub const OID_NIC_SWITCH_CREATE_SWITCH = @as(u32, 66103);
pub const OID_NIC_SWITCH_PARAMETERS = @as(u32, 66104);
pub const OID_NIC_SWITCH_DELETE_SWITCH = @as(u32, 66105);
pub const OID_NIC_SWITCH_ENUM_SWITCHES = @as(u32, 66112);
pub const OID_NIC_SWITCH_CREATE_VPORT = @as(u32, 66113);
pub const OID_NIC_SWITCH_VPORT_PARAMETERS = @as(u32, 66114);
pub const OID_NIC_SWITCH_ENUM_VPORTS = @as(u32, 66115);
pub const OID_NIC_SWITCH_DELETE_VPORT = @as(u32, 66116);
pub const OID_NIC_SWITCH_ALLOCATE_VF = @as(u32, 66117);
pub const OID_NIC_SWITCH_FREE_VF = @as(u32, 66118);
pub const OID_NIC_SWITCH_VF_PARAMETERS = @as(u32, 66119);
pub const OID_NIC_SWITCH_ENUM_VFS = @as(u32, 66120);
pub const OID_SRIOV_HARDWARE_CAPABILITIES = @as(u32, 66121);
pub const OID_SRIOV_CURRENT_CAPABILITIES = @as(u32, 66128);
pub const OID_SRIOV_READ_VF_CONFIG_SPACE = @as(u32, 66129);
pub const OID_SRIOV_WRITE_VF_CONFIG_SPACE = @as(u32, 66130);
pub const OID_SRIOV_READ_VF_CONFIG_BLOCK = @as(u32, 66131);
pub const OID_SRIOV_WRITE_VF_CONFIG_BLOCK = @as(u32, 66132);
pub const OID_SRIOV_RESET_VF = @as(u32, 66133);
pub const OID_SRIOV_SET_VF_POWER_STATE = @as(u32, 66134);
pub const OID_SRIOV_VF_VENDOR_DEVICE_ID = @as(u32, 66135);
pub const OID_SRIOV_PROBED_BARS = @as(u32, 66136);
pub const OID_SRIOV_BAR_RESOURCES = @as(u32, 66137);
pub const OID_SRIOV_PF_LUID = @as(u32, 66144);
pub const OID_SRIOV_CONFIG_STATE = @as(u32, 66145);
pub const OID_SRIOV_VF_SERIAL_NUMBER = @as(u32, 66146);
pub const OID_SRIOV_OVERLYING_ADAPTER_INFO = @as(u32, 66152);
pub const OID_SRIOV_VF_INVALIDATE_CONFIG_BLOCK = @as(u32, 66153);
pub const OID_SWITCH_PROPERTY_ADD = @as(u32, 66147);
pub const OID_SWITCH_PROPERTY_UPDATE = @as(u32, 66148);
pub const OID_SWITCH_PROPERTY_DELETE = @as(u32, 66149);
pub const OID_SWITCH_PROPERTY_ENUM = @as(u32, 66150);
pub const OID_SWITCH_FEATURE_STATUS_QUERY = @as(u32, 66151);
pub const OID_SWITCH_NIC_REQUEST = @as(u32, 66160);
pub const OID_SWITCH_PORT_PROPERTY_ADD = @as(u32, 66161);
pub const OID_SWITCH_PORT_PROPERTY_UPDATE = @as(u32, 66162);
pub const OID_SWITCH_PORT_PROPERTY_DELETE = @as(u32, 66163);
pub const OID_SWITCH_PORT_PROPERTY_ENUM = @as(u32, 66164);
pub const OID_SWITCH_PARAMETERS = @as(u32, 66165);
pub const OID_SWITCH_PORT_ARRAY = @as(u32, 66166);
pub const OID_SWITCH_NIC_ARRAY = @as(u32, 66167);
pub const OID_SWITCH_PORT_CREATE = @as(u32, 66168);
pub const OID_SWITCH_PORT_DELETE = @as(u32, 66169);
pub const OID_SWITCH_NIC_CREATE = @as(u32, 66170);
pub const OID_SWITCH_NIC_CONNECT = @as(u32, 66171);
pub const OID_SWITCH_NIC_DISCONNECT = @as(u32, 66172);
pub const OID_SWITCH_NIC_DELETE = @as(u32, 66173);
pub const OID_SWITCH_PORT_FEATURE_STATUS_QUERY = @as(u32, 66174);
pub const OID_SWITCH_PORT_TEARDOWN = @as(u32, 66175);
pub const OID_SWITCH_NIC_SAVE = @as(u32, 66192);
pub const OID_SWITCH_NIC_SAVE_COMPLETE = @as(u32, 66193);
pub const OID_SWITCH_NIC_RESTORE = @as(u32, 66194);
pub const OID_SWITCH_NIC_RESTORE_COMPLETE = @as(u32, 66195);
pub const OID_SWITCH_NIC_UPDATED = @as(u32, 66196);
pub const OID_SWITCH_PORT_UPDATED = @as(u32, 66197);
pub const OID_SWITCH_NIC_DIRECT_REQUEST = @as(u32, 66198);
pub const OID_SWITCH_NIC_SUSPEND = @as(u32, 66199);
pub const OID_SWITCH_NIC_RESUME = @as(u32, 66200);
pub const OID_SWITCH_NIC_SUSPENDED_LM_SOURCE_STARTED = @as(u32, 66201);
pub const OID_SWITCH_NIC_SUSPENDED_LM_SOURCE_FINISHED = @as(u32, 66202);
pub const OID_GEN_RSS_SET_INDIRECTION_TABLE_ENTRIES = @as(u32, 66240);
pub const OID_GEN_ISOLATION_PARAMETERS = @as(u32, 66304);
pub const OID_GFT_HARDWARE_CAPABILITIES = @as(u32, 66561);
pub const OID_GFT_CURRENT_CAPABILITIES = @as(u32, 66562);
pub const OID_GFT_GLOBAL_PARAMETERS = @as(u32, 66563);
pub const OID_GFT_CREATE_TABLE = @as(u32, 66564);
pub const OID_GFT_DELETE_TABLE = @as(u32, 66565);
pub const OID_GFT_ENUM_TABLES = @as(u32, 66566);
pub const OID_GFT_ALLOCATE_COUNTERS = @as(u32, 66567);
pub const OID_GFT_FREE_COUNTERS = @as(u32, 66568);
pub const OID_GFT_ENUM_COUNTERS = @as(u32, 66569);
pub const OID_GFT_COUNTER_VALUES = @as(u32, 66570);
pub const OID_GFT_STATISTICS = @as(u32, 66571);
pub const OID_GFT_ADD_FLOW_ENTRIES = @as(u32, 66572);
pub const OID_GFT_DELETE_FLOW_ENTRIES = @as(u32, 66573);
pub const OID_GFT_ENUM_FLOW_ENTRIES = @as(u32, 66574);
pub const OID_GFT_ACTIVATE_FLOW_ENTRIES = @as(u32, 66575);
pub const OID_GFT_DEACTIVATE_FLOW_ENTRIES = @as(u32, 66576);
pub const OID_GFT_FLOW_ENTRY_PARAMETERS = @as(u32, 66577);
pub const OID_GFT_EXACT_MATCH_PROFILE = @as(u32, 66578);
pub const OID_GFT_HEADER_TRANSPOSITION_PROFILE = @as(u32, 66579);
pub const OID_GFT_WILDCARD_MATCH_PROFILE = @as(u32, 66580);
pub const OID_GFT_ENUM_PROFILES = @as(u32, 66581);
pub const OID_GFT_DELETE_PROFILE = @as(u32, 66582);
pub const OID_GFT_VPORT_PARAMETERS = @as(u32, 66583);
pub const OID_GFT_CREATE_LOGICAL_VPORT = @as(u32, 66584);
pub const OID_GFT_DELETE_LOGICAL_VPORT = @as(u32, 66585);
pub const OID_GFT_ENUM_LOGICAL_VPORTS = @as(u32, 66586);
pub const OID_QOS_OFFLOAD_HARDWARE_CAPABILITIES = @as(u32, 67073);
pub const OID_QOS_OFFLOAD_CURRENT_CAPABILITIES = @as(u32, 67074);
pub const OID_QOS_OFFLOAD_CREATE_SQ = @as(u32, 67075);
pub const OID_QOS_OFFLOAD_DELETE_SQ = @as(u32, 67076);
pub const OID_QOS_OFFLOAD_UPDATE_SQ = @as(u32, 67077);
pub const OID_QOS_OFFLOAD_ENUM_SQS = @as(u32, 67078);
pub const OID_QOS_OFFLOAD_SQ_STATS = @as(u32, 67079);
pub const OID_PD_OPEN_PROVIDER = @as(u32, 66817);
pub const OID_PD_CLOSE_PROVIDER = @as(u32, 66818);
pub const OID_PD_QUERY_CURRENT_CONFIG = @as(u32, 66819);
pub const NDIS_PNP_WAKE_UP_MAGIC_PACKET = @as(u32, 1);
pub const NDIS_PNP_WAKE_UP_PATTERN_MATCH = @as(u32, 2);
pub const NDIS_PNP_WAKE_UP_LINK_CHANGE = @as(u32, 4);
pub const OID_TCP_TASK_OFFLOAD = @as(u32, 4227924481);
pub const OID_TCP_TASK_IPSEC_ADD_SA = @as(u32, 4227924482);
pub const OID_TCP_TASK_IPSEC_DELETE_SA = @as(u32, 4227924483);
pub const OID_TCP_SAN_SUPPORT = @as(u32, 4227924484);
pub const OID_TCP_TASK_IPSEC_ADD_UDPESP_SA = @as(u32, 4227924485);
pub const OID_TCP_TASK_IPSEC_DELETE_UDPESP_SA = @as(u32, 4227924486);
pub const OID_TCP4_OFFLOAD_STATS = @as(u32, 4227924487);
pub const OID_TCP6_OFFLOAD_STATS = @as(u32, 4227924488);
pub const OID_IP4_OFFLOAD_STATS = @as(u32, 4227924489);
pub const OID_IP6_OFFLOAD_STATS = @as(u32, 4227924490);
pub const OID_TCP_OFFLOAD_CURRENT_CONFIG = @as(u32, 4227924491);
pub const OID_TCP_OFFLOAD_PARAMETERS = @as(u32, 4227924492);
pub const OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES = @as(u32, 4227924493);
pub const OID_TCP_CONNECTION_OFFLOAD_CURRENT_CONFIG = @as(u32, 4227924494);
pub const OID_TCP_CONNECTION_OFFLOAD_HARDWARE_CAPABILITIES = @as(u32, 4227924495);
pub const OID_OFFLOAD_ENCAPSULATION = @as(u32, 16843018);
pub const OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA = @as(u32, 4228055554);
pub const OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA = @as(u32, 4228055555);
pub const OID_TCP_TASK_IPSEC_OFFLOAD_V2_UPDATE_SA = @as(u32, 4228055556);
pub const OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA_EX = @as(u32, 4228055557);
pub const OID_FFP_SUPPORT = @as(u32, 4227924496);
pub const OID_FFP_FLUSH = @as(u32, 4227924497);
pub const OID_FFP_CONTROL = @as(u32, 4227924498);
pub const OID_FFP_PARAMS = @as(u32, 4227924499);
pub const OID_FFP_DATA = @as(u32, 4227924500);
pub const OID_FFP_DRIVER_STATS = @as(u32, 4227990032);
pub const OID_FFP_ADAPTER_STATS = @as(u32, 4227990033);
pub const OID_TCP_CONNECTION_OFFLOAD_PARAMETERS = @as(u32, 4228055553);
pub const OID_TUNNEL_INTERFACE_SET_OID = @as(u32, 251724038);
pub const OID_TUNNEL_INTERFACE_RELEASE_OID = @as(u32, 251724039);
pub const OID_QOS_RESERVED1 = @as(u32, 4211147008);
pub const OID_QOS_RESERVED2 = @as(u32, 4211147009);
pub const OID_QOS_RESERVED3 = @as(u32, 4211147010);
pub const OID_QOS_RESERVED4 = @as(u32, 4211147011);
pub const OID_QOS_RESERVED5 = @as(u32, 4211147012);
pub const OID_QOS_RESERVED6 = @as(u32, 4211147013);
pub const OID_QOS_RESERVED7 = @as(u32, 4211147014);
pub const OID_QOS_RESERVED8 = @as(u32, 4211147015);
pub const OID_QOS_RESERVED9 = @as(u32, 4211147016);
pub const OID_QOS_RESERVED10 = @as(u32, 4211147017);
pub const OID_QOS_RESERVED11 = @as(u32, 4211147018);
pub const OID_QOS_RESERVED12 = @as(u32, 4211147019);
pub const OID_QOS_RESERVED13 = @as(u32, 4211147020);
pub const OID_QOS_RESERVED14 = @as(u32, 4211147021);
pub const OID_QOS_RESERVED15 = @as(u32, 4211147022);
pub const OID_QOS_RESERVED16 = @as(u32, 4211147023);
pub const OID_QOS_RESERVED17 = @as(u32, 4211147024);
pub const OID_QOS_RESERVED18 = @as(u32, 4211147025);
pub const OID_QOS_RESERVED19 = @as(u32, 4211147026);
pub const OID_QOS_RESERVED20 = @as(u32, 4211147027);
pub const OID_XBOX_ACC_RESERVED0 = @as(u32, 4194304000);
pub const OFFLOAD_MAX_SAS = @as(u32, 3);
pub const OFFLOAD_INBOUND_SA = @as(u32, 1);
pub const OFFLOAD_OUTBOUND_SA = @as(u32, 2);
pub const NDIS_PROTOCOL_ID_DEFAULT = @as(u32, 0);
pub const NDIS_PROTOCOL_ID_TCP_IP = @as(u32, 2);
pub const NDIS_PROTOCOL_ID_IP6 = @as(u32, 3);
pub const NDIS_PROTOCOL_ID_IPX = @as(u32, 6);
pub const NDIS_PROTOCOL_ID_NBF = @as(u32, 7);
pub const NDIS_PROTOCOL_ID_MAX = @as(u32, 15);
pub const NDIS_PROTOCOL_ID_MASK = @as(u32, 15);
pub const READABLE_LOCAL_CLOCK = @as(u32, 1);
pub const CLOCK_NETWORK_DERIVED = @as(u32, 2);
pub const CLOCK_PRECISION = @as(u32, 4);
pub const RECEIVE_TIME_INDICATION_CAPABLE = @as(u32, 8);
pub const TIMED_SEND_CAPABLE = @as(u32, 16);
pub const TIME_STAMP_CAPABLE = @as(u32, 32);
pub const NDIS_DEVICE_WAKE_UP_ENABLE = @as(u32, 1);
pub const NDIS_DEVICE_WAKE_ON_PATTERN_MATCH_ENABLE = @as(u32, 2);
pub const NDIS_DEVICE_WAKE_ON_MAGIC_PACKET_ENABLE = @as(u32, 4);
pub const WAN_PROTOCOL_KEEPS_STATS = @as(u32, 1);
pub const NDIS_PACKET_TYPE_DIRECTED = @as(u32, 1);
pub const NDIS_PACKET_TYPE_MULTICAST = @as(u32, 2);
pub const NDIS_PACKET_TYPE_ALL_MULTICAST = @as(u32, 4);
pub const NDIS_PACKET_TYPE_BROADCAST = @as(u32, 8);
pub const NDIS_PACKET_TYPE_SOURCE_ROUTING = @as(u32, 16);
pub const NDIS_PACKET_TYPE_PROMISCUOUS = @as(u32, 32);
pub const NDIS_PACKET_TYPE_SMT = @as(u32, 64);
pub const NDIS_PACKET_TYPE_ALL_LOCAL = @as(u32, 128);
pub const NDIS_PACKET_TYPE_GROUP = @as(u32, 4096);
pub const NDIS_PACKET_TYPE_ALL_FUNCTIONAL = @as(u32, 8192);
pub const NDIS_PACKET_TYPE_FUNCTIONAL = @as(u32, 16384);
pub const NDIS_PACKET_TYPE_MAC_FRAME = @as(u32, 32768);
pub const NDIS_PACKET_TYPE_NO_LOCAL = @as(u32, 65536);
pub const NDIS_RING_SIGNAL_LOSS = @as(u32, 32768);
pub const NDIS_RING_HARD_ERROR = @as(u32, 16384);
pub const NDIS_RING_SOFT_ERROR = @as(u32, 8192);
pub const NDIS_RING_TRANSMIT_BEACON = @as(u32, 4096);
pub const NDIS_RING_LOBE_WIRE_FAULT = @as(u32, 2048);
pub const NDIS_RING_AUTO_REMOVAL_ERROR = @as(u32, 1024);
pub const NDIS_RING_REMOVE_RECEIVED = @as(u32, 512);
pub const NDIS_RING_COUNTER_OVERFLOW = @as(u32, 256);
pub const NDIS_RING_SINGLE_STATION = @as(u32, 128);
pub const NDIS_RING_RING_RECOVERY = @as(u32, 64);
pub const NDIS_PROT_OPTION_ESTIMATED_LENGTH = @as(u32, 1);
pub const NDIS_PROT_OPTION_NO_LOOPBACK = @as(u32, 2);
pub const NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT = @as(u32, 4);
pub const NDIS_PROT_OPTION_SEND_RESTRICTED = @as(u32, 8);
pub const NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA = @as(u32, 1);
pub const NDIS_MAC_OPTION_RECEIVE_SERIALIZED = @as(u32, 2);
pub const NDIS_MAC_OPTION_TRANSFERS_NOT_PEND = @as(u32, 4);
pub const NDIS_MAC_OPTION_NO_LOOPBACK = @as(u32, 8);
pub const NDIS_MAC_OPTION_FULL_DUPLEX = @as(u32, 16);
pub const NDIS_MAC_OPTION_EOTX_INDICATION = @as(u32, 32);
pub const NDIS_MAC_OPTION_8021P_PRIORITY = @as(u32, 64);
pub const NDIS_MAC_OPTION_SUPPORTS_MAC_ADDRESS_OVERWRITE = @as(u32, 128);
pub const NDIS_MAC_OPTION_RECEIVE_AT_DPC = @as(u32, 256);
pub const NDIS_MAC_OPTION_8021Q_VLAN = @as(u32, 512);
pub const NDIS_MAC_OPTION_RESERVED = @as(u32, 2147483648);
pub const NDIS_MEDIA_CAP_TRANSMIT = @as(u32, 1);
pub const NDIS_MEDIA_CAP_RECEIVE = @as(u32, 2);
pub const NDIS_CO_MAC_OPTION_DYNAMIC_LINK_SPEED = @as(u32, 1);
pub const NDIS_IF_MAX_STRING_SIZE = @as(u32, 256);
pub const NDIS_MAX_PHYS_ADDRESS_LENGTH = @as(u32, 32);
pub const NDIS_LINK_STATE_XMIT_LINK_SPEED_AUTO_NEGOTIATED = @as(u32, 1);
pub const NDIS_LINK_STATE_RCV_LINK_SPEED_AUTO_NEGOTIATED = @as(u32, 2);
pub const NDIS_LINK_STATE_DUPLEX_AUTO_NEGOTIATED = @as(u32, 4);
pub const NDIS_LINK_STATE_PAUSE_FUNCTIONS_AUTO_NEGOTIATED = @as(u32, 8);
pub const NDIS_LINK_STATE_REVISION_1 = @as(u32, 1);
pub const NDIS_LINK_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_OPER_STATE_REVISION_1 = @as(u32, 1);
pub const MAXIMUM_IP_OPER_STATUS_ADDRESS_FAMILIES_SUPPORTED = @as(u32, 32);
pub const NDIS_IP_OPER_STATUS_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_IP_OPER_STATE_REVISION_1 = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_NO_CHANGE = @as(u32, 0);
pub const NDIS_OFFLOAD_PARAMETERS_TX_RX_DISABLED = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_TX_ENABLED_RX_DISABLED = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_RX_ENABLED_TX_DISABLED = @as(u32, 3);
pub const NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED = @as(u32, 4);
pub const NDIS_OFFLOAD_PARAMETERS_LSOV1_DISABLED = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_LSOV1_ENABLED = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_IPSECV1_DISABLED = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_IPSECV1_AH_ENABLED = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_IPSECV1_ESP_ENABLED = @as(u32, 3);
pub const NDIS_OFFLOAD_PARAMETERS_IPSECV1_AH_AND_ESP_ENABLED = @as(u32, 4);
pub const NDIS_OFFLOAD_PARAMETERS_LSOV2_DISABLED = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_LSOV2_ENABLED = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_IPSECV2_DISABLED = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_IPSECV2_AH_ENABLED = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_IPSECV2_ESP_ENABLED = @as(u32, 3);
pub const NDIS_OFFLOAD_PARAMETERS_IPSECV2_AH_AND_ESP_ENABLED = @as(u32, 4);
pub const NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED = @as(u32, 2);
pub const NDIS_ENCAPSULATION_TYPE_GRE_MAC = @as(u32, 1);
pub const NDIS_ENCAPSULATION_TYPE_VXLAN = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_CONNECTION_OFFLOAD_DISABLED = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_CONNECTION_OFFLOAD_ENABLED = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_USO_DISABLED = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_USO_ENABLED = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_OFFLOAD_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_OFFLOAD_PARAMETERS_REVISION_3 = @as(u32, 3);
pub const NDIS_OFFLOAD_PARAMETERS_REVISION_4 = @as(u32, 4);
pub const NDIS_OFFLOAD_PARAMETERS_REVISION_5 = @as(u32, 5);
pub const NDIS_OFFLOAD_PARAMETERS_SKIP_REGISTRY_UPDATE = @as(u32, 1);
pub const IPSEC_OFFLOAD_V2_AUTHENTICATION_MD5 = @as(u32, 1);
pub const IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_1 = @as(u32, 2);
pub const IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_256 = @as(u32, 4);
pub const IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_128 = @as(u32, 8);
pub const IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_192 = @as(u32, 16);
pub const IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_256 = @as(u32, 32);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_NONE = @as(u32, 1);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_DES_CBC = @as(u32, 2);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_3_DES_CBC = @as(u32, 4);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_128 = @as(u32, 8);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_192 = @as(u32, 16);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_256 = @as(u32, 32);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_128 = @as(u32, 64);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_192 = @as(u32, 128);
pub const IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_256 = @as(u32, 256);
pub const NDIS_TCP_RECV_SEG_COALESC_OFFLOAD_REVISION_1 = @as(u32, 1);
pub const NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_NOT_SUPPORTED = @as(u32, 0);
pub const NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV4 = @as(u32, 1);
pub const NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV4 = @as(u32, 2);
pub const NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV6 = @as(u32, 4);
pub const NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV6 = @as(u32, 8);
pub const NDIS_OFFLOAD_FLAGS_GROUP_CHECKSUM_CAPABILITIES = @as(u32, 1);
pub const IPSEC_OFFLOAD_V2_AND_TCP_CHECKSUM_COEXISTENCE = @as(u32, 2);
pub const IPSEC_OFFLOAD_V2_AND_UDP_CHECKSUM_COEXISTENCE = @as(u32, 4);
pub const NDIS_OFFLOAD_REVISION_1 = @as(u32, 1);
pub const NDIS_OFFLOAD_REVISION_2 = @as(u32, 2);
pub const NDIS_OFFLOAD_REVISION_3 = @as(u32, 3);
pub const NDIS_OFFLOAD_REVISION_4 = @as(u32, 4);
pub const NDIS_OFFLOAD_REVISION_5 = @as(u32, 5);
pub const NDIS_OFFLOAD_REVISION_6 = @as(u32, 6);
pub const NDIS_OFFLOAD_REVISION_7 = @as(u32, 7);
pub const NDIS_TCP_CONNECTION_OFFLOAD_REVISION_1 = @as(u32, 1);
pub const NDIS_TCP_CONNECTION_OFFLOAD_REVISION_2 = @as(u32, 2);
pub const NDIS_PORT_AUTHENTICATION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_WMI_DEFAULT_METHOD_ID = @as(u32, 1);
pub const NDIS_WMI_OBJECT_TYPE_SET = @as(u32, 1);
pub const NDIS_WMI_OBJECT_TYPE_METHOD = @as(u32, 2);
pub const NDIS_WMI_OBJECT_TYPE_EVENT = @as(u32, 3);
pub const NDIS_WMI_OBJECT_TYPE_ENUM_ADAPTER = @as(u32, 4);
pub const NDIS_WMI_OBJECT_TYPE_OUTPUT_INFO = @as(u32, 5);
pub const NDIS_WMI_METHOD_HEADER_REVISION_1 = @as(u32, 1);
pub const NDIS_WMI_SET_HEADER_REVISION_1 = @as(u32, 1);
pub const NDIS_WMI_EVENT_HEADER_REVISION_1 = @as(u32, 1);
pub const NDIS_WMI_ENUM_ADAPTER_REVISION_1 = @as(u32, 1);
pub const NDIS_DEVICE_TYPE_ENDPOINT = @as(u32, 1);
pub const NDIS_HD_SPLIT_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_HD_SPLIT_COMBINE_ALL_HEADERS = @as(u32, 1);
pub const NDIS_HD_SPLIT_CURRENT_CONFIG_REVISION_1 = @as(u32, 1);
pub const NDIS_HD_SPLIT_CAPS_SUPPORTS_HEADER_DATA_SPLIT = @as(u32, 1);
pub const NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV4_OPTIONS = @as(u32, 2);
pub const NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV6_EXTENSION_HEADERS = @as(u32, 4);
pub const NDIS_HD_SPLIT_CAPS_SUPPORTS_TCP_OPTIONS = @as(u32, 8);
pub const NDIS_HD_SPLIT_ENABLE_HEADER_DATA_SPLIT = @as(u32, 1);
pub const NDIS_PM_WOL_BITMAP_PATTERN_SUPPORTED = @as(u32, 1);
pub const NDIS_PM_WOL_MAGIC_PACKET_SUPPORTED = @as(u32, 2);
pub const NDIS_PM_WOL_IPV4_TCP_SYN_SUPPORTED = @as(u32, 4);
pub const NDIS_PM_WOL_IPV6_TCP_SYN_SUPPORTED = @as(u32, 8);
pub const NDIS_PM_WOL_IPV4_DEST_ADDR_WILDCARD_SUPPORTED = @as(u32, 512);
pub const NDIS_PM_WOL_IPV6_DEST_ADDR_WILDCARD_SUPPORTED = @as(u32, 2048);
pub const NDIS_PM_WOL_EAPOL_REQUEST_ID_MESSAGE_SUPPORTED = @as(u32, 65536);
pub const NDIS_PM_PROTOCOL_OFFLOAD_ARP_SUPPORTED = @as(u32, 1);
pub const NDIS_PM_PROTOCOL_OFFLOAD_NS_SUPPORTED = @as(u32, 2);
pub const NDIS_PM_PROTOCOL_OFFLOAD_80211_RSN_REKEY_SUPPORTED = @as(u32, 128);
pub const NDIS_PM_WAKE_ON_MEDIA_CONNECT_SUPPORTED = @as(u32, 1);
pub const NDIS_PM_WAKE_ON_MEDIA_DISCONNECT_SUPPORTED = @as(u32, 2);
pub const NDIS_WLAN_WAKE_ON_NLO_DISCOVERY_SUPPORTED = @as(u32, 1);
pub const NDIS_WLAN_WAKE_ON_AP_ASSOCIATION_LOST_SUPPORTED = @as(u32, 2);
pub const NDIS_WLAN_WAKE_ON_GTK_HANDSHAKE_ERROR_SUPPORTED = @as(u32, 4);
pub const NDIS_WLAN_WAKE_ON_4WAY_HANDSHAKE_REQUEST_SUPPORTED = @as(u32, 8);
pub const NDIS_WWAN_WAKE_ON_REGISTER_STATE_SUPPORTED = @as(u32, 1);
pub const NDIS_WWAN_WAKE_ON_SMS_RECEIVE_SUPPORTED = @as(u32, 2);
pub const NDIS_WWAN_WAKE_ON_USSD_RECEIVE_SUPPORTED = @as(u32, 4);
pub const NDIS_WWAN_WAKE_ON_PACKET_STATE_SUPPORTED = @as(u32, 8);
pub const NDIS_WWAN_WAKE_ON_UICC_CHANGE_SUPPORTED = @as(u32, 16);
pub const NDIS_PM_WAKE_PACKET_INDICATION_SUPPORTED = @as(u32, 1);
pub const NDIS_PM_SELECTIVE_SUSPEND_SUPPORTED = @as(u32, 2);
pub const NDIS_PM_WOL_BITMAP_PATTERN_ENABLED = @as(u32, 1);
pub const NDIS_PM_WOL_MAGIC_PACKET_ENABLED = @as(u32, 2);
pub const NDIS_PM_WOL_IPV4_TCP_SYN_ENABLED = @as(u32, 4);
pub const NDIS_PM_WOL_IPV6_TCP_SYN_ENABLED = @as(u32, 8);
pub const NDIS_PM_WOL_IPV4_DEST_ADDR_WILDCARD_ENABLED = @as(u32, 512);
pub const NDIS_PM_WOL_IPV6_DEST_ADDR_WILDCARD_ENABLED = @as(u32, 2048);
pub const NDIS_PM_WOL_EAPOL_REQUEST_ID_MESSAGE_ENABLED = @as(u32, 65536);
pub const NDIS_PM_PROTOCOL_OFFLOAD_ARP_ENABLED = @as(u32, 1);
pub const NDIS_PM_PROTOCOL_OFFLOAD_NS_ENABLED = @as(u32, 2);
pub const NDIS_PM_PROTOCOL_OFFLOAD_80211_RSN_REKEY_ENABLED = @as(u32, 128);
pub const NDIS_PM_WAKE_ON_LINK_CHANGE_ENABLED = @as(u32, 1);
pub const NDIS_PM_WAKE_ON_MEDIA_DISCONNECT_ENABLED = @as(u32, 2);
pub const NDIS_PM_SELECTIVE_SUSPEND_ENABLED = @as(u32, 16);
pub const NDIS_WLAN_WAKE_ON_NLO_DISCOVERY_ENABLED = @as(u32, 1);
pub const NDIS_WLAN_WAKE_ON_AP_ASSOCIATION_LOST_ENABLED = @as(u32, 2);
pub const NDIS_WLAN_WAKE_ON_GTK_HANDSHAKE_ERROR_ENABLED = @as(u32, 4);
pub const NDIS_WLAN_WAKE_ON_4WAY_HANDSHAKE_REQUEST_ENABLED = @as(u32, 8);
pub const NDIS_WWAN_WAKE_ON_REGISTER_STATE_ENABLED = @as(u32, 1);
pub const NDIS_WWAN_WAKE_ON_SMS_RECEIVE_ENABLED = @as(u32, 2);
pub const NDIS_WWAN_WAKE_ON_USSD_RECEIVE_ENABLED = @as(u32, 4);
pub const NDIS_WWAN_WAKE_ON_PACKET_STATE_ENABLED = @as(u32, 8);
pub const NDIS_WWAN_WAKE_ON_UICC_CHANGE_ENABLED = @as(u32, 16);
pub const NDIS_PM_WOL_PRIORITY_LOWEST = @as(u32, 4294967295);
pub const NDIS_PM_WOL_PRIORITY_NORMAL = @as(u32, 268435456);
pub const NDIS_PM_WOL_PRIORITY_HIGHEST = @as(u32, 1);
pub const NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_LOWEST = @as(u32, 4294967295);
pub const NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_NORMAL = @as(u32, 268435456);
pub const NDIS_PM_PROTOCOL_OFFLOAD_PRIORITY_HIGHEST = @as(u32, 1);
pub const NDIS_PM_MAX_STRING_SIZE = @as(u32, 64);
pub const NDIS_PM_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_PM_CAPABILITIES_REVISION_2 = @as(u32, 2);
pub const NDIS_PM_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_PM_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const EAPOL_REQUEST_ID_WOL_FLAG_MUST_ENCRYPT = @as(u32, 1);
pub const NDIS_PM_MAX_PATTERN_ID = @as(u32, 65535);
pub const NDIS_PM_PRIVATE_PATTERN_ID = @as(u32, 1);
pub const NDIS_PM_WOL_PATTERN_REVISION_1 = @as(u32, 1);
pub const NDIS_PM_WOL_PATTERN_REVISION_2 = @as(u32, 2);
pub const DOT11_RSN_KCK_LENGTH = @as(u32, 16);
pub const DOT11_RSN_KEK_LENGTH = @as(u32, 16);
pub const DOT11_RSN_MAX_CIPHER_KEY_LENGTH = @as(u32, 32);
pub const NDIS_PM_PROTOCOL_OFFLOAD_REVISION_1 = @as(u32, 1);
pub const NDIS_PM_PROTOCOL_OFFLOAD_REVISION_2 = @as(u32, 2);
pub const NDIS_SIZEOF_NDIS_PM_PROTOCOL_OFFLOAD_REVISION_1 = @as(u32, 240);
pub const NDIS_PM_WAKE_REASON_REVISION_1 = @as(u32, 1);
pub const NDIS_PM_WAKE_PACKET_REVISION_1 = @as(u32, 1);
pub const NDIS_WMI_PM_ADMIN_CONFIG_REVISION_1 = @as(u32, 1);
pub const NDIS_WMI_PM_ACTIVE_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_MAC_HEADER_SUPPORTED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_IPV4_HEADER_SUPPORTED = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_IPV6_HEADER_SUPPORTED = @as(u32, 4);
pub const NDIS_RECEIVE_FILTER_ARP_HEADER_SUPPORTED = @as(u32, 8);
pub const NDIS_RECEIVE_FILTER_UDP_HEADER_SUPPORTED = @as(u32, 16);
pub const NDIS_RECEIVE_FILTER_MAC_HEADER_DEST_ADDR_SUPPORTED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_MAC_HEADER_SOURCE_ADDR_SUPPORTED = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_MAC_HEADER_PROTOCOL_SUPPORTED = @as(u32, 4);
pub const NDIS_RECEIVE_FILTER_MAC_HEADER_VLAN_ID_SUPPORTED = @as(u32, 8);
pub const NDIS_RECEIVE_FILTER_MAC_HEADER_PRIORITY_SUPPORTED = @as(u32, 16);
pub const NDIS_RECEIVE_FILTER_MAC_HEADER_PACKET_TYPE_SUPPORTED = @as(u32, 32);
pub const NDIS_RECEIVE_FILTER_ARP_HEADER_OPERATION_SUPPORTED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_ARP_HEADER_SPA_SUPPORTED = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_ARP_HEADER_TPA_SUPPORTED = @as(u32, 4);
pub const NDIS_RECEIVE_FILTER_IPV4_HEADER_PROTOCOL_SUPPORTED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_IPV6_HEADER_PROTOCOL_SUPPORTED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_UDP_HEADER_DEST_PORT_SUPPORTED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_TEST_HEADER_FIELD_EQUAL_SUPPORTED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_TEST_HEADER_FIELD_MASK_EQUAL_SUPPORTED = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_TEST_HEADER_FIELD_NOT_EQUAL_SUPPORTED = @as(u32, 4);
pub const NDIS_RECEIVE_FILTER_MSI_X_SUPPORTED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_VM_QUEUE_SUPPORTED = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_LOOKAHEAD_SPLIT_SUPPORTED = @as(u32, 4);
pub const NDIS_RECEIVE_FILTER_DYNAMIC_PROCESSOR_AFFINITY_CHANGE_SUPPORTED = @as(u32, 8);
pub const NDIS_RECEIVE_FILTER_INTERRUPT_VECTOR_COALESCING_SUPPORTED = @as(u32, 16);
pub const NDIS_RECEIVE_FILTER_IMPLAT_MIN_OF_QUEUES_MODE = @as(u32, 64);
pub const NDIS_RECEIVE_FILTER_IMPLAT_SUM_OF_QUEUES_MODE = @as(u32, 128);
pub const NDIS_RECEIVE_FILTER_PACKET_COALESCING_SUPPORTED_ON_DEFAULT_QUEUE = @as(u32, 256);
pub const NDIS_RECEIVE_FILTER_ANY_VLAN_SUPPORTED = @as(u32, 32);
pub const NDIS_RECEIVE_FILTER_DYNAMIC_PROCESSOR_AFFINITY_CHANGE_FOR_DEFAULT_QUEUE_SUPPORTED = @as(u32, 64);
pub const NDIS_RECEIVE_FILTER_VMQ_FILTERS_ENABLED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_PACKET_COALESCING_FILTERS_ENABLED = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_VM_QUEUES_ENABLED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_CAPABILITIES_REVISION_2 = @as(u32, 2);
pub const NDIS_NIC_SWITCH_CAPS_VLAN_SUPPORTED = @as(u32, 1);
pub const NDIS_NIC_SWITCH_CAPS_PER_VPORT_INTERRUPT_MODERATION_SUPPORTED = @as(u32, 2);
pub const NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED = @as(u32, 4);
pub const NDIS_NIC_SWITCH_CAPS_VF_RSS_SUPPORTED = @as(u32, 8);
pub const NDIS_NIC_SWITCH_CAPS_SINGLE_VPORT_POOL = @as(u32, 16);
pub const NDIS_NIC_SWITCH_CAPS_RSS_PARAMETERS_PER_PF_VPORT_SUPPORTED = @as(u32, 32);
pub const NDIS_NIC_SWITCH_CAPS_NIC_SWITCH_WITHOUT_IOV_SUPPORTED = @as(u32, 64);
pub const NDIS_NIC_SWITCH_CAPS_RSS_ON_PF_VPORTS_SUPPORTED = @as(u32, 128);
pub const NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SUPPORTED = @as(u32, 256);
pub const NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_FUNCTION_SUPPORTED = @as(u32, 512);
pub const NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_TYPE_SUPPORTED = @as(u32, 1024);
pub const NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_KEY_SUPPORTED = @as(u32, 2048);
pub const NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SIZE_RESTRICTED = @as(u32, 4096);
pub const NDIS_NIC_SWITCH_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_CAPABILITIES_REVISION_2 = @as(u32, 2);
pub const NDIS_NIC_SWITCH_CAPABILITIES_REVISION_3 = @as(u32, 3);
pub const NDIS_RECEIVE_FILTER_GLOBAL_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_DEFAULT_RECEIVE_QUEUE_ID = @as(u32, 0);
pub const NDIS_DEFAULT_RECEIVE_QUEUE_GROUP_ID = @as(u32, 0);
pub const NDIS_DEFAULT_RECEIVE_FILTER_ID = @as(u32, 0);
pub const NDIS_RECEIVE_FILTER_FIELD_MAC_HEADER_VLAN_UNTAGGED_OR_ZERO = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_RESERVED = @as(u32, 254);
pub const NDIS_RECEIVE_FILTER_FIELD_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_FIELD_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_FLAGS_RESERVED = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_PACKET_ENCAPSULATION_GRE = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_PACKET_ENCAPSULATION = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_CLEAR_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_PER_QUEUE_RECEIVE_INDICATION = @as(u32, 1);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_LOOKAHEAD_SPLIT_REQUIRED = @as(u32, 2);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_FLAGS_CHANGED = @as(u32, 65536);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_PROCESSOR_AFFINITY_CHANGED = @as(u32, 131072);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_SUGGESTED_RECV_BUFFER_NUMBERS_CHANGED = @as(u32, 262144);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_NAME_CHANGED = @as(u32, 524288);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_INTERRUPT_COALESCING_DOMAIN_ID_CHANGED = @as(u32, 1048576);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_QOS_SQ_ID_CHANGED = @as(u32, 2097152);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_CHANGE_MASK = @as(u32, 4294901760);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_RECEIVE_QUEUE_PARAMETERS_REVISION_3 = @as(u32, 3);
pub const NDIS_RECEIVE_QUEUE_FREE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_QUEUE_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_QUEUE_INFO_REVISION_2 = @as(u32, 2);
pub const NDIS_RECEIVE_QUEUE_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_INFO_ARRAY_REVISION_2 = @as(u32, 2);
pub const NDIS_RECEIVE_FILTER_INFO_ARRAY_VPORT_ID_SPECIFIED = @as(u32, 1);
pub const NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_2 = @as(u32, 2);
pub const NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_3 = @as(u32, 3);
pub const NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV4 = @as(u32, 256);
pub const NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV6 = @as(u32, 512);
pub const NDIS_RSS_CAPS_HASH_TYPE_TCP_IPV6_EX = @as(u32, 1024);
pub const NDIS_RSS_CAPS_HASH_TYPE_UDP_IPV4 = @as(u32, 2048);
pub const NDIS_RSS_CAPS_HASH_TYPE_UDP_IPV6 = @as(u32, 4096);
pub const NDIS_RSS_CAPS_HASH_TYPE_UDP_IPV6_EX = @as(u32, 8192);
pub const NDIS_RSS_CAPS_MESSAGE_SIGNALED_INTERRUPTS = @as(u32, 16777216);
pub const NDIS_RSS_CAPS_CLASSIFICATION_AT_ISR = @as(u32, 33554432);
pub const NDIS_RSS_CAPS_CLASSIFICATION_AT_DPC = @as(u32, 67108864);
pub const NDIS_RSS_CAPS_USING_MSI_X = @as(u32, 134217728);
pub const NDIS_RSS_CAPS_RSS_AVAILABLE_ON_PORTS = @as(u32, 268435456);
pub const NDIS_RSS_CAPS_SUPPORTS_MSI_X = @as(u32, 536870912);
pub const NDIS_RSS_CAPS_SUPPORTS_INDEPENDENT_ENTRY_MOVE = @as(u32, 1073741824);
pub const NDIS_RSS_PARAM_FLAG_BASE_CPU_UNCHANGED = @as(u32, 1);
pub const NDIS_RSS_PARAM_FLAG_HASH_INFO_UNCHANGED = @as(u32, 2);
pub const NDIS_RSS_PARAM_FLAG_ITABLE_UNCHANGED = @as(u32, 4);
pub const NDIS_RSS_PARAM_FLAG_HASH_KEY_UNCHANGED = @as(u32, 8);
pub const NDIS_RSS_PARAM_FLAG_DISABLE_RSS = @as(u32, 16);
pub const NDIS_RSS_PARAM_FLAG_DEFAULT_PROCESSOR_UNCHANGED = @as(u32, 32);
pub const NDIS_RSS_INDIRECTION_TABLE_SIZE_REVISION_1 = @as(u32, 128);
pub const NDIS_RSS_HASH_SECRET_KEY_SIZE_REVISION_1 = @as(u32, 40);
pub const NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_RECEIVE_SCALE_PARAMETERS_REVISION_3 = @as(u32, 3);
pub const NDIS_RSS_INDIRECTION_TABLE_MAX_SIZE_REVISION_1 = @as(u32, 128);
pub const NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_1 = @as(u32, 40);
pub const NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_2 = @as(u32, 40);
pub const NDIS_RSS_HASH_SECRET_KEY_MAX_SIZE_REVISION_3 = @as(u32, 40);
pub const NDIS_RECEIVE_SCALE_PARAMETERS_V2_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_SCALE_PARAM_ENABLE_RSS = @as(u32, 1);
pub const NDIS_RECEIVE_SCALE_PARAM_HASH_INFO_CHANGED = @as(u32, 2);
pub const NDIS_RECEIVE_SCALE_PARAM_HASH_KEY_CHANGED = @as(u32, 4);
pub const NDIS_RECEIVE_SCALE_PARAM_NUMBER_OF_QUEUES_CHANGED = @as(u32, 8);
pub const NDIS_RECEIVE_SCALE_PARAM_NUMBER_OF_ENTRIES_CHANGED = @as(u32, 16);
pub const NDIS_RSS_SET_INDIRECTION_ENTRY_FLAG_PRIMARY_PROCESSOR = @as(u32, 1);
pub const NDIS_RSS_SET_INDIRECTION_ENTRY_FLAG_DEFAULT_PROCESSOR = @as(u32, 2);
pub const NDIS_RSS_SET_INDIRECTION_ENTRIES_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_HASH_FLAG_ENABLE_HASH = @as(u32, 1);
pub const NDIS_RECEIVE_HASH_FLAG_HASH_INFO_UNCHANGED = @as(u32, 2);
pub const NDIS_RECEIVE_HASH_FLAG_HASH_KEY_UNCHANGED = @as(u32, 4);
pub const NDIS_RECEIVE_HASH_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_RSS_PROCESSOR_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_RSS_PROCESSOR_INFO_REVISION_2 = @as(u32, 2);
pub const NDIS_SYSTEM_PROCESSOR_INFO_EX_REVISION_1 = @as(u32, 1);
pub const NDIS_HYPERVISOR_INFO_FLAG_HYPERVISOR_PRESENT = @as(u32, 1);
pub const NDIS_HYPERVISOR_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_WMI_RECEIVE_QUEUE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_WMI_RECEIVE_QUEUE_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_NDK_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const OID_NDK_SET_STATE = @as(u32, 4228121089);
pub const OID_NDK_STATISTICS = @as(u32, 4228121090);
pub const OID_NDK_CONNECTIONS = @as(u32, 4228121091);
pub const OID_NDK_LOCAL_ENDPOINTS = @as(u32, 4228121092);
pub const GUID_NDIS_NDK_CAPABILITIES = Guid.initString("7969ba4d-dd80-4bc7-b3e6-68043997e519");
pub const GUID_NDIS_NDK_STATE = Guid.initString("530c69c9-2f51-49de-a1af-088d54ffa474");
pub const NDIS_NDK_STATISTICS_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_NDK_CONNECTIONS_REVISION_1 = @as(u32, 1);
pub const NDIS_NDK_LOCAL_ENDPOINTS_REVISION_1 = @as(u32, 1);
pub const OID_QOS_HARDWARE_CAPABILITIES = @as(u32, 4228186113);
pub const OID_QOS_CURRENT_CAPABILITIES = @as(u32, 4228186114);
pub const OID_QOS_PARAMETERS = @as(u32, 4228186115);
pub const OID_QOS_OPERATIONAL_PARAMETERS = @as(u32, 4228186116);
pub const OID_QOS_REMOTE_PARAMETERS = @as(u32, 4228186117);
pub const NDIS_QOS_MAXIMUM_PRIORITIES = @as(u32, 8);
pub const NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES = @as(u32, 8);
pub const NDIS_QOS_CAPABILITIES_STRICT_TSA_SUPPORTED = @as(u32, 1);
pub const NDIS_QOS_CAPABILITIES_MACSEC_BYPASS_SUPPORTED = @as(u32, 2);
pub const NDIS_QOS_CAPABILITIES_CEE_DCBX_SUPPORTED = @as(u32, 4);
pub const NDIS_QOS_CAPABILITIES_IEEE_DCBX_SUPPORTED = @as(u32, 8);
pub const NDIS_QOS_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_QOS_CLASSIFICATION_SET_BY_MINIPORT_MASK = @as(u32, 4278190080);
pub const NDIS_QOS_CLASSIFICATION_ENFORCED_BY_MINIPORT = @as(u32, 16777216);
pub const NDIS_QOS_CONDITION_RESERVED = @as(u32, 0);
pub const NDIS_QOS_CONDITION_DEFAULT = @as(u32, 1);
pub const NDIS_QOS_CONDITION_TCP_PORT = @as(u32, 2);
pub const NDIS_QOS_CONDITION_UDP_PORT = @as(u32, 3);
pub const NDIS_QOS_CONDITION_TCP_OR_UDP_PORT = @as(u32, 4);
pub const NDIS_QOS_CONDITION_ETHERTYPE = @as(u32, 5);
pub const NDIS_QOS_CONDITION_NETDIRECT_PORT = @as(u32, 6);
pub const NDIS_QOS_CONDITION_MAXIMUM = @as(u32, 7);
pub const NDIS_QOS_ACTION_PRIORITY = @as(u32, 0);
pub const NDIS_QOS_ACTION_MAXIMUM = @as(u32, 1);
pub const NDIS_QOS_CLASSIFICATION_ELEMENT_REVISION_1 = @as(u32, 1);
pub const NDIS_QOS_PARAMETERS_ETS_CHANGED = @as(u32, 1);
pub const NDIS_QOS_PARAMETERS_ETS_CONFIGURED = @as(u32, 2);
pub const NDIS_QOS_PARAMETERS_PFC_CHANGED = @as(u32, 256);
pub const NDIS_QOS_PARAMETERS_PFC_CONFIGURED = @as(u32, 512);
pub const NDIS_QOS_PARAMETERS_CLASSIFICATION_CHANGED = @as(u32, 65536);
pub const NDIS_QOS_PARAMETERS_CLASSIFICATION_CONFIGURED = @as(u32, 131072);
pub const NDIS_QOS_PARAMETERS_WILLING = @as(u32, 2147483648);
pub const NDIS_QOS_TSA_STRICT = @as(u32, 0);
pub const NDIS_QOS_TSA_CBS = @as(u32, 1);
pub const NDIS_QOS_TSA_ETS = @as(u32, 2);
pub const NDIS_QOS_TSA_MAXIMUM = @as(u32, 3);
pub const NDIS_QOS_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_DEFAULT_VPORT_ID = @as(u32, 0);
pub const NDIS_DEFAULT_SWITCH_ID = @as(u32, 0);
pub const NDIS_NIC_SWITCH_PARAMETERS_CHANGE_MASK = @as(u32, 4294901760);
pub const NDIS_NIC_SWITCH_PARAMETERS_SWITCH_NAME_CHANGED = @as(u32, 65536);
pub const NDIS_NIC_SWITCH_PARAMETERS_DEFAULT_NUMBER_OF_QUEUE_PAIRS_FOR_DEFAULT_VPORT = @as(u32, 1);
pub const NDIS_NIC_SWITCH_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_NIC_SWITCH_DELETE_SWITCH_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_LOOKAHEAD_SPLIT_ENABLED = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_PACKET_DIRECT_RX_ONLY = @as(u32, 2);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_ENFORCE_MAX_SG_LIST = @as(u32, 32768);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_CHANGE_MASK = @as(u32, 4294901760);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_FLAGS_CHANGED = @as(u32, 65536);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_NAME_CHANGED = @as(u32, 131072);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_INT_MOD_CHANGED = @as(u32, 262144);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_STATE_CHANGED = @as(u32, 524288);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_PROCESSOR_AFFINITY_CHANGED = @as(u32, 1048576);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_NDK_PARAMS_CHANGED = @as(u32, 2097152);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_QOS_SQ_ID_CHANGED = @as(u32, 4194304);
pub const NDIS_NIC_SWITCH_VPORT_PARAMS_NUM_QUEUE_PAIRS_CHANGED = @as(u32, 8388608);
pub const NDIS_NIC_SWITCH_VPORT_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VPORT_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_NIC_SWITCH_DELETE_VPORT_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VPORT_INFO_LOOKAHEAD_SPLIT_ENABLED = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VPORT_INFO_PACKET_DIRECT_RX_ONLY = @as(u32, 2);
pub const NDIS_NIC_SWITCH_VPORT_INFO_GFT_ENABLED = @as(u32, 4);
pub const NDIS_NIC_SWITCH_VPORT_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_ENUM_ON_SPECIFIC_FUNCTION = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH = @as(u32, 2);
pub const NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VF_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_FREE_VF_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VF_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VF_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH = @as(u32, 1);
pub const NDIS_NIC_SWITCH_VF_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_CAPS_SRIOV_SUPPORTED = @as(u32, 1);
pub const NDIS_SRIOV_CAPS_PF_MINIPORT = @as(u32, 2);
pub const NDIS_SRIOV_CAPS_VF_MINIPORT = @as(u32, 4);
pub const NDIS_SRIOV_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_READ_VF_CONFIG_BLOCK_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_RESET_VF_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_CONFIG_STATE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_VF_VENDOR_DEVICE_ID_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_PROBED_BARS_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_RECEIVE_FILTER_MOVE_FILTER_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_BAR_RESOURCES_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_PF_LUID_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_VF_SERIAL_NUMBER_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_VF_INVALIDATE_CONFIG_BLOCK_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_SRIOV_OVERLYING_ADAPTER_INFO_VERSION_1 = @as(u32, 1);
pub const NDIS_ISOLATION_NAME_MAX_STRING_SIZE = @as(u32, 127);
pub const NDIS_ROUTING_DOMAIN_ISOLATION_ENTRY_REVISION_1 = @as(u32, 1);
pub const NDIS_ROUTING_DOMAIN_ENTRY_REVISION_1 = @as(u32, 1);
pub const NDIS_ISOLATION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_OBJECT_SERIALIZATION_VERSION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_SECURITY_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_SECURITY_REVISION_2 = @as(u32, 2);
pub const NDIS_SWITCH_PORT_PROPERTY_VLAN_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_PROFILE_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_ISOLATION_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_ROUTING_DOMAIN_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_CUSTOM_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_DELETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_ENUM_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PROPERTY_ENUM_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PROPERTY_CUSTOM_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PROPERTY_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PROPERTY_DELETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PROPERTY_ENUM_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PROPERTY_ENUM_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_FEATURE_STATUS_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_FEATURE_STATUS_CUSTOM_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PARAMETERS_FLAG_UNTRUSTED_INTERNAL_PORT = @as(u32, 1);
pub const NDIS_SWITCH_PORT_PARAMETERS_FLAG_RESTORING_PORT = @as(u32, 2);
pub const NDIS_SWITCH_PORT_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_PORT_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_NIC_FLAGS_NIC_INITIALIZING = @as(u32, 1);
pub const NDIS_SWITCH_NIC_FLAGS_NIC_SUSPENDED = @as(u32, 2);
pub const NDIS_SWITCH_NIC_FLAGS_MAPPED_NIC_UPDATED = @as(u32, 4);
pub const NDIS_SWITCH_NIC_FLAGS_NIC_SUSPENDED_LM = @as(u32, 16);
pub const NDIS_SWITCH_NIC_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_NIC_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_SWITCH_NIC_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_NIC_OID_REQUEST_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_NIC_SAVE_STATE_REVISION_1 = @as(u32, 1);
pub const NDIS_SWITCH_NIC_SAVE_STATE_REVISION_2 = @as(u32, 2);
pub const NDIS_PORT_STATE_REVISION_1 = @as(u32, 1);
pub const NDIS_PORT_CHAR_USE_DEFAULT_AUTH_SETTINGS = @as(u32, 1);
pub const NDIS_PORT_CHARACTERISTICS_REVISION_1 = @as(u32, 1);
pub const NDIS_PORT_ARRAY_REVISION_1 = @as(u32, 1);
pub const ETHERNET_LENGTH_OF_ADDRESS = @as(u32, 6);
pub const NDIS_GFP_HEADER_PRESENT_ETHERNET = @as(u32, 1);
pub const NDIS_GFP_HEADER_PRESENT_IPV4 = @as(u32, 2);
pub const NDIS_GFP_HEADER_PRESENT_IPV6 = @as(u32, 4);
pub const NDIS_GFP_HEADER_PRESENT_TCP = @as(u32, 8);
pub const NDIS_GFP_HEADER_PRESENT_UDP = @as(u32, 16);
pub const NDIS_GFP_HEADER_PRESENT_ICMP = @as(u32, 32);
pub const NDIS_GFP_HEADER_PRESENT_NO_ENCAP = @as(u32, 64);
pub const NDIS_GFP_HEADER_PRESENT_IP_IN_IP_ENCAP = @as(u32, 128);
pub const NDIS_GFP_HEADER_PRESENT_IP_IN_GRE_ENCAP = @as(u32, 256);
pub const NDIS_GFP_HEADER_PRESENT_NVGRE_ENCAP = @as(u32, 512);
pub const NDIS_GFP_HEADER_PRESENT_VXLAN_ENCAP = @as(u32, 1024);
pub const NDIS_GFP_HEADER_PRESENT_ESP = @as(u32, 2048);
pub const NDIS_GFP_ENCAPSULATION_TYPE_NOT_ENCAPSULATED = @as(u32, 1);
pub const NDIS_GFP_ENCAPSULATION_TYPE_IP_IN_IP = @as(u32, 2);
pub const NDIS_GFP_ENCAPSULATION_TYPE_IP_IN_GRE = @as(u32, 4);
pub const NDIS_GFP_ENCAPSULATION_TYPE_NVGRE = @as(u32, 8);
pub const NDIS_GFP_ENCAPSULATION_TYPE_VXLAN = @as(u32, 16);
pub const NDIS_GFP_UNDEFINED_PROFILE_ID = @as(u32, 0);
pub const NDIS_GFP_HEADER_GROUP_EXACT_MATCH_PROFILE_IS_TTL_ONE = @as(u32, 1);
pub const NDIS_GFP_HEADER_GROUP_EXACT_MATCH_PROFILE_REVISION_1 = @as(u32, 1);
pub const NDIS_GFP_EXACT_MATCH_PROFILE_RDMA_FLOW = @as(u32, 1);
pub const NDIS_GFP_EXACT_MATCH_PROFILE_REVISION_1 = @as(u32, 1);
pub const NDIS_GFP_HEADER_GROUP_EXACT_MATCH_IS_TTL_ONE = @as(u32, 1);
pub const NDIS_GFP_HEADER_GROUP_EXACT_MATCH_REVISION_1 = @as(u32, 1);
pub const NDIS_GFP_HEADER_GROUP_WILDCARD_MATCH_PROFILE_IS_TTL_ONE = @as(u32, 1);
pub const NDIS_GFP_HEADER_GROUP_WILDCARD_MATCH_PROFILE_REVISION_1 = @as(u32, 1);
pub const NDIS_GFP_WILDCARD_MATCH_PROFILE_REVISION_1 = @as(u32, 1);
pub const NDIS_GFP_HEADER_GROUP_WILDCARD_MATCH_IS_TTL_ONE = @as(u32, 1);
pub const NDIS_GFP_HEADER_GROUP_WILDCARD_MATCH_REVISION_1 = @as(u32, 1);
pub const NDIS_PD_CAPS_RECEIVE_FILTER_COUNTERS_SUPPORTED = @as(u32, 1);
pub const NDIS_PD_CAPS_DRAIN_NOTIFICATIONS_SUPPORTED = @as(u32, 2);
pub const NDIS_PD_CAPS_NOTIFICATION_MODERATION_INTERVAL_SUPPORTED = @as(u32, 4);
pub const NDIS_PD_CAPS_NOTIFICATION_MODERATION_COUNT_SUPPORTED = @as(u32, 8);
pub const NDIS_PD_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_PD_CONFIG_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_UNDEFINED_FLOW_ENTRY_ID = @as(u32, 0);
pub const NDIS_GFT_UNDEFINED_TABLE_ID = @as(u32, 0);
pub const NDIS_GFT_TABLE_INCLUDE_EXTERNAL_VPPORT = @as(u32, 1);
pub const NDIS_GFT_TABLE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_TABLE_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_TABLE_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_DELETE_TABLE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_UNDEFINED_COUNTER_ID = @as(u32, 0);
pub const NDIS_GFT_MAX_COUNTER_OBJECTS_PER_FLOW_ENTRY = @as(u32, 8);
pub const NDIS_GFT_COUNTER_PARAMETERS_CLIENT_SPECIFIED_ADDRESS = @as(u32, 1);
pub const NDIS_GFT_COUNTER_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_FREE_COUNTER_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_COUNTER_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_COUNTER_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_COUNTER_VALUE_ARRAY_UPDATE_MEMORY_MAPPED_COUNTERS = @as(u32, 1);
pub const NDIS_GFT_COUNTER_VALUE_ARRAY_GET_VALUES = @as(u32, 2);
pub const NDIS_GFT_COUNTER_VALUE_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_STATISTICS_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_HEADER_GROUP_TRANSPOSITION_PROFILE_DECREMENT_TTL_IF_NOT_ONE = @as(u32, 1);
pub const NDIS_GFT_HEADER_GROUP_TRANSPOSITION_PROFILE_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_UNDEFINED_CUSTOM_ACTION = @as(u32, 0);
pub const NDIS_GFT_RESERVED_CUSTOM_ACTIONS = @as(u32, 256);
pub const NDIS_GFT_CUSTOM_ACTION_PROFILE_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_HTP_REDIRECT_TO_INGRESS_QUEUE_OF_VPORT = @as(u32, 1);
pub const NDIS_GFT_HTP_REDIRECT_TO_EGRESS_QUEUE_OF_VPORT = @as(u32, 2);
pub const NDIS_GFT_HTP_REDIRECT_TO_INGRESS_QUEUE_OF_VPORT_IF_TTL_IS_ONE = @as(u32, 4);
pub const NDIS_GFT_HTP_REDIRECT_TO_EGRESS_QUEUE_OF_VPORT_IF_TTL_IS_ONE = @as(u32, 8);
pub const NDIS_GFT_HTP_COPY_ALL_PACKETS = @as(u32, 16);
pub const NDIS_GFT_HTP_COPY_FIRST_PACKET = @as(u32, 32);
pub const NDIS_GFT_HTP_COPY_WHEN_TCP_FLAG_SET = @as(u32, 64);
pub const NDIS_GFT_HTP_CUSTOM_ACTION_PRESENT = @as(u32, 128);
pub const NDIS_GFT_HTP_META_ACTION_BEFORE_HEADER_TRANSPOSITION = @as(u32, 256);
pub const NDIS_GFT_HEADER_TRANSPOSITION_PROFILE_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_HEADER_GROUP_TRANSPOSITION_DECREMENT_TTL_IF_NOT_ONE = @as(u32, 1);
pub const NDIS_GFT_HEADER_GROUP_TRANSPOSITION_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_CUSTOM_ACTION_LAST_ACTION = @as(u32, 1);
pub const NDIS_GFT_CUSTOM_ACTION_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_EMFE_ADD_IN_ACTIVATED_STATE = @as(u32, 1);
pub const NDIS_GFT_EMFE_MATCH_AND_ACTION_MUST_BE_SUPPORTED = @as(u32, 2);
pub const NDIS_GFT_EMFE_RDMA_FLOW = @as(u32, 4);
pub const NDIS_GFT_EMFE_REDIRECT_TO_INGRESS_QUEUE_OF_VPORT = @as(u32, 4096);
pub const NDIS_GFT_EMFE_REDIRECT_TO_EGRESS_QUEUE_OF_VPORT = @as(u32, 8192);
pub const NDIS_GFT_EMFE_REDIRECT_TO_INGRESS_QUEUE_OF_VPORT_IF_TTL_IS_ONE = @as(u32, 16384);
pub const NDIS_GFT_EMFE_REDIRECT_TO_EGRESS_QUEUE_OF_VPORT_IF_TTL_IS_ONE = @as(u32, 32768);
pub const NDIS_GFT_EMFE_COPY_ALL_PACKETS = @as(u32, 65536);
pub const NDIS_GFT_EMFE_COPY_FIRST_PACKET = @as(u32, 131072);
pub const NDIS_GFT_EMFE_COPY_WHEN_TCP_FLAG_SET = @as(u32, 262144);
pub const NDIS_GFT_EMFE_CUSTOM_ACTION_PRESENT = @as(u32, 524288);
pub const NDIS_GFT_EMFE_META_ACTION_BEFORE_HEADER_TRANSPOSITION = @as(u32, 1048576);
pub const NDIS_GFT_EMFE_COPY_AFTER_TCP_FIN_FLAG_SET = @as(u32, 2097152);
pub const NDIS_GFT_EMFE_COPY_AFTER_TCP_RST_FLAG_SET = @as(u32, 4194304);
pub const NDIS_GFT_EMFE_COPY_CONDITION_CHANGED = @as(u32, 16777216);
pub const NDIS_GFT_EMFE_ALL_VPORT_FLOW_ENTRIES = @as(u32, 33554432);
pub const NDIS_GFT_EMFE_COUNTER_ALLOCATE = @as(u32, 1);
pub const NDIS_GFT_EMFE_COUNTER_MEMORY_MAPPED = @as(u32, 2);
pub const NDIS_GFT_EMFE_COUNTER_CLIENT_SPECIFIED_ADDRESS = @as(u32, 4);
pub const NDIS_GFT_EMFE_COUNTER_TRACK_TCP_FLOW = @as(u32, 8);
pub const NDIS_GFT_EXACT_MATCH_FLOW_ENTRY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_WCFE_ADD_IN_ACTIVATED_STATE = @as(u32, 1);
pub const NDIS_GFT_WCFE_REDIRECT_TO_INGRESS_QUEUE_OF_VPORT = @as(u32, 2);
pub const NDIS_GFT_WCFE_REDIRECT_TO_EGRESS_QUEUE_OF_VPORT = @as(u32, 4);
pub const NDIS_GFT_WCFE_REDIRECT_TO_INGRESS_QUEUE_OF_VPORT_IF_TTL_IS_ONE = @as(u32, 8);
pub const NDIS_GFT_WCFE_REDIRECT_TO_EGRESS_QUEUE_OF_VPORT_IF_TTL_IS_ONE = @as(u32, 16);
pub const NDIS_GFT_WCFE_COPY_ALL_PACKETS = @as(u32, 32);
pub const NDIS_GFT_WCFE_CUSTOM_ACTION_PRESENT = @as(u32, 64);
pub const NDIS_GFT_WCFE_COUNTER_ALLOCATE = @as(u32, 1);
pub const NDIS_GFT_WCFE_COUNTER_MEMORY_MAPPED = @as(u32, 2);
pub const NDIS_GFT_WCFE_COUNTER_CLIENT_SPECIFIED_ADDRESS = @as(u32, 4);
pub const NDIS_GFT_WILDCARD_MATCH_FLOW_ENTRY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_PROFILE_INFO_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_PROFILE_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_DELETE_PROFILE_ALL_PROFILES = @as(u32, 1);
pub const NDIS_GFT_DELETE_PROFILE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_FLOW_ENTRY_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_FLOW_ENTRY_INFO_ALL_FLOW_ENTRIES = @as(u32, 1);
pub const NDIS_GFT_FLOW_ENTRY_INFO_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_FLOW_ENTRY_ID_ALL_NIC_SWITCH_FLOW_ENTRIES = @as(u32, 1);
pub const NDIS_GFT_FLOW_ENTRY_ID_ALL_TABLE_FLOW_ENTRIES = @as(u32, 2);
pub const NDIS_GFT_FLOW_ENTRY_ID_ALL_VPORT_FLOW_ENTRIES = @as(u32, 4);
pub const NDIS_GFT_FLOW_ENTRY_ID_RANGE_DEFINED = @as(u32, 8);
pub const NDIS_GFT_FLOW_ENTRY_ID_ARRAY_DEFINED = @as(u32, 16);
pub const NDIS_GFT_FLOW_ENTRY_ID_ARRAY_COUNTER_VALUES = @as(u32, 65536);
pub const NDIS_GFT_FLOW_ENTRY_ID_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_OFFLOAD_PARAMETERS_ENABLE_OFFLOAD = @as(u32, 1);
pub const NDIS_GFT_OFFLOAD_PARAMETERS_CUSTOM_PROVIDER_RESERVED = @as(u32, 4278190080);
pub const NDIS_GFT_OFFLOAD_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_OFFLOAD_CAPS_ADD_FLOW_ENTRY_DEACTIVATED_PREFERRED = @as(u32, 1);
pub const NDIS_GFT_OFFLOAD_CAPS_RATE_LIMITING_QUEUE_SUPPORTED = @as(u32, 2);
pub const NDIS_GFT_OFFLOAD_CAPS_MEMORY_MAPPED_COUNTERS = @as(u32, 1);
pub const NDIS_GFT_OFFLOAD_CAPS_MEMORY_MAPPED_PAKCET_AND_BYTE_COUNTERS = @as(u32, 2);
pub const NDIS_GFT_OFFLOAD_CAPS_PER_FLOW_ENTRY_COUNTERS = @as(u32, 4);
pub const NDIS_GFT_OFFLOAD_CAPS_PER_PACKET_COUNTER_UPDATE = @as(u32, 8);
pub const NDIS_GFT_OFFLOAD_CAPS_CLIENT_SPECIFIED_MEMORY_MAPPED_COUNTERS = @as(u32, 16);
pub const NDIS_GFT_OFFLOAD_CAPS_INGRESS_AGGREGATE_COUNTERS = @as(u32, 32);
pub const NDIS_GFT_OFFLOAD_CAPS_EGRESS_AGGREGATE_COUNTERS = @as(u32, 64);
pub const NDIS_GFT_OFFLOAD_CAPS_TRACK_TCP_FLOW_STATE = @as(u32, 128);
pub const NDIS_GFT_OFFLOAD_CAPS_COMBINED_COUNTER_AND_STATE = @as(u32, 256);
pub const NDIS_GFT_OFFLOAD_CAPS_INGRESS_WILDCARD_MATCH = @as(u32, 1);
pub const NDIS_GFT_OFFLOAD_CAPS_EGRESS_WILDCARD_MATCH = @as(u32, 2);
pub const NDIS_GFT_OFFLOAD_CAPS_INGRESS_EXACT_MATCH = @as(u32, 4);
pub const NDIS_GFT_OFFLOAD_CAPS_EGRESS_EXACT_MATCH = @as(u32, 8);
pub const NDIS_GFT_OFFLOAD_CAPS_EXT_VPORT_INGRESS_WILDCARD_MATCH = @as(u32, 16);
pub const NDIS_GFT_OFFLOAD_CAPS_EXT_VPORT_EGRESS_WILDCARD_MATCH = @as(u32, 32);
pub const NDIS_GFT_OFFLOAD_CAPS_EXT_VPORT_INGRESS_EXACT_MATCH = @as(u32, 64);
pub const NDIS_GFT_OFFLOAD_CAPS_EXT_VPORT_EGRESS_EXACT_MATCH = @as(u32, 128);
pub const NDIS_GFT_OFFLOAD_CAPS_POP = @as(u32, 1);
pub const NDIS_GFT_OFFLOAD_CAPS_PUSH = @as(u32, 2);
pub const NDIS_GFT_OFFLOAD_CAPS_MODIFY = @as(u32, 4);
pub const NDIS_GFT_OFFLOAD_CAPS_IGNORE_ACTION_SUPPORTED = @as(u32, 8);
pub const NDIS_GFT_OFFLOAD_CAPS_REDIRECT_TO_INGRESS_QUEUE_OF_VPORT = @as(u32, 16);
pub const NDIS_GFT_OFFLOAD_CAPS_REDIRECT_TO_EGRESS_QUEUE_OF_VPORT = @as(u32, 32);
pub const NDIS_GFT_OFFLOAD_CAPS_REDIRECT_TO_INGRESS_QUEUE_OF_VPORT_IF_TTL_IS_ONE = @as(u32, 64);
pub const NDIS_GFT_OFFLOAD_CAPS_REDIRECT_TO_EGRESS_QUEUE_OF_VPORT_IF_TTL_IS_ONE = @as(u32, 128);
pub const NDIS_GFT_OFFLOAD_CAPS_COPY_ALL = @as(u32, 256);
pub const NDIS_GFT_OFFLOAD_CAPS_COPY_FIRST = @as(u32, 512);
pub const NDIS_GFT_OFFLOAD_CAPS_COPY_WHEN_TCP_FLAG_SET = @as(u32, 1024);
pub const NDIS_GFT_OFFLOAD_CAPS_SAMPLE = @as(u32, 2048);
pub const NDIS_GFT_OFFLOAD_CAPS_META_ACTION_BEFORE_HEADER_TRANSPOSITION = @as(u32, 4096);
pub const NDIS_GFT_OFFLOAD_CAPS_META_ACTION_AFTER_HEADER_TRANSPOSITION = @as(u32, 8192);
pub const NDIS_GFT_OFFLOAD_CAPS_PER_VPORT_EXCEPTION_VPORT = @as(u32, 16384);
pub const NDIS_GFT_OFFLOAD_CAPS_DESIGNATED_EXCEPTION_VPORT = @as(u32, 32768);
pub const NDIS_GFT_OFFLOAD_CAPS_DSCP_MASK = @as(u32, 65536);
pub const NDIS_GFT_OFFLOAD_CAPS_8021P_PRIORITY_MASK = @as(u32, 131072);
pub const NDIS_GFT_OFFLOAD_CAPS_ALLOW = @as(u32, 262144);
pub const NDIS_GFT_OFFLOAD_CAPS_DROP = @as(u32, 524288);
pub const NDIS_GFT_OFFLOAD_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_GFT_VPORT_ENABLE = @as(u32, 1);
pub const NDIS_GFT_VPORT_PARSE_VXLAN = @as(u32, 2);
pub const NDIS_GFT_VPORT_PARSE_VXLAN_NOT_IN_SRC_PORT_RANGE = @as(u32, 4);
pub const NDIS_GFT_VPORT_ENABLE_STATE_CHANGED = @as(u32, 1048576);
pub const NDIS_GFT_VPORT_EXCEPTION_VPORT_CHANGED = @as(u32, 2097152);
pub const NDIS_GFT_VPORT_SAMPLING_RATE_CHANGED = @as(u32, 4194304);
pub const NDIS_GFT_VPORT_DSCP_MASK_CHANGED = @as(u32, 8388608);
pub const NDIS_GFT_VPORT_PRIORITY_MASK_CHANGED = @as(u32, 16777216);
pub const NDIS_GFT_VPORT_VXLAN_SETTINGS_CHANGED = @as(u32, 33554432);
pub const NDIS_GFT_VPORT_DSCP_FLAGS_CHANGED = @as(u32, 67108864);
pub const NDIS_GFT_VPORT_PARAMS_CHANGE_MASK = @as(u32, 4293918720);
pub const NDIS_GFT_VPORT_PARAMS_CUSTOM_PROVIDER_RESERVED = @as(u32, 1044480);
pub const NDIS_GFT_VPORT_MAX_DSCP_MASK_COUNTER_OBJECTS = @as(u32, 64);
pub const NDIS_GFT_VPORT_MAX_PRIORITY_MASK_COUNTER_OBJECTS = @as(u32, 8);
pub const NDIS_GFT_VPORT_DSCP_GUARD_ENABLE_RX = @as(u32, 1);
pub const NDIS_GFT_VPORT_DSCP_GUARD_ENABLE_TX = @as(u32, 2);
pub const NDIS_GFT_VPORT_DSCP_MASK_ENABLE_RX = @as(u32, 4);
pub const NDIS_GFT_VPORT_DSCP_MASK_ENABLE_TX = @as(u32, 8);
pub const NDIS_GFT_VPORT_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_QOS_DEFAULT_SQ_ID = @as(u32, 0);
pub const NDIS_QOS_SQ_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const NDIS_QOS_SQ_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const NDIS_QOS_SQ_TRANSMIT_CAP_ENABLED = @as(u32, 1);
pub const NDIS_QOS_SQ_TRANSMIT_RESERVATION_ENABLED = @as(u32, 2);
pub const NDIS_QOS_SQ_RECEIVE_CAP_ENABLED = @as(u32, 4);
pub const NDIS_QOS_SQ_PARAMETERS_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_QOS_SQ_ARRAY_REVISION_1 = @as(u32, 1);
pub const NDIS_QOS_OFFLOAD_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const NDIS_QOS_OFFLOAD_CAPABILITIES_REVISION_2 = @as(u32, 2);
pub const NDIS_QOS_OFFLOAD_CAPS_STANDARD_SQ = @as(u32, 1);
pub const NDIS_QOS_OFFLOAD_CAPS_GFT_SQ = @as(u32, 2);
pub const NDIS_QOS_SQ_STATS_REVISION_1 = @as(u32, 1);
pub const NDIS_TIMESTAMP_CAPABILITIES_REVISION_1 = @as(u32, 1);
pub const OID_TIMESTAMP_CAPABILITY = @as(u32, 10485761);
pub const OID_TIMESTAMP_CURRENT_CONFIG = @as(u32, 10485762);
pub const NDIS_HARDWARE_CROSSTIMESTAMP_REVISION_1 = @as(u32, 1);
pub const OID_TIMESTAMP_GET_CROSSTIMESTAMP = @as(u32, 10485763);
pub const NdisHashFunctionToeplitz = @as(u32, 1);
pub const NdisHashFunctionReserved1 = @as(u32, 2);
pub const NdisHashFunctionReserved2 = @as(u32, 4);
pub const NdisHashFunctionReserved3 = @as(u32, 8);
pub const NDIS_HASH_FUNCTION_MASK = @as(u32, 255);
pub const NDIS_HASH_TYPE_MASK = @as(u32, 16776960);
pub const NDIS_HASH_IPV4 = @as(u32, 256);
pub const NDIS_HASH_TCP_IPV4 = @as(u32, 512);
pub const NDIS_HASH_IPV6 = @as(u32, 1024);
pub const NDIS_HASH_IPV6_EX = @as(u32, 2048);
pub const NDIS_HASH_TCP_IPV6 = @as(u32, 4096);
pub const NDIS_HASH_TCP_IPV6_EX = @as(u32, 8192);
pub const NDIS_HASH_UDP_IPV4 = @as(u32, 16384);
pub const NDIS_HASH_UDP_IPV6 = @as(u32, 32768);
pub const NDIS_HASH_UDP_IPV6_EX = @as(u32, 65536);
pub const NDIS_MAXIMUM_PORTS = @as(u32, 16777216);
pub const NDIS_OBJECT_REVISION_1 = @as(u32, 1);
pub const NDIS_OFFLOAD_NOT_SUPPORTED = @as(u32, 0);
pub const NDIS_OFFLOAD_SUPPORTED = @as(u32, 1);
pub const NDIS_OFFLOAD_SET_NO_CHANGE = @as(u32, 0);
pub const NDIS_OFFLOAD_SET_ON = @as(u32, 1);
pub const NDIS_OFFLOAD_SET_OFF = @as(u32, 2);
pub const NDIS_ENCAPSULATION_NOT_SUPPORTED = @as(u32, 0);
pub const NDIS_ENCAPSULATION_NULL = @as(u32, 1);
pub const NDIS_ENCAPSULATION_IEEE_802_3 = @as(u32, 2);
pub const NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q = @as(u32, 4);
pub const NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB = @as(u32, 8);
pub const NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED = @as(u32, 16);
pub const NDIS_OBJECT_TYPE_OID_REQUEST = @as(u32, 150);
pub const NDIS_SUPPORT_NDIS686 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS685 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS684 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS683 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS682 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS681 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS680 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS670 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS660 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS651 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS650 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS640 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS630 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS620 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS61 = @as(u32, 1);
pub const NDIS_SUPPORT_NDIS6 = @as(u32, 1);
pub const GUID_NDIS_LAN_CLASS = Guid.initString("ad498944-762f-11d0-8dcb-00c04fc3358c");
pub const GUID_DEVINTERFACE_NET = Guid.initString("cac88484-7515-4c03-82e6-71a87abac361");
pub const UNSPECIFIED_NETWORK_GUID = Guid.initString("12ba5bde-143e-4c0d-b66d-2379bb141913");
pub const GUID_DEVINTERFACE_NETUIO = Guid.initString("08336f60-0679-4c6c-85d2-ae7ced65fff7");
pub const GUID_NDIS_ENUMERATE_ADAPTER = Guid.initString("981f2d7f-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_NOTIFY_ADAPTER_REMOVAL = Guid.initString("981f2d80-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_NOTIFY_ADAPTER_ARRIVAL = Guid.initString("981f2d81-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_ENUMERATE_VC = Guid.initString("981f2d82-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_NOTIFY_VC_REMOVAL = Guid.initString("981f2d79-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_NOTIFY_VC_ARRIVAL = Guid.initString("182f9e0c-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_NOTIFY_BIND = Guid.initString("5413531c-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_NOTIFY_UNBIND = Guid.initString("6e3ce1ec-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_WAKE_ON_MAGIC_PACKET_ONLY = Guid.initString("a14f1c97-8839-4f8a-9996-a28996ebbf1d");
pub const GUID_NDIS_NOTIFY_DEVICE_POWER_ON = Guid.initString("5f81cfd0-f046-4342-af61-895acedaefd9");
pub const GUID_NDIS_NOTIFY_DEVICE_POWER_OFF = Guid.initString("81bc8189-b026-46ab-b964-f182e342934e");
pub const GUID_NDIS_NOTIFY_FILTER_REMOVAL = Guid.initString("1f177cd9-5955-4721-9f6a-78ebdfaef889");
pub const GUID_NDIS_NOTIFY_FILTER_ARRIVAL = Guid.initString("0b6d3c89-5917-43ca-b578-d01a7967c41c");
pub const GUID_NDIS_NOTIFY_DEVICE_POWER_ON_EX = Guid.initString("2b440188-92ac-4f60-9b2d-20a30cbb6bbe");
pub const GUID_NDIS_NOTIFY_DEVICE_POWER_OFF_EX = Guid.initString("4159353c-5cd7-42ce-8fe4-a45a2380cc4f");
pub const GUID_NDIS_PM_ADMIN_CONFIG = Guid.initString("1528d111-708a-4ca4-9215-c05771161cda");
pub const GUID_NDIS_PM_ACTIVE_CAPABILITIES = Guid.initString("b2cf76e3-b3ae-4394-a01f-338c9870e939");
pub const GUID_NDIS_RSS_ENABLED = Guid.initString("9565cd55-3402-4e32-a5b6-2f143f2f2c30");
pub const GUID_NDIS_GEN_HARDWARE_STATUS = Guid.initString("5ec10354-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_MEDIA_SUPPORTED = Guid.initString("5ec10355-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_MEDIA_IN_USE = Guid.initString("5ec10356-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_MAXIMUM_LOOKAHEAD = Guid.initString("5ec10357-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_MAXIMUM_FRAME_SIZE = Guid.initString("5ec10358-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_LINK_SPEED = Guid.initString("5ec10359-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_TRANSMIT_BUFFER_SPACE = Guid.initString("5ec1035a-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_RECEIVE_BUFFER_SPACE = Guid.initString("5ec1035b-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_TRANSMIT_BLOCK_SIZE = Guid.initString("5ec1035c-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_RECEIVE_BLOCK_SIZE = Guid.initString("5ec1035d-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_VENDOR_ID = Guid.initString("5ec1035e-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_VENDOR_DESCRIPTION = Guid.initString("5ec1035f-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_CURRENT_PACKET_FILTER = Guid.initString("5ec10360-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_CURRENT_LOOKAHEAD = Guid.initString("5ec10361-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_DRIVER_VERSION = Guid.initString("5ec10362-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_MAXIMUM_TOTAL_SIZE = Guid.initString("5ec10363-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_MAC_OPTIONS = Guid.initString("5ec10365-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_MEDIA_CONNECT_STATUS = Guid.initString("5ec10366-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_MAXIMUM_SEND_PACKETS = Guid.initString("5ec10367-a61a-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_VENDOR_DRIVER_VERSION = Guid.initString("447956f9-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_VLAN_ID = Guid.initString("765dc702-c5e8-4b67-843b-3f5a4ff2648b");
pub const GUID_NDIS_GEN_PHYSICAL_MEDIUM = Guid.initString("418ca16d-3937-4208-940a-ec6196278085");
pub const GUID_NDIS_TCP_OFFLOAD_CURRENT_CONFIG = Guid.initString("68542fed-5c74-461e-8934-91c6f9c60960");
pub const GUID_NDIS_TCP_OFFLOAD_HARDWARE_CAPABILITIES = Guid.initString("cd5f1102-590f-4ada-ab65-5b31b1dc0172");
pub const GUID_NDIS_TCP_OFFLOAD_PARAMETERS = Guid.initString("8ead9a22-7f69-4bc6-949a-c8187b074e61");
pub const GUID_NDIS_TCP_CONNECTION_OFFLOAD_CURRENT_CONFIG = Guid.initString("2ee6aef1-0851-458b-bf0d-792343d1cde1");
pub const GUID_NDIS_TCP_CONNECTION_OFFLOAD_HARDWARE_CAPABILITIES = Guid.initString("8ce71f2c-d63a-4390-a487-18fa47262ceb");
pub const GUID_NDIS_RECEIVE_SCALE_CAPABILITIES = Guid.initString("26c28774-4252-48fe-a610-a58a398c0eb1");
pub const GUID_NDIS_GEN_LINK_STATE = Guid.initString("ba1f4c14-a945-4762-b916-0b5515b6f43a");
pub const GUID_NDIS_GEN_LINK_PARAMETERS = Guid.initString("8c7d3579-252b-4614-82c5-a650daa15049");
pub const GUID_NDIS_GEN_STATISTICS = Guid.initString("368c45b5-c129-43c1-939e-7edc2d7fe621");
pub const GUID_NDIS_GEN_PORT_STATE = Guid.initString("6fbf2a5f-8b8f-4920-8143-e6c460f52524");
pub const GUID_NDIS_GEN_ENUMERATE_PORTS = Guid.initString("f1d6abe8-15e4-4407-81b7-6b830c777cd9");
pub const GUID_NDIS_ENUMERATE_ADAPTERS_EX = Guid.initString("16716917-4306-4be4-9b5a-3809ae44b125");
pub const GUID_NDIS_GEN_PORT_AUTHENTICATION_PARAMETERS = Guid.initString("aab6ac31-86fb-48fb-8b48-63db235ace16");
pub const GUID_NDIS_GEN_INTERRUPT_MODERATION = Guid.initString("d9c8eea5-f16e-467c-84d5-6345a22ce213");
pub const GUID_NDIS_GEN_INTERRUPT_MODERATION_PARAMETERS = Guid.initString("d789adfa-9c56-433b-ad01-7574f3cedbe9");
pub const GUID_NDIS_GEN_PCI_DEVICE_CUSTOM_PROPERTIES = Guid.initString("aa39f5ab-e260-4d01-82b0-b737c880ea05");
pub const GUID_NDIS_GEN_PHYSICAL_MEDIUM_EX = Guid.initString("899e7782-035b-43f9-8bb6-2b58971612e5");
pub const GUID_NDIS_HD_SPLIT_CURRENT_CONFIG = Guid.initString("81d1303c-ab00-4e49-80b1-5e6e0bf9be53");
pub const GUID_NDIS_HD_SPLIT_PARAMETERS = Guid.initString("8c048bea-2913-4458-b68e-17f6c1e5c60e");
pub const GUID_NDIS_TCP_RSC_STATISTICS = Guid.initString("83104445-9b5d-4ee6-a2a5-2bd3fb3c36af");
pub const GUID_PM_HARDWARE_CAPABILITIES = Guid.initString("ece5360d-3291-4a6e-8044-00511fed27ee");
pub const GUID_PM_CURRENT_CAPABILITIES = Guid.initString("3abdbd14-d44a-4a3f-9a63-a0a42a51b131");
pub const GUID_PM_PARAMETERS = Guid.initString("560245d2-e251-409c-a280-311935be3b28");
pub const GUID_PM_ADD_WOL_PATTERN = Guid.initString("6fc83ba7-52bc-4faa-ac51-7d2ffe63ba90");
pub const GUID_PM_REMOVE_WOL_PATTERN = Guid.initString("a037a915-c6ca-4322-b3e3-ef754ec498dc");
pub const GUID_PM_WOL_PATTERN_LIST = Guid.initString("4022be37-7ee2-47be-a5a5-050fc79afc75");
pub const GUID_PM_ADD_PROTOCOL_OFFLOAD = Guid.initString("0c06c112-0d93-439b-9e6d-26be130c9784");
pub const GUID_PM_GET_PROTOCOL_OFFLOAD = Guid.initString("a6435cd9-149f-498e-951b-2d94bea3e3a3");
pub const GUID_PM_REMOVE_PROTOCOL_OFFLOAD = Guid.initString("decd7be2-a6b0-43ca-ae45-d000d20e5265");
pub const GUID_PM_PROTOCOL_OFFLOAD_LIST = Guid.initString("736ec5ab-ca8f-4043-bb58-da402a48d9cc");
pub const GUID_NDIS_RECEIVE_FILTER_HARDWARE_CAPABILITIES = Guid.initString("3f2c1419-83bc-11dd-94b8-001d09162bc3");
pub const GUID_NDIS_RECEIVE_FILTER_GLOBAL_PARAMETERS = Guid.initString("3f2c141a-83bc-11dd-94b8-001d09162bc3");
pub const GUID_NDIS_RECEIVE_FILTER_ENUM_QUEUES = Guid.initString("3f2c141b-83bc-11dd-94b8-001d09162bc3");
pub const GUID_NDIS_RECEIVE_FILTER_QUEUE_PARAMETERS = Guid.initString("3f2c141c-83bc-11dd-94b8-001d09162bc3");
pub const GUID_NDIS_RECEIVE_FILTER_ENUM_FILTERS = Guid.initString("3f2c141d-83bc-11dd-94b8-001d09162bc3");
pub const GUID_NDIS_RECEIVE_FILTER_PARAMETERS = Guid.initString("3f2c141e-83bc-11dd-94b8-001d09162bc3");
pub const GUID_RECEIVE_FILTER_CURRENT_CAPABILITIES = Guid.initString("4054e80f-2bc1-4ccc-b033-4abc0c4a1e8c");
pub const GUID_NIC_SWITCH_HARDWARE_CAPABILITIES = Guid.initString("37cab40c-d1e8-4301-8c1d-58465e0c4c0f");
pub const GUID_NIC_SWITCH_CURRENT_CAPABILITIES = Guid.initString("e76fdaf3-0be7-4d95-87e9-5aead4b590e9");
pub const GUID_NDIS_SWITCH_MICROSOFT_VENDOR_ID = Guid.initString("202547fe-1c9c-40b9-bba1-08ada1f98b3c");
pub const GUID_NDIS_SWITCH_PORT_PROPERTY_PROFILE_ID_DEFAULT_EXTERNAL_NIC = Guid.initString("0b347846-0a0c-470a-9b7a-0d965850698f");
pub const GUID_NDIS_GEN_XMIT_OK = Guid.initString("447956fa-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_RCV_OK = Guid.initString("447956fb-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_XMIT_ERROR = Guid.initString("447956fc-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_RCV_ERROR = Guid.initString("447956fd-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_RCV_NO_BUFFER = Guid.initString("447956fe-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_HARDWARE_STATUS = Guid.initString("791ad192-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_MEDIA_SUPPORTED = Guid.initString("791ad193-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_MEDIA_IN_USE = Guid.initString("791ad194-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_LINK_SPEED = Guid.initString("791ad195-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_VENDOR_ID = Guid.initString("791ad196-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_VENDOR_DESCRIPTION = Guid.initString("791ad197-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_DRIVER_VERSION = Guid.initString("791ad198-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_MAC_OPTIONS = Guid.initString("791ad19a-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_MEDIA_CONNECT_STATUS = Guid.initString("791ad19b-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_VENDOR_DRIVER_VERSION = Guid.initString("791ad19c-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_MINIMUM_LINK_SPEED = Guid.initString("791ad19d-e35c-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_XMIT_PDUS_OK = Guid.initString("0a214805-e35f-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_RCV_PDUS_OK = Guid.initString("0a214806-e35f-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_XMIT_PDUS_ERROR = Guid.initString("0a214807-e35f-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_RCV_PDUS_ERROR = Guid.initString("0a214808-e35f-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_GEN_CO_RCV_PDUS_NO_BUFFER = Guid.initString("0a214809-e35f-11d0-9692-00c04fc3358c");
pub const GUID_NDIS_802_3_PERMANENT_ADDRESS = Guid.initString("447956ff-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_3_CURRENT_ADDRESS = Guid.initString("44795700-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_3_MULTICAST_LIST = Guid.initString("44795701-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_3_MAXIMUM_LIST_SIZE = Guid.initString("44795702-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_3_MAC_OPTIONS = Guid.initString("44795703-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_3_RCV_ERROR_ALIGNMENT = Guid.initString("44795704-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_3_XMIT_ONE_COLLISION = Guid.initString("44795705-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_3_XMIT_MORE_COLLISIONS = Guid.initString("44795706-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_PERMANENT_ADDRESS = Guid.initString("44795707-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_CURRENT_ADDRESS = Guid.initString("44795708-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_CURRENT_FUNCTIONAL = Guid.initString("44795709-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_CURRENT_GROUP = Guid.initString("4479570a-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_LAST_OPEN_STATUS = Guid.initString("4479570b-a61b-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_CURRENT_RING_STATUS = Guid.initString("890a36ec-a61c-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_CURRENT_RING_STATE = Guid.initString("acf14032-a61c-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_LINE_ERRORS = Guid.initString("acf14033-a61c-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_5_LOST_FRAMES = Guid.initString("acf14034-a61c-11d0-8dd4-00c04fc3358c");
pub const GUID_NDIS_802_11_BSSID = Guid.initString("2504b6c2-1fa5-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_SSID = Guid.initString("7d2a90ea-2041-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_NETWORK_TYPES_SUPPORTED = Guid.initString("8531d6e6-2041-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_NETWORK_TYPE_IN_USE = Guid.initString("857e2326-2041-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_POWER_MODE = Guid.initString("85be837c-2041-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_TX_POWER_LEVEL = Guid.initString("11e6ba76-2053-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_RSSI = Guid.initString("1507db16-2053-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_RSSI_TRIGGER = Guid.initString("155689b8-2053-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_BSSID_LIST = Guid.initString("69526f9a-2062-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_INFRASTRUCTURE_MODE = Guid.initString("697d5a7e-2062-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_FRAGMENTATION_THRESHOLD = Guid.initString("69aaa7c4-2062-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_RTS_THRESHOLD = Guid.initString("0134d07e-2064-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_NUMBER_OF_ANTENNAS = Guid.initString("01779336-2064-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_RX_ANTENNA_SELECTED = Guid.initString("01ac07a2-2064-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_TX_ANTENNA_SELECTED = Guid.initString("01dbb74a-2064-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_SUPPORTED_RATES = Guid.initString("49db8722-2068-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_DESIRED_RATES = Guid.initString("452ee08e-2536-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_CONFIGURATION = Guid.initString("4a4df982-2068-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_STATISTICS = Guid.initString("42bb73b0-2129-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_ADD_WEP = Guid.initString("4307bff0-2129-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_REMOVE_WEP = Guid.initString("433c345c-2129-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_DISASSOCIATE = Guid.initString("43671f40-2129-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_AUTHENTICATION_MODE = Guid.initString("43920a24-2129-11d4-97eb-00c04f79c403");
pub const GUID_NDIS_802_11_PRIVACY_FILTER = Guid.initString("6733c4e9-4792-11d4-97f1-00c04f79c403");
pub const GUID_NDIS_802_11_BSSID_LIST_SCAN = Guid.initString("0d9e01e1-ba70-11d4-b675-002048570337");
pub const GUID_NDIS_802_11_WEP_STATUS = Guid.initString("b027a21f-3cfa-4125-800b-3f7a18fddcdc");
pub const GUID_NDIS_802_11_RELOAD_DEFAULTS = Guid.initString("748b14e8-32ee-4425-b91b-c9848c58b55a");
pub const GUID_NDIS_802_11_ADD_KEY = Guid.initString("ab8b5a62-1d51-49d8-ba5c-fa980be03a1d");
pub const GUID_NDIS_802_11_REMOVE_KEY = Guid.initString("73cb28e9-3188-42d5-b553-b21237e6088c");
pub const GUID_NDIS_802_11_ASSOCIATION_INFORMATION = Guid.initString("a08d4dd0-960e-40bd-8cf6-c538af98f2e3");
pub const GUID_NDIS_802_11_TEST = Guid.initString("4b9ca16a-6a60-4e9d-920c-6335953fa0b5");
pub const GUID_NDIS_802_11_MEDIA_STREAM_MODE = Guid.initString("0a56af66-d84b-49eb-a28d-5282cbb6d0cd");
pub const GUID_NDIS_STATUS_RESET_START = Guid.initString("981f2d76-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_STATUS_RESET_END = Guid.initString("981f2d77-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_STATUS_MEDIA_CONNECT = Guid.initString("981f2d7d-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_STATUS_MEDIA_DISCONNECT = Guid.initString("981f2d7e-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_STATUS_MEDIA_SPECIFIC_INDICATION = Guid.initString("981f2d84-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_STATUS_LINK_SPEED_CHANGE = Guid.initString("981f2d85-b1f3-11d0-8dd7-00c04fc3358c");
pub const GUID_NDIS_STATUS_PACKET_FILTER = Guid.initString("d47c5407-2e75-46dd-8146-1d7ed2d6ab1d");
pub const GUID_NDIS_STATUS_NETWORK_CHANGE = Guid.initString("ca8a56f9-ce81-40e6-a70f-a067a476e9e9");
pub const GUID_NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG = Guid.initString("45049fc6-54d8-40c8-9c3d-b011c4e715bc");
pub const GUID_NDIS_STATUS_TASK_OFFLOAD_HARDWARE_CAPABILITIES = Guid.initString("b6b8158b-217c-4b2a-be86-6a04beea65b8");
pub const GUID_NDIS_STATUS_TCP_CONNECTION_OFFLOAD_CURRENT_CONFIG = Guid.initString("f8edaeff-24e4-4ae6-a413-0b27f76b243d");
pub const GUID_NDIS_STATUS_TCP_CONNECTION_OFFLOAD_HARDWARE_CAPABILITIES = Guid.initString("391969b6-402c-43bf-8922-39eae0da1bb5");
pub const GUID_NDIS_STATUS_OPER_STATUS = Guid.initString("f917b663-845e-4d3d-b6d4-15eb27af81c5");
pub const GUID_NDIS_STATUS_LINK_STATE = Guid.initString("64c6f797-878c-4311-9246-65dba89c3a61");
pub const GUID_NDIS_STATUS_PORT_STATE = Guid.initString("1dac0dfe-43e5-44b7-b759-7bf46de32e81");
pub const GUID_NDIS_STATUS_EXTERNAL_CONNECTIVITY_CHANGE = Guid.initString("fd306974-c420-4433-b0fe-4cf6a613f59f");
pub const GUID_STATUS_MEDIA_SPECIFIC_INDICATION_EX = Guid.initString("aaacfca7-954a-4632-a16e-a8a63793a9e5");
pub const GUID_NDIS_STATUS_HD_SPLIT_CURRENT_CONFIG = Guid.initString("6c744b0e-ee9c-4205-90a2-015f6d65f403");
pub const GUID_NDIS_STATUS_PM_WOL_PATTERN_REJECTED = Guid.initString("f72cf68e-18d4-4d63-9a19-e69b13916b1a");
pub const GUID_NDIS_STATUS_PM_OFFLOAD_REJECTED = Guid.initString("add1d481-711e-4d1a-92ca-a62db9329712");
pub const GUID_NDIS_STATUS_PM_WAKE_REASON = Guid.initString("0933fd58-ca62-438f-83da-dfc1cccb8145");
pub const GUID_NDIS_STATUS_DOT11_SCAN_CONFIRM = Guid.initString("8500591e-a0c7-4efb-9342-b674b002cbe6");
pub const GUID_NDIS_STATUS_DOT11_MPDU_MAX_LENGTH_CHANGED = Guid.initString("1d6560ec-8e48-4a3e-9fd5-a01b698db6c5");
pub const GUID_NDIS_STATUS_DOT11_ASSOCIATION_START = Guid.initString("3927843b-6980-4b48-b15b-4de50977ac40");
pub const GUID_NDIS_STATUS_DOT11_ASSOCIATION_COMPLETION = Guid.initString("458bbea7-45a4-4ae2-b176-e51f96fc0568");
pub const GUID_NDIS_STATUS_DOT11_CONNECTION_START = Guid.initString("7b74299d-998f-4454-ad08-c5af28576d1b");
pub const GUID_NDIS_STATUS_DOT11_CONNECTION_COMPLETION = Guid.initString("96efd9c9-7f1b-4a89-bc04-3e9e271765f1");
pub const GUID_NDIS_STATUS_DOT11_ROAMING_START = Guid.initString("b2412d0d-26c8-4f4e-93df-f7b705a0b433");
pub const GUID_NDIS_STATUS_DOT11_ROAMING_COMPLETION = Guid.initString("dd9d47d1-282b-41e4-b924-66368817fcd3");
pub const GUID_NDIS_STATUS_DOT11_DISASSOCIATION = Guid.initString("3fbeb6fc-0fe2-43fd-b2ad-bd99b5f93e13");
pub const GUID_NDIS_STATUS_DOT11_TKIPMIC_FAILURE = Guid.initString("442c2ae4-9bc5-4b90-a889-455ef220f4ee");
pub const GUID_NDIS_STATUS_DOT11_PMKID_CANDIDATE_LIST = Guid.initString("26d8b8f6-db82-49eb-8bf3-4c130ef06950");
pub const GUID_NDIS_STATUS_DOT11_PHY_STATE_CHANGED = Guid.initString("deb45316-71b5-4736-bdef-0a9e9f4e62dc");
pub const GUID_NDIS_STATUS_DOT11_LINK_QUALITY = Guid.initString("a3285184-ea99-48ed-825e-a426b11c2754");
pub const NDK_ADAPTER_FLAG_IN_ORDER_DMA_SUPPORTED = @as(u32, 1);
pub const NDK_ADAPTER_FLAG_RDMA_READ_SINK_NOT_REQUIRED = @as(u32, 2);
pub const NDK_ADAPTER_FLAG_CQ_INTERRUPT_MODERATION_SUPPORTED = @as(u32, 4);
pub const NDK_ADAPTER_FLAG_MULTI_ENGINE_SUPPORTED = @as(u32, 8);
pub const NDK_ADAPTER_FLAG_RDMA_READ_LOCAL_INVALIDATE_SUPPORTED = @as(u32, 16);
pub const NDK_ADAPTER_FLAG_CQ_RESIZE_SUPPORTED = @as(u32, 256);
pub const NDK_ADAPTER_FLAG_LOOPBACK_CONNECTIONS_SUPPORTED = @as(u32, 65536);
pub const DOT11EXT_PSK_MAX_LENGTH = @as(u32, 64);
pub const WDIAG_IHV_WLAN_ID_FLAG_SECURITY_ENABLED = @as(u32, 1);
pub const MS_MAX_PROFILE_NAME_LENGTH = @as(u32, 256);
pub const MS_PROFILE_GROUP_POLICY = @as(u32, 1);
pub const MS_PROFILE_USER = @as(u32, 2);

//--------------------------------------------------------------------------------
// Section: Types (204)
//--------------------------------------------------------------------------------
pub const NDIS_REQUEST_TYPE = enum(i32) {
    QueryInformation = 0,
    SetInformation = 1,
    QueryStatistics = 2,
    Open = 3,
    Close = 4,
    Send = 5,
    TransferData = 6,
    Reset = 7,
    Generic1 = 8,
    Generic2 = 9,
    Generic3 = 10,
    Generic4 = 11,
};
pub const NdisRequestQueryInformation = NDIS_REQUEST_TYPE.QueryInformation;
pub const NdisRequestSetInformation = NDIS_REQUEST_TYPE.SetInformation;
pub const NdisRequestQueryStatistics = NDIS_REQUEST_TYPE.QueryStatistics;
pub const NdisRequestOpen = NDIS_REQUEST_TYPE.Open;
pub const NdisRequestClose = NDIS_REQUEST_TYPE.Close;
pub const NdisRequestSend = NDIS_REQUEST_TYPE.Send;
pub const NdisRequestTransferData = NDIS_REQUEST_TYPE.TransferData;
pub const NdisRequestReset = NDIS_REQUEST_TYPE.Reset;
pub const NdisRequestGeneric1 = NDIS_REQUEST_TYPE.Generic1;
pub const NdisRequestGeneric2 = NDIS_REQUEST_TYPE.Generic2;
pub const NdisRequestGeneric3 = NDIS_REQUEST_TYPE.Generic3;
pub const NdisRequestGeneric4 = NDIS_REQUEST_TYPE.Generic4;

pub const NDIS_STATISTICS_VALUE = extern struct {
    Oid: u32,
    DataLength: u32,
    Data: [1]u8,
};

pub const NDIS_STATISTICS_VALUE_EX = extern struct {
    Oid: u32,
    DataLength: u32,
    Length: u32,
    Data: [1]u8,
};

pub const NDIS_VAR_DATA_DESC = extern struct {
    Length: u16,
    MaximumLength: u16,
    Offset: usize,
};

pub const NDIS_OBJECT_HEADER = extern struct {
    Type: u8,
    Revision: u8,
    Size: u16,
};

pub const NDIS_STATISTICS_INFO = extern struct {
    Header: NDIS_OBJECT_HEADER,
    SupportedStatistics: u32,
    ifInDiscards: u64,
    ifInErrors: u64,
    ifHCInOctets: u64,
    ifHCInUcastPkts: u64,
    ifHCInMulticastPkts: u64,
    ifHCInBroadcastPkts: u64,
    ifHCOutOctets: u64,
    ifHCOutUcastPkts: u64,
    ifHCOutMulticastPkts: u64,
    ifHCOutBroadcastPkts: u64,
    ifOutErrors: u64,
    ifOutDiscards: u64,
    ifHCInUcastOctets: u64,
    ifHCInMulticastOctets: u64,
    ifHCInBroadcastOctets: u64,
    ifHCOutUcastOctets: u64,
    ifHCOutMulticastOctets: u64,
    ifHCOutBroadcastOctets: u64,
};

pub const NDIS_INTERRUPT_MODERATION = enum(i32) {
    Unknown = 0,
    NotSupported = 1,
    Enabled = 2,
    Disabled = 3,
};
pub const NdisInterruptModerationUnknown = NDIS_INTERRUPT_MODERATION.Unknown;
pub const NdisInterruptModerationNotSupported = NDIS_INTERRUPT_MODERATION.NotSupported;
pub const NdisInterruptModerationEnabled = NDIS_INTERRUPT_MODERATION.Enabled;
pub const NdisInterruptModerationDisabled = NDIS_INTERRUPT_MODERATION.Disabled;

pub const NDIS_INTERRUPT_MODERATION_PARAMETERS = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Flags: u32,
    InterruptModeration: NDIS_INTERRUPT_MODERATION,
};

pub const NDIS_TIMEOUT_DPC_REQUEST_CAPABILITIES = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Flags: u32,
    TimeoutArrayLength: u32,
    TimeoutArray: [1]u32,
};

pub const NDIS_PCI_DEVICE_CUSTOM_PROPERTIES = extern struct {
    Header: NDIS_OBJECT_HEADER,
    DeviceType: u32,
    CurrentSpeedAndMode: u32,
    CurrentPayloadSize: u32,
    MaxPayloadSize: u32,
    MaxReadRequestSize: u32,
    CurrentLinkSpeed: u32,
    CurrentLinkWidth: u32,
    MaxLinkSpeed: u32,
    MaxLinkWidth: u32,
    PciExpressVersion: u32,
    InterruptType: u32,
    MaxInterruptMessages: u32,
};

pub const NDIS_802_11_STATUS_TYPE = enum(i32) {
    _Authentication = 0,
    _MediaStreamMode = 1,
    _PMKID_CandidateList = 2,
    Max = 3,
};
pub const Ndis802_11StatusType_Authentication = NDIS_802_11_STATUS_TYPE._Authentication;
pub const Ndis802_11StatusType_MediaStreamMode = NDIS_802_11_STATUS_TYPE._MediaStreamMode;
pub const Ndis802_11StatusType_PMKID_CandidateList = NDIS_802_11_STATUS_TYPE._PMKID_CandidateList;
pub const Ndis802_11StatusTypeMax = NDIS_802_11_STATUS_TYPE.Max;

pub const NDIS_802_11_STATUS_INDICATION = extern struct {
    StatusType: NDIS_802_11_STATUS_TYPE,
};

pub const NDIS_802_11_AUTHENTICATION_REQUEST = extern struct {
    Length: u32,
    Bssid: [6]u8,
    Flags: u32,
};

pub const PMKID_CANDIDATE = extern struct {
    BSSID: [6]u8,
    Flags: u32,
};

pub const NDIS_802_11_PMKID_CANDIDATE_LIST = extern struct {
    Version: u32,
    NumCandidates: u32,
    CandidateList: [1]PMKID_CANDIDATE,
};

pub const NDIS_802_11_NETWORK_TYPE = enum(i32) {
    FH = 0,
    DS = 1,
    OFDM5 = 2,
    OFDM24 = 3,
    Automode = 4,
    NetworkTypeMax = 5,
};
pub const Ndis802_11FH = NDIS_802_11_NETWORK_TYPE.FH;
pub const Ndis802_11DS = NDIS_802_11_NETWORK_TYPE.DS;
pub const Ndis802_11OFDM5 = NDIS_802_11_NETWORK_TYPE.OFDM5;
pub const Ndis802_11OFDM24 = NDIS_802_11_NETWORK_TYPE.OFDM24;
pub const Ndis802_11Automode = NDIS_802_11_NETWORK_TYPE.Automode;
pub const Ndis802_11NetworkTypeMax = NDIS_802_11_NETWORK_TYPE.NetworkTypeMax;

pub const NDIS_802_11_NETWORK_TYPE_LIST = extern struct {
    NumberOfItems: u32,
    NetworkType: [1]NDIS_802_11_NETWORK_TYPE,
};

pub const NDIS_802_11_POWER_MODE = enum(i32) {
    CAM = 0,
    MAX_PSP = 1,
    Fast_PSP = 2,
    Max = 3,
};
pub const Ndis802_11PowerModeCAM = NDIS_802_11_POWER_MODE.CAM;
pub const Ndis802_11PowerModeMAX_PSP = NDIS_802_11_POWER_MODE.MAX_PSP;
pub const Ndis802_11PowerModeFast_PSP = NDIS_802_11_POWER_MODE.Fast_PSP;
pub const Ndis802_11PowerModeMax = NDIS_802_11_POWER_MODE.Max;

pub const NDIS_802_11_CONFIGURATION_FH = extern struct {
    Length: u32,
    HopPattern: u32,
    HopSet: u32,
    DwellTime: u32,
};

pub const NDIS_802_11_CONFIGURATION = extern struct {
    Length: u32,
    BeaconPeriod: u32,
    ATIMWindow: u32,
    DSConfig: u32,
    FHConfig: NDIS_802_11_CONFIGURATION_FH,
};

pub const NDIS_802_11_STATISTICS = extern struct {
    Length: u32,
    TransmittedFragmentCount: LARGE_INTEGER,
    MulticastTransmittedFrameCount: LARGE_INTEGER,
    FailedCount: LARGE_INTEGER,
    RetryCount: LARGE_INTEGER,
    MultipleRetryCount: LARGE_INTEGER,
    RTSSuccessCount: LARGE_INTEGER,
    RTSFailureCount: LARGE_INTEGER,
    ACKFailureCount: LARGE_INTEGER,
    FrameDuplicateCount: LARGE_INTEGER,
    ReceivedFragmentCount: LARGE_INTEGER,
    MulticastReceivedFrameCount: LARGE_INTEGER,
    FCSErrorCount: LARGE_INTEGER,
    TKIPLocalMICFailures: LARGE_INTEGER,
    TKIPICVErrorCount: LARGE_INTEGER,
    TKIPCounterMeasuresInvoked: LARGE_INTEGER,
    TKIPReplays: LARGE_INTEGER,
    CCMPFormatErrors: LARGE_INTEGER,
    CCMPReplays: LARGE_INTEGER,
    CCMPDecryptErrors: LARGE_INTEGER,
    FourWayHandshakeFailures: LARGE_INTEGER,
    WEPUndecryptableCount: LARGE_INTEGER,
    WEPICVErrorCount: LARGE_INTEGER,
    DecryptSuccessCount: LARGE_INTEGER,
    DecryptFailureCount: LARGE_INTEGER,
};

pub const NDIS_802_11_KEY = extern struct {
    Length: u32,
    KeyIndex: u32,
    KeyLength: u32,
    BSSID: [6]u8,
    KeyRSC: u64,
    KeyMaterial: [1]u8,
};

pub const NDIS_802_11_REMOVE_KEY = extern struct {
    Length: u32,
    KeyIndex: u32,
    BSSID: [6]u8,
};

pub const NDIS_802_11_WEP = extern struct {
    Length: u32,
    KeyIndex: u32,
    KeyLength: u32,
    KeyMaterial: [1]u8,
};

pub const NDIS_802_11_NETWORK_INFRASTRUCTURE = enum(i32) {
    IBSS = 0,
    Infrastructure = 1,
    AutoUnknown = 2,
    InfrastructureMax = 3,
};
pub const Ndis802_11IBSS = NDIS_802_11_NETWORK_INFRASTRUCTURE.IBSS;
pub const Ndis802_11Infrastructure = NDIS_802_11_NETWORK_INFRASTRUCTURE.Infrastructure;
pub const Ndis802_11AutoUnknown = NDIS_802_11_NETWORK_INFRASTRUCTURE.AutoUnknown;
pub const Ndis802_11InfrastructureMax = NDIS_802_11_NETWORK_INFRASTRUCTURE.InfrastructureMax;

pub const NDIS_802_11_AUTHENTICATION_MODE = enum(i32) {
    Open = 0,
    Shared = 1,
    AutoSwitch = 2,
    WPA = 3,
    WPAPSK = 4,
    WPANone = 5,
    WPA2 = 6,
    WPA2PSK = 7,
    WPA3 = 8,
    // WPA3Ent192 = 8, this enum value conflicts with WPA3
    WPA3SAE = 9,
    WPA3Ent = 10,
    Max = 11,
};
pub const Ndis802_11AuthModeOpen = NDIS_802_11_AUTHENTICATION_MODE.Open;
pub const Ndis802_11AuthModeShared = NDIS_802_11_AUTHENTICATION_MODE.Shared;
pub const Ndis802_11AuthModeAutoSwitch = NDIS_802_11_AUTHENTICATION_MODE.AutoSwitch;
pub const Ndis802_11AuthModeWPA = NDIS_802_11_AUTHENTICATION_MODE.WPA;
pub const Ndis802_11AuthModeWPAPSK = NDIS_802_11_AUTHENTICATION_MODE.WPAPSK;
pub const Ndis802_11AuthModeWPANone = NDIS_802_11_AUTHENTICATION_MODE.WPANone;
pub const Ndis802_11AuthModeWPA2 = NDIS_802_11_AUTHENTICATION_MODE.WPA2;
pub const Ndis802_11AuthModeWPA2PSK = NDIS_802_11_AUTHENTICATION_MODE.WPA2PSK;
pub const Ndis802_11AuthModeWPA3 = NDIS_802_11_AUTHENTICATION_MODE.WPA3;
pub const Ndis802_11AuthModeWPA3Ent192 = NDIS_802_11_AUTHENTICATION_MODE.WPA3;
pub const Ndis802_11AuthModeWPA3SAE = NDIS_802_11_AUTHENTICATION_MODE.WPA3SAE;
pub const Ndis802_11AuthModeWPA3Ent = NDIS_802_11_AUTHENTICATION_MODE.WPA3Ent;
pub const Ndis802_11AuthModeMax = NDIS_802_11_AUTHENTICATION_MODE.Max;

pub const NDIS_802_11_SSID = extern struct {
    SsidLength: u32,
    Ssid: [32]u8,
};

pub const NDIS_WLAN_BSSID = extern struct {
    Length: u32,
    MacAddress: [6]u8,
    Reserved: [2]u8,
    Ssid: NDIS_802_11_SSID,
    Privacy: u32,
    Rssi: i32,
    NetworkTypeInUse: NDIS_802_11_NETWORK_TYPE,
    Configuration: NDIS_802_11_CONFIGURATION,
    InfrastructureMode: NDIS_802_11_NETWORK_INFRASTRUCTURE,
    SupportedRates: [8]u8,
};

pub const NDIS_802_11_BSSID_LIST = extern struct {
    NumberOfItems: u32,
    Bssid: [1]NDIS_WLAN_BSSID,
};

pub const NDIS_WLAN_BSSID_EX = extern struct {
    Length: u32,
    MacAddress: [6]u8,
    Reserved: [2]u8,
    Ssid: NDIS_802_11_SSID,
    Privacy: u32,
    Rssi: i32,
    NetworkTypeInUse: NDIS_802_11_NETWORK_TYPE,
    Configuration: NDIS_802_11_CONFIGURATION,
    InfrastructureMode: NDIS_802_11_NETWORK_INFRASTRUCTURE,
    SupportedRates: [16]u8,
    IELength: u32,
    IEs: [1]u8,
};

pub const NDIS_802_11_BSSID_LIST_EX = extern struct {
    NumberOfItems: u32,
    Bssid: [1]NDIS_WLAN_BSSID_EX,
};

pub const NDIS_802_11_FIXED_IEs = extern struct {
    Timestamp: [8]u8,
    BeaconInterval: u16,
    Capabilities: u16,
};

pub const NDIS_802_11_VARIABLE_IEs = extern struct {
    ElementID: u8,
    Length: u8,
    data: [1]u8,
};

pub const NDIS_802_11_PRIVACY_FILTER = enum(i32) {
    AcceptAll = 0,
    @"8021xWEP" = 1,
};
pub const Ndis802_11PrivFilterAcceptAll = NDIS_802_11_PRIVACY_FILTER.AcceptAll;
pub const Ndis802_11PrivFilter8021xWEP = NDIS_802_11_PRIVACY_FILTER.@"8021xWEP";

pub const NDIS_802_11_WEP_STATUS = enum(i32) {
    WEPEnabled = 0,
    // Encryption1Enabled = 0, this enum value conflicts with WEPEnabled
    WEPDisabled = 1,
    // EncryptionDisabled = 1, this enum value conflicts with WEPDisabled
    WEPKeyAbsent = 2,
    // Encryption1KeyAbsent = 2, this enum value conflicts with WEPKeyAbsent
    WEPNotSupported = 3,
    // EncryptionNotSupported = 3, this enum value conflicts with WEPNotSupported
    Encryption2Enabled = 4,
    Encryption2KeyAbsent = 5,
    Encryption3Enabled = 6,
    Encryption3KeyAbsent = 7,
};
pub const Ndis802_11WEPEnabled = NDIS_802_11_WEP_STATUS.WEPEnabled;
pub const Ndis802_11Encryption1Enabled = NDIS_802_11_WEP_STATUS.WEPEnabled;
pub const Ndis802_11WEPDisabled = NDIS_802_11_WEP_STATUS.WEPDisabled;
pub const Ndis802_11EncryptionDisabled = NDIS_802_11_WEP_STATUS.WEPDisabled;
pub const Ndis802_11WEPKeyAbsent = NDIS_802_11_WEP_STATUS.WEPKeyAbsent;
pub const Ndis802_11Encryption1KeyAbsent = NDIS_802_11_WEP_STATUS.WEPKeyAbsent;
pub const Ndis802_11WEPNotSupported = NDIS_802_11_WEP_STATUS.WEPNotSupported;
pub const Ndis802_11EncryptionNotSupported = NDIS_802_11_WEP_STATUS.WEPNotSupported;
pub const Ndis802_11Encryption2Enabled = NDIS_802_11_WEP_STATUS.Encryption2Enabled;
pub const Ndis802_11Encryption2KeyAbsent = NDIS_802_11_WEP_STATUS.Encryption2KeyAbsent;
pub const Ndis802_11Encryption3Enabled = NDIS_802_11_WEP_STATUS.Encryption3Enabled;
pub const Ndis802_11Encryption3KeyAbsent = NDIS_802_11_WEP_STATUS.Encryption3KeyAbsent;

pub const NDIS_802_11_RELOAD_DEFAULTS = enum(i32) {
    s = 0,
};
pub const Ndis802_11ReloadWEPKeys = NDIS_802_11_RELOAD_DEFAULTS.s;

pub const NDIS_802_11_AI_REQFI = extern struct {
    Capabilities: u16,
    ListenInterval: u16,
    CurrentAPAddress: [6]u8,
};

pub const NDIS_802_11_AI_RESFI = extern struct {
    Capabilities: u16,
    StatusCode: u16,
    AssociationId: u16,
};

pub const NDIS_802_11_ASSOCIATION_INFORMATION = extern struct {
    Length: u32,
    AvailableRequestFixedIEs: u16,
    RequestFixedIEs: NDIS_802_11_AI_REQFI,
    RequestIELength: u32,
    OffsetRequestIEs: u32,
    AvailableResponseFixedIEs: u16,
    ResponseFixedIEs: NDIS_802_11_AI_RESFI,
    ResponseIELength: u32,
    OffsetResponseIEs: u32,
};

pub const NDIS_802_11_AUTHENTICATION_EVENT = extern struct {
    Status: NDIS_802_11_STATUS_INDICATION,
    Request: [1]NDIS_802_11_AUTHENTICATION_REQUEST,
};

pub const NDIS_802_11_TEST = extern struct {
    Length: u32,
    Type: u32,
    Anonymous: extern union {
        AuthenticationEvent: NDIS_802_11_AUTHENTICATION_EVENT,
        RssiTrigger: i32,
    },
};

pub const NDIS_802_11_MEDIA_STREAM_MODE = enum(i32) {
    ff = 0,
    n = 1,
};
pub const Ndis802_11MediaStreamOff = NDIS_802_11_MEDIA_STREAM_MODE.ff;
pub const Ndis802_11MediaStreamOn = NDIS_802_11_MEDIA_STREAM_MODE.n;

pub const BSSID_INFO = extern struct {
    BSSID: [6]u8,
    PMKID: [16]u8,
};

pub const NDIS_802_11_PMKID = extern struct {
    Length: u32,
    BSSIDInfoCount: u32,
    BSSIDInfo: [1]BSSID_INFO,
};

pub const NDIS_802_11_AUTHENTICATION_ENCRYPTION = extern struct {
    AuthModeSupported: NDIS_802_11_AUTHENTICATION_MODE,
    EncryptStatusSupported: NDIS_802_11_WEP_STATUS,
};

pub const NDIS_802_11_CAPABILITY = extern struct {
    Length: u32,
    Version: u32,
    NoOfPMKIDs: u32,
    NoOfAuthEncryptPairsSupported: u32,
    AuthenticationEncryptionSupported: [1]NDIS_802_11_AUTHENTICATION_ENCRYPTION,
};

pub const NDIS_802_11_NON_BCAST_SSID_LIST = extern struct {
    NumberOfItems: u32,
    Non_Bcast_Ssid: [1]NDIS_802_11_SSID,
};

pub const NDIS_802_11_RADIO_STATUS = enum(i32) {
    On = 0,
    HardwareOff = 1,
    SoftwareOff = 2,
    HardwareSoftwareOff = 3,
    Max = 4,
};
pub const Ndis802_11RadioStatusOn = NDIS_802_11_RADIO_STATUS.On;
pub const Ndis802_11RadioStatusHardwareOff = NDIS_802_11_RADIO_STATUS.HardwareOff;
pub const Ndis802_11RadioStatusSoftwareOff = NDIS_802_11_RADIO_STATUS.SoftwareOff;
pub const Ndis802_11RadioStatusHardwareSoftwareOff = NDIS_802_11_RADIO_STATUS.HardwareSoftwareOff;
pub const Ndis802_11RadioStatusMax = NDIS_802_11_RADIO_STATUS.Max;

pub const NDIS_CO_DEVICE_PROFILE = extern struct {
    DeviceDescription: NDIS_VAR_DATA_DESC,
    DevSpecificInfo: NDIS_VAR_DATA_DESC,
    ulTAPISupplementaryPassThru: u32,
    ulAddressModes: u32,
    ulNumAddresses: u32,
    ulBearerModes: u32,
    ulMaxTxRate: u32,
    ulMinTxRate: u32,
    ulMaxRxRate: u32,
    ulMinRxRate: u32,
    ulMediaModes: u32,
    ulGenerateToneModes: u32,
    ulGenerateToneMaxNumFreq: u32,
    ulGenerateDigitModes: u32,
    ulMonitorToneMaxNumFreq: u32,
    ulMonitorToneMaxNumEntries: u32,
    ulMonitorDigitModes: u32,
    ulGatherDigitsMinTimeout: u32,
    ulGatherDigitsMaxTimeout: u32,
    ulDevCapFlags: u32,
    ulMaxNumActiveCalls: u32,
    ulAnswerMode: u32,
    ulUUIAcceptSize: u32,
    ulUUIAnswerSize: u32,
    ulUUIMakeCallSize: u32,
    ulUUIDropSize: u32,
    ulUUISendUserUserInfoSize: u32,
    ulUUICallInfoSize: u32,
};

pub const OFFLOAD_OPERATION_E = enum(i32) {
    AUTHENTICATE = 1,
    ENCRYPT = 2,
};
pub const AUTHENTICATE = OFFLOAD_OPERATION_E.AUTHENTICATE;
pub const ENCRYPT = OFFLOAD_OPERATION_E.ENCRYPT;

pub const OFFLOAD_ALGO_INFO = extern struct {
    algoIdentifier: u32,
    algoKeylen: u32,
    algoRounds: u32,
};

pub const OFFLOAD_CONF_ALGO = enum(i32) {
    NONE = 0,
    DES = 1,
    RESERVED = 2,
    @"3_DES" = 3,
    MAX = 4,
};
pub const OFFLOAD_IPSEC_CONF_NONE = OFFLOAD_CONF_ALGO.NONE;
pub const OFFLOAD_IPSEC_CONF_DES = OFFLOAD_CONF_ALGO.DES;
pub const OFFLOAD_IPSEC_CONF_RESERVED = OFFLOAD_CONF_ALGO.RESERVED;
pub const OFFLOAD_IPSEC_CONF_3_DES = OFFLOAD_CONF_ALGO.@"3_DES";
pub const OFFLOAD_IPSEC_CONF_MAX = OFFLOAD_CONF_ALGO.MAX;

pub const OFFLOAD_INTEGRITY_ALGO = enum(i32) {
    NONE = 0,
    MD5 = 1,
    SHA = 2,
    MAX = 3,
};
pub const OFFLOAD_IPSEC_INTEGRITY_NONE = OFFLOAD_INTEGRITY_ALGO.NONE;
pub const OFFLOAD_IPSEC_INTEGRITY_MD5 = OFFLOAD_INTEGRITY_ALGO.MD5;
pub const OFFLOAD_IPSEC_INTEGRITY_SHA = OFFLOAD_INTEGRITY_ALGO.SHA;
pub const OFFLOAD_IPSEC_INTEGRITY_MAX = OFFLOAD_INTEGRITY_ALGO.MAX;

pub const OFFLOAD_SECURITY_ASSOCIATION = extern struct {
    Operation: OFFLOAD_OPERATION_E,
    SPI: u32,
    IntegrityAlgo: OFFLOAD_ALGO_INFO,
    ConfAlgo: OFFLOAD_ALGO_INFO,
    Reserved: OFFLOAD_ALGO_INFO,
};

pub const OFFLOAD_IPSEC_ADD_SA = extern struct {
    SrcAddr: u32,
    SrcMask: u32,
    DestAddr: u32,
    DestMask: u32,
    Protocol: u32,
    SrcPort: u16,
    DestPort: u16,
    SrcTunnelAddr: u32,
    DestTunnelAddr: u32,
    Flags: u16,
    NumSAs: i16,
    SecAssoc: [3]OFFLOAD_SECURITY_ASSOCIATION,
    OffloadHandle: ?HANDLE,
    KeyLen: u32,
    KeyMat: [1]u8,
};

pub const OFFLOAD_IPSEC_DELETE_SA = extern struct {
    OffloadHandle: ?HANDLE,
};

pub const UDP_ENCAP_TYPE = enum(i32) {
    IKE = 0,
    OTHER = 1,
};
pub const OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_IKE = UDP_ENCAP_TYPE.IKE;
pub const OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_OTHER = UDP_ENCAP_TYPE.OTHER;

pub const OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_ENTRY = extern struct {
    UdpEncapType: UDP_ENCAP_TYPE,
    DstEncapPort: u16,
};

pub const OFFLOAD_IPSEC_ADD_UDPESP_SA = extern struct {
    SrcAddr: u32,
    SrcMask: u32,
    DstAddr: u32,
    DstMask: u32,
    Protocol: u32,
    SrcPort: u16,
    DstPort: u16,
    SrcTunnelAddr: u32,
    DstTunnelAddr: u32,
    Flags: u16,
    NumSAs: i16,
    SecAssoc: [3]OFFLOAD_SECURITY_ASSOCIATION,
    OffloadHandle: ?HANDLE,
    EncapTypeEntry: OFFLOAD_IPSEC_UDPESP_ENCAPTYPE_ENTRY,
    EncapTypeEntryOffldHandle: ?HANDLE,
    KeyLen: u32,
    KeyMat: [1]u8,
};

pub const OFFLOAD_IPSEC_DELETE_UDPESP_SA = extern struct {
    OffloadHandle: ?HANDLE,
    EncapTypeEntryOffldHandle: ?HANDLE,
};

pub const NDIS_MEDIUM = enum(i32) {
    @"802_3" = 0,
    @"802_5" = 1,
    Fddi = 2,
    Wan = 3,
    LocalTalk = 4,
    Dix = 5,
    ArcnetRaw = 6,
    Arcnet878_2 = 7,
    Atm = 8,
    WirelessWan = 9,
    Irda = 10,
    Bpc = 11,
    CoWan = 12,
    @"1394" = 13,
    InfiniBand = 14,
    Tunnel = 15,
    Native802_11 = 16,
    Loopback = 17,
    WiMAX = 18,
    IP = 19,
    Max = 20,
};
pub const NdisMedium802_3 = NDIS_MEDIUM.@"802_3";
pub const NdisMedium802_5 = NDIS_MEDIUM.@"802_5";
pub const NdisMediumFddi = NDIS_MEDIUM.Fddi;
pub const NdisMediumWan = NDIS_MEDIUM.Wan;
pub const NdisMediumLocalTalk = NDIS_MEDIUM.LocalTalk;
pub const NdisMediumDix = NDIS_MEDIUM.Dix;
pub const NdisMediumArcnetRaw = NDIS_MEDIUM.ArcnetRaw;
pub const NdisMediumArcnet878_2 = NDIS_MEDIUM.Arcnet878_2;
pub const NdisMediumAtm = NDIS_MEDIUM.Atm;
pub const NdisMediumWirelessWan = NDIS_MEDIUM.WirelessWan;
pub const NdisMediumIrda = NDIS_MEDIUM.Irda;
pub const NdisMediumBpc = NDIS_MEDIUM.Bpc;
pub const NdisMediumCoWan = NDIS_MEDIUM.CoWan;
pub const NdisMedium1394 = NDIS_MEDIUM.@"1394";
pub const NdisMediumInfiniBand = NDIS_MEDIUM.InfiniBand;
pub const NdisMediumTunnel = NDIS_MEDIUM.Tunnel;
pub const NdisMediumNative802_11 = NDIS_MEDIUM.Native802_11;
pub const NdisMediumLoopback = NDIS_MEDIUM.Loopback;
pub const NdisMediumWiMAX = NDIS_MEDIUM.WiMAX;
pub const NdisMediumIP = NDIS_MEDIUM.IP;
pub const NdisMediumMax = NDIS_MEDIUM.Max;

pub const NDIS_PHYSICAL_MEDIUM = enum(i32) {
    Unspecified = 0,
    WirelessLan = 1,
    CableModem = 2,
    PhoneLine = 3,
    PowerLine = 4,
    DSL = 5,
    FibreChannel = 6,
    @"1394" = 7,
    WirelessWan = 8,
    Native802_11 = 9,
    Bluetooth = 10,
    Infiniband = 11,
    WiMax = 12,
    UWB = 13,
    @"802_3" = 14,
    @"802_5" = 15,
    Irda = 16,
    WiredWAN = 17,
    WiredCoWan = 18,
    Other = 19,
    Native802_15_4 = 20,
    Max = 21,
};
pub const NdisPhysicalMediumUnspecified = NDIS_PHYSICAL_MEDIUM.Unspecified;
pub const NdisPhysicalMediumWirelessLan = NDIS_PHYSICAL_MEDIUM.WirelessLan;
pub const NdisPhysicalMediumCableModem = NDIS_PHYSICAL_MEDIUM.CableModem;
pub const NdisPhysicalMediumPhoneLine = NDIS_PHYSICAL_MEDIUM.PhoneLine;
pub const NdisPhysicalMediumPowerLine = NDIS_PHYSICAL_MEDIUM.PowerLine;
pub const NdisPhysicalMediumDSL = NDIS_PHYSICAL_MEDIUM.DSL;
pub const NdisPhysicalMediumFibreChannel = NDIS_PHYSICAL_MEDIUM.FibreChannel;
pub const NdisPhysicalMedium1394 = NDIS_PHYSICAL_MEDIUM.@"1394";
pub const NdisPhysicalMediumWirelessWan = NDIS_PHYSICAL_MEDIUM.WirelessWan;
pub const NdisPhysicalMediumNative802_11 = NDIS_PHYSICAL_MEDIUM.Native802_11;
pub const NdisPhysicalMediumBluetooth = NDIS_PHYSICAL_MEDIUM.Bluetooth;
pub const NdisPhysicalMediumInfiniband = NDIS_PHYSICAL_MEDIUM.Infiniband;
pub const NdisPhysicalMediumWiMax = NDIS_PHYSICAL_MEDIUM.WiMax;
pub const NdisPhysicalMediumUWB = NDIS_PHYSICAL_MEDIUM.UWB;
pub const NdisPhysicalMedium802_3 = NDIS_PHYSICAL_MEDIUM.@"802_3";
pub const NdisPhysicalMedium802_5 = NDIS_PHYSICAL_MEDIUM.@"802_5";
pub const NdisPhysicalMediumIrda = NDIS_PHYSICAL_MEDIUM.Irda;
pub const NdisPhysicalMediumWiredWAN = NDIS_PHYSICAL_MEDIUM.WiredWAN;
pub const NdisPhysicalMediumWiredCoWan = NDIS_PHYSICAL_MEDIUM.WiredCoWan;
pub const NdisPhysicalMediumOther = NDIS_PHYSICAL_MEDIUM.Other;
pub const NdisPhysicalMediumNative802_15_4 = NDIS_PHYSICAL_MEDIUM.Native802_15_4;
pub const NdisPhysicalMediumMax = NDIS_PHYSICAL_MEDIUM.Max;

pub const TRANSPORT_HEADER_OFFSET = extern struct {
    ProtocolType: u16,
    HeaderOffset: u16,
};

pub const NETWORK_ADDRESS = extern struct {
    AddressLength: u16,
    AddressType: u16,
    Address: [1]u8,
};

pub const NETWORK_ADDRESS_LIST = extern struct {
    AddressCount: i32,
    AddressType: u16,
    Address: [1]NETWORK_ADDRESS,
};

pub const NETWORK_ADDRESS_IP = extern struct {
    sin_port: u16,
    IN_ADDR: u32,
    sin_zero: [8]u8,
};

pub const NETWORK_ADDRESS_IP6 = extern struct {
    sin6_port: u16,
    sin6_flowinfo: u32,
    sin6_addr: [8]u16,
    sin6_scope_id: u32,
};

pub const NETWORK_ADDRESS_IPX = extern struct {
    NetworkAddress: u32,
    NodeAddress: [6]u8,
    Socket: u16,
};

pub const NDIS_HARDWARE_STATUS = enum(i32) {
    Ready = 0,
    Initializing = 1,
    Reset = 2,
    Closing = 3,
    NotReady = 4,
};
pub const NdisHardwareStatusReady = NDIS_HARDWARE_STATUS.Ready;
pub const NdisHardwareStatusInitializing = NDIS_HARDWARE_STATUS.Initializing;
pub const NdisHardwareStatusReset = NDIS_HARDWARE_STATUS.Reset;
pub const NdisHardwareStatusClosing = NDIS_HARDWARE_STATUS.Closing;
pub const NdisHardwareStatusNotReady = NDIS_HARDWARE_STATUS.NotReady;

pub const GEN_GET_TIME_CAPS = extern struct {
    Flags: u32,
    ClockPrecision: u32,
};

pub const GEN_GET_NETCARD_TIME = extern struct {
    ReadTime: u64,
};

pub const NDIS_PM_PACKET_PATTERN = extern struct {
    Priority: u32,
    Reserved: u32,
    MaskSize: u32,
    PatternOffset: u32,
    PatternSize: u32,
    PatternFlags: u32,
};

pub const NDIS_DEVICE_POWER_STATE = enum(i32) {
    Unspecified = 0,
    D0 = 1,
    D1 = 2,
    D2 = 3,
    D3 = 4,
    Maximum = 5,
};
pub const NdisDeviceStateUnspecified = NDIS_DEVICE_POWER_STATE.Unspecified;
pub const NdisDeviceStateD0 = NDIS_DEVICE_POWER_STATE.D0;
pub const NdisDeviceStateD1 = NDIS_DEVICE_POWER_STATE.D1;
pub const NdisDeviceStateD2 = NDIS_DEVICE_POWER_STATE.D2;
pub const NdisDeviceStateD3 = NDIS_DEVICE_POWER_STATE.D3;
pub const NdisDeviceStateMaximum = NDIS_DEVICE_POWER_STATE.Maximum;

pub const NDIS_PM_WAKE_UP_CAPABILITIES = extern struct {
    MinMagicPacketWakeUp: NDIS_DEVICE_POWER_STATE,
    MinPatternWakeUp: NDIS_DEVICE_POWER_STATE,
    MinLinkChangeWakeUp: NDIS_DEVICE_POWER_STATE,
};

pub const NDIS_PNP_CAPABILITIES = extern struct {
    Flags: u32,
    WakeUpCapabilities: NDIS_PM_WAKE_UP_CAPABILITIES,
};

pub const NDIS_FDDI_ATTACHMENT_TYPE = enum(i32) {
    Isolated = 1,
    LocalA = 2,
    LocalB = 3,
    LocalAB = 4,
    LocalS = 5,
    WrapA = 6,
    WrapB = 7,
    WrapAB = 8,
    WrapS = 9,
    CWrapA = 10,
    CWrapB = 11,
    CWrapS = 12,
    Through = 13,
};
pub const NdisFddiTypeIsolated = NDIS_FDDI_ATTACHMENT_TYPE.Isolated;
pub const NdisFddiTypeLocalA = NDIS_FDDI_ATTACHMENT_TYPE.LocalA;
pub const NdisFddiTypeLocalB = NDIS_FDDI_ATTACHMENT_TYPE.LocalB;
pub const NdisFddiTypeLocalAB = NDIS_FDDI_ATTACHMENT_TYPE.LocalAB;
pub const NdisFddiTypeLocalS = NDIS_FDDI_ATTACHMENT_TYPE.LocalS;
pub const NdisFddiTypeWrapA = NDIS_FDDI_ATTACHMENT_TYPE.WrapA;
pub const NdisFddiTypeWrapB = NDIS_FDDI_ATTACHMENT_TYPE.WrapB;
pub const NdisFddiTypeWrapAB = NDIS_FDDI_ATTACHMENT_TYPE.WrapAB;
pub const NdisFddiTypeWrapS = NDIS_FDDI_ATTACHMENT_TYPE.WrapS;
pub const NdisFddiTypeCWrapA = NDIS_FDDI_ATTACHMENT_TYPE.CWrapA;
pub const NdisFddiTypeCWrapB = NDIS_FDDI_ATTACHMENT_TYPE.CWrapB;
pub const NdisFddiTypeCWrapS = NDIS_FDDI_ATTACHMENT_TYPE.CWrapS;
pub const NdisFddiTypeThrough = NDIS_FDDI_ATTACHMENT_TYPE.Through;

pub const NDIS_FDDI_RING_MGT_STATE = enum(i32) {
    Isolated = 1,
    NonOperational = 2,
    Operational = 3,
    Detect = 4,
    NonOperationalDup = 5,
    OperationalDup = 6,
    Directed = 7,
    Trace = 8,
};
pub const NdisFddiRingIsolated = NDIS_FDDI_RING_MGT_STATE.Isolated;
pub const NdisFddiRingNonOperational = NDIS_FDDI_RING_MGT_STATE.NonOperational;
pub const NdisFddiRingOperational = NDIS_FDDI_RING_MGT_STATE.Operational;
pub const NdisFddiRingDetect = NDIS_FDDI_RING_MGT_STATE.Detect;
pub const NdisFddiRingNonOperationalDup = NDIS_FDDI_RING_MGT_STATE.NonOperationalDup;
pub const NdisFddiRingOperationalDup = NDIS_FDDI_RING_MGT_STATE.OperationalDup;
pub const NdisFddiRingDirected = NDIS_FDDI_RING_MGT_STATE.Directed;
pub const NdisFddiRingTrace = NDIS_FDDI_RING_MGT_STATE.Trace;

pub const NDIS_FDDI_LCONNECTION_STATE = enum(i32) {
    Off = 1,
    Break = 2,
    Trace = 3,
    Connect = 4,
    Next = 5,
    Signal = 6,
    Join = 7,
    Verify = 8,
    Active = 9,
    Maintenance = 10,
};
pub const NdisFddiStateOff = NDIS_FDDI_LCONNECTION_STATE.Off;
pub const NdisFddiStateBreak = NDIS_FDDI_LCONNECTION_STATE.Break;
pub const NdisFddiStateTrace = NDIS_FDDI_LCONNECTION_STATE.Trace;
pub const NdisFddiStateConnect = NDIS_FDDI_LCONNECTION_STATE.Connect;
pub const NdisFddiStateNext = NDIS_FDDI_LCONNECTION_STATE.Next;
pub const NdisFddiStateSignal = NDIS_FDDI_LCONNECTION_STATE.Signal;
pub const NdisFddiStateJoin = NDIS_FDDI_LCONNECTION_STATE.Join;
pub const NdisFddiStateVerify = NDIS_FDDI_LCONNECTION_STATE.Verify;
pub const NdisFddiStateActive = NDIS_FDDI_LCONNECTION_STATE.Active;
pub const NdisFddiStateMaintenance = NDIS_FDDI_LCONNECTION_STATE.Maintenance;

pub const NDIS_WAN_MEDIUM_SUBTYPE = enum(i32) {
    Hub = 0,
    X_25 = 1,
    Isdn = 2,
    Serial = 3,
    FrameRelay = 4,
    Atm = 5,
    Sonet = 6,
    SW56K = 7,
    PPTP = 8,
    L2TP = 9,
    Irda = 10,
    Parallel = 11,
    Pppoe = 12,
    SSTP = 13,
    AgileVPN = 14,
    Gre = 15,
    SubTypeMax = 16,
};
pub const NdisWanMediumHub = NDIS_WAN_MEDIUM_SUBTYPE.Hub;
pub const NdisWanMediumX_25 = NDIS_WAN_MEDIUM_SUBTYPE.X_25;
pub const NdisWanMediumIsdn = NDIS_WAN_MEDIUM_SUBTYPE.Isdn;
pub const NdisWanMediumSerial = NDIS_WAN_MEDIUM_SUBTYPE.Serial;
pub const NdisWanMediumFrameRelay = NDIS_WAN_MEDIUM_SUBTYPE.FrameRelay;
pub const NdisWanMediumAtm = NDIS_WAN_MEDIUM_SUBTYPE.Atm;
pub const NdisWanMediumSonet = NDIS_WAN_MEDIUM_SUBTYPE.Sonet;
pub const NdisWanMediumSW56K = NDIS_WAN_MEDIUM_SUBTYPE.SW56K;
pub const NdisWanMediumPPTP = NDIS_WAN_MEDIUM_SUBTYPE.PPTP;
pub const NdisWanMediumL2TP = NDIS_WAN_MEDIUM_SUBTYPE.L2TP;
pub const NdisWanMediumIrda = NDIS_WAN_MEDIUM_SUBTYPE.Irda;
pub const NdisWanMediumParallel = NDIS_WAN_MEDIUM_SUBTYPE.Parallel;
pub const NdisWanMediumPppoe = NDIS_WAN_MEDIUM_SUBTYPE.Pppoe;
pub const NdisWanMediumSSTP = NDIS_WAN_MEDIUM_SUBTYPE.SSTP;
pub const NdisWanMediumAgileVPN = NDIS_WAN_MEDIUM_SUBTYPE.AgileVPN;
pub const NdisWanMediumGre = NDIS_WAN_MEDIUM_SUBTYPE.Gre;
pub const NdisWanMediumSubTypeMax = NDIS_WAN_MEDIUM_SUBTYPE.SubTypeMax;

pub const NDIS_WAN_HEADER_FORMAT = enum(i32) {
    Native = 0,
    Ethernet = 1,
};
pub const NdisWanHeaderNative = NDIS_WAN_HEADER_FORMAT.Native;
pub const NdisWanHeaderEthernet = NDIS_WAN_HEADER_FORMAT.Ethernet;

pub const NDIS_WAN_QUALITY = enum(i32) {
    Raw = 0,
    ErrorControl = 1,
    Reliable = 2,
};
pub const NdisWanRaw = NDIS_WAN_QUALITY.Raw;
pub const NdisWanErrorControl = NDIS_WAN_QUALITY.ErrorControl;
pub const NdisWanReliable = NDIS_WAN_QUALITY.Reliable;

pub const NDIS_WAN_PROTOCOL_CAPS = extern struct {
    Flags: u32,
    Reserved: u32,
};

pub const NDIS_802_5_RING_STATE = enum(i32) {
    Opened = 1,
    Closed = 2,
    Opening = 3,
    Closing = 4,
    OpenFailure = 5,
    RingFailure = 6,
};
pub const NdisRingStateOpened = NDIS_802_5_RING_STATE.Opened;
pub const NdisRingStateClosed = NDIS_802_5_RING_STATE.Closed;
pub const NdisRingStateOpening = NDIS_802_5_RING_STATE.Opening;
pub const NdisRingStateClosing = NDIS_802_5_RING_STATE.Closing;
pub const NdisRingStateOpenFailure = NDIS_802_5_RING_STATE.OpenFailure;
pub const NdisRingStateRingFailure = NDIS_802_5_RING_STATE.RingFailure;

pub const NDIS_MEDIA_STATE = enum(i32) {
    Connected = 0,
    Disconnected = 1,
};
pub const NdisMediaStateConnected = NDIS_MEDIA_STATE.Connected;
pub const NdisMediaStateDisconnected = NDIS_MEDIA_STATE.Disconnected;

pub const NDIS_CO_LINK_SPEED = extern struct {
    Outbound: u32,
    Inbound: u32,
};

pub const NDIS_LINK_SPEED = extern struct {
    XmitLinkSpeed: u64,
    RcvLinkSpeed: u64,
};

pub const NDIS_GUID = extern struct {
    Guid: Guid,
    Anonymous: extern union {
        Oid: u32,
        Status: i32,
    },
    Size: u32,
    Flags: u32,
};

pub const NDIS_IRDA_PACKET_INFO = extern struct {
    ExtraBOFs: u32,
    MinTurnAroundTime: u32,
};

pub const NDIS_SUPPORTED_PAUSE_FUNCTIONS = enum(i32) {
    Unsupported = 0,
    SendOnly = 1,
    ReceiveOnly = 2,
    SendAndReceive = 3,
    Unknown = 4,
};
pub const NdisPauseFunctionsUnsupported = NDIS_SUPPORTED_PAUSE_FUNCTIONS.Unsupported;
pub const NdisPauseFunctionsSendOnly = NDIS_SUPPORTED_PAUSE_FUNCTIONS.SendOnly;
pub const NdisPauseFunctionsReceiveOnly = NDIS_SUPPORTED_PAUSE_FUNCTIONS.ReceiveOnly;
pub const NdisPauseFunctionsSendAndReceive = NDIS_SUPPORTED_PAUSE_FUNCTIONS.SendAndReceive;
pub const NdisPauseFunctionsUnknown = NDIS_SUPPORTED_PAUSE_FUNCTIONS.Unknown;

pub const NDIS_LINK_STATE = extern struct {
    Header: NDIS_OBJECT_HEADER,
    MediaConnectState: NET_IF_MEDIA_CONNECT_STATE,
    MediaDuplexState: NET_IF_MEDIA_DUPLEX_STATE,
    XmitLinkSpeed: u64,
    RcvLinkSpeed: u64,
    PauseFunctions: NDIS_SUPPORTED_PAUSE_FUNCTIONS,
    AutoNegotiationFlags: u32,
};

pub const NDIS_LINK_PARAMETERS = extern struct {
    Header: NDIS_OBJECT_HEADER,
    MediaDuplexState: NET_IF_MEDIA_DUPLEX_STATE,
    XmitLinkSpeed: u64,
    RcvLinkSpeed: u64,
    PauseFunctions: NDIS_SUPPORTED_PAUSE_FUNCTIONS,
    AutoNegotiationFlags: u32,
};

pub const NDIS_OPER_STATE = extern struct {
    Header: NDIS_OBJECT_HEADER,
    OperationalStatus: NET_IF_OPER_STATUS,
    OperationalStatusFlags: u32,
};

pub const NDIS_IP_OPER_STATUS = extern struct {
    AddressFamily: u32,
    OperationalStatus: NET_IF_OPER_STATUS,
    OperationalStatusFlags: u32,
};

pub const NDIS_IP_OPER_STATUS_INFO = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Flags: u32,
    NumberofAddressFamiliesReturned: u32,
    IpOperationalStatus: [32]NDIS_IP_OPER_STATUS,
};

pub const NDIS_IP_OPER_STATE = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Flags: u32,
    IpOperationalStatus: NDIS_IP_OPER_STATUS,
};

pub const NDIS_OFFLOAD_PARAMETERS = extern struct {
    Header: NDIS_OBJECT_HEADER,
    IPv4Checksum: u8,
    TCPIPv4Checksum: u8,
    UDPIPv4Checksum: u8,
    TCPIPv6Checksum: u8,
    UDPIPv6Checksum: u8,
    LsoV1: u8,
    IPsecV1: u8,
    LsoV2IPv4: u8,
    LsoV2IPv6: u8,
    TcpConnectionIPv4: u8,
    TcpConnectionIPv6: u8,
    Flags: u32,
};

pub const NDIS_TCP_LARGE_SEND_OFFLOAD_V1 = extern struct {
    IPv4: extern struct {
        Encapsulation: u32,
        MaxOffLoadSize: u32,
        MinSegmentCount: u32,
        _bitfield: u32,
    },
};

pub const NDIS_TCP_IP_CHECKSUM_OFFLOAD = extern struct {
    IPv4Transmit: extern struct {
        Encapsulation: u32,
        _bitfield: u32,
    },
    IPv4Receive: extern struct {
        Encapsulation: u32,
        _bitfield: u32,
    },
    IPv6Transmit: extern struct {
        Encapsulation: u32,
        _bitfield: u32,
    },
    IPv6Receive: extern struct {
        Encapsulation: u32,
        _bitfield: u32,
    },
};

pub const NDIS_IPSEC_OFFLOAD_V1 = extern struct {
    Supported: extern struct {
        Encapsulation: u32,
        AhEspCombined: u32,
        TransportTunnelCombined: u32,
        IPv4Options: u32,
        Flags: u32,
    },
    IPv4AH: extern struct {
        _bitfield: u32,
    },
    IPv4ESP: extern struct {
        _bitfield: u32,
    },
};

pub const NDIS_TCP_LARGE_SEND_OFFLOAD_V2 = extern struct {
    IPv4: extern struct {
        Encapsulation: u32,
        MaxOffLoadSize: u32,
        MinSegmentCount: u32,
    },
    IPv6: extern struct {
        Encapsulation: u32,
        MaxOffLoadSize: u32,
        MinSegmentCount: u32,
        _bitfield: u32,
    },
};

pub const NDIS_OFFLOAD = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Checksum: NDIS_TCP_IP_CHECKSUM_OFFLOAD,
    LsoV1: NDIS_TCP_LARGE_SEND_OFFLOAD_V1,
    IPsecV1: NDIS_IPSEC_OFFLOAD_V1,
    LsoV2: NDIS_TCP_LARGE_SEND_OFFLOAD_V2,
    Flags: u32,
};

pub const NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V1 = extern struct {
    IPv4: extern struct {
        Encapsulation: u32,
        MaxOffLoadSize: u32,
        MinSegmentCount: u32,
        TcpOptions: u32,
        IpOptions: u32,
    },
};

pub const NDIS_WMI_TCP_IP_CHECKSUM_OFFLOAD = extern struct {
    IPv4Transmit: extern struct {
        Encapsulation: u32,
        IpOptionsSupported: u32,
        TcpOptionsSupported: u32,
        TcpChecksum: u32,
        UdpChecksum: u32,
        IpChecksum: u32,
    },
    IPv4Receive: extern struct {
        Encapsulation: u32,
        IpOptionsSupported: u32,
        TcpOptionsSupported: u32,
        TcpChecksum: u32,
        UdpChecksum: u32,
        IpChecksum: u32,
    },
    IPv6Transmit: extern struct {
        Encapsulation: u32,
        IpExtensionHeadersSupported: u32,
        TcpOptionsSupported: u32,
        TcpChecksum: u32,
        UdpChecksum: u32,
    },
    IPv6Receive: extern struct {
        Encapsulation: u32,
        IpExtensionHeadersSupported: u32,
        TcpOptionsSupported: u32,
        TcpChecksum: u32,
        UdpChecksum: u32,
    },
};

pub const NDIS_WMI_IPSEC_OFFLOAD_V1 = extern struct {
    Supported: extern struct {
        Encapsulation: u32,
        AhEspCombined: u32,
        TransportTunnelCombined: u32,
        IPv4Options: u32,
        Flags: u32,
    },
    IPv4AH: extern struct {
        Md5: u32,
        Sha_1: u32,
        Transport: u32,
        Tunnel: u32,
        Send: u32,
        Receive: u32,
    },
    IPv4ESP: extern struct {
        Des: u32,
        Reserved: u32,
        TripleDes: u32,
        NullEsp: u32,
        Transport: u32,
        Tunnel: u32,
        Send: u32,
        Receive: u32,
    },
};

pub const NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V2 = extern struct {
    IPv4: extern struct {
        Encapsulation: u32,
        MaxOffLoadSize: u32,
        MinSegmentCount: u32,
    },
    IPv6: extern struct {
        Encapsulation: u32,
        MaxOffLoadSize: u32,
        MinSegmentCount: u32,
        IpExtensionHeadersSupported: u32,
        TcpOptionsSupported: u32,
    },
};

pub const NDIS_WMI_OFFLOAD = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Checksum: NDIS_WMI_TCP_IP_CHECKSUM_OFFLOAD,
    LsoV1: NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V1,
    IPsecV1: NDIS_WMI_IPSEC_OFFLOAD_V1,
    LsoV2: NDIS_WMI_TCP_LARGE_SEND_OFFLOAD_V2,
    Flags: u32,
};

pub const NDIS_TCP_CONNECTION_OFFLOAD = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Encapsulation: u32,
    _bitfield: u32,
    TcpConnectionOffloadCapacity: u32,
    Flags: u32,
};

pub const NDIS_WMI_TCP_CONNECTION_OFFLOAD = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Encapsulation: u32,
    SupportIPv4: u32,
    SupportIPv6: u32,
    SupportIPv6ExtensionHeaders: u32,
    SupportSack: u32,
    TcpConnectionOffloadCapacity: u32,
    Flags: u32,
};

pub const NDIS_PORT_TYPE = enum(i32) {
    Undefined = 0,
    Bridge = 1,
    RasConnection = 2,
    @"8021xSupplicant" = 3,
    Max = 4,
};
pub const NdisPortTypeUndefined = NDIS_PORT_TYPE.Undefined;
pub const NdisPortTypeBridge = NDIS_PORT_TYPE.Bridge;
pub const NdisPortTypeRasConnection = NDIS_PORT_TYPE.RasConnection;
pub const NdisPortType8021xSupplicant = NDIS_PORT_TYPE.@"8021xSupplicant";
pub const NdisPortTypeMax = NDIS_PORT_TYPE.Max;

pub const NDIS_PORT_AUTHORIZATION_STATE = enum(i32) {
    AuthorizationUnknown = 0,
    Authorized = 1,
    Unauthorized = 2,
    Reauthorizing = 3,
};
pub const NdisPortAuthorizationUnknown = NDIS_PORT_AUTHORIZATION_STATE.AuthorizationUnknown;
pub const NdisPortAuthorized = NDIS_PORT_AUTHORIZATION_STATE.Authorized;
pub const NdisPortUnauthorized = NDIS_PORT_AUTHORIZATION_STATE.Unauthorized;
pub const NdisPortReauthorizing = NDIS_PORT_AUTHORIZATION_STATE.Reauthorizing;

pub const NDIS_PORT_CONTROL_STATE = enum(i32) {
    Unknown = 0,
    Controlled = 1,
    Uncontrolled = 2,
};
pub const NdisPortControlStateUnknown = NDIS_PORT_CONTROL_STATE.Unknown;
pub const NdisPortControlStateControlled = NDIS_PORT_CONTROL_STATE.Controlled;
pub const NdisPortControlStateUncontrolled = NDIS_PORT_CONTROL_STATE.Uncontrolled;

pub const NDIS_PORT_AUTHENTICATION_PARAMETERS = extern struct {
    Header: NDIS_OBJECT_HEADER,
    SendControlState: NDIS_PORT_CONTROL_STATE,
    RcvControlState: NDIS_PORT_CONTROL_STATE,
    SendAuthorizationState: NDIS_PORT_AUTHORIZATION_STATE,
    RcvAuthorizationState: NDIS_PORT_AUTHORIZATION_STATE,
};

pub const NDIS_NETWORK_CHANGE_TYPE = enum(i32) {
    PossibleNetworkChange = 1,
    DefinitelyNetworkChange = 2,
    NetworkChangeFromMediaConnect = 3,
    NetworkChangeMax = 4,
};
pub const NdisPossibleNetworkChange = NDIS_NETWORK_CHANGE_TYPE.PossibleNetworkChange;
pub const NdisDefinitelyNetworkChange = NDIS_NETWORK_CHANGE_TYPE.DefinitelyNetworkChange;
pub const NdisNetworkChangeFromMediaConnect = NDIS_NETWORK_CHANGE_TYPE.NetworkChangeFromMediaConnect;
pub const NdisNetworkChangeMax = NDIS_NETWORK_CHANGE_TYPE.NetworkChangeMax;

pub const NDIS_WMI_METHOD_HEADER = extern struct {
    Header: NDIS_OBJECT_HEADER,
    PortNumber: u32,
    NetLuid: NET_LUID_LH,
    RequestId: u64,
    Timeout: u32,
    Padding: [4]u8,
};

pub const NDIS_WMI_SET_HEADER = extern struct {
    Header: NDIS_OBJECT_HEADER,
    PortNumber: u32,
    NetLuid: NET_LUID_LH,
    RequestId: u64,
    Timeout: u32,
    Padding: [4]u8,
};

pub const NDIS_WMI_EVENT_HEADER = extern struct {
    Header: NDIS_OBJECT_HEADER,
    IfIndex: u32,
    NetLuid: NET_LUID_LH,
    RequestId: u64,
    PortNumber: u32,
    DeviceNameLength: u32,
    DeviceNameOffset: u32,
    Padding: [4]u8,
};

pub const NDIS_WMI_ENUM_ADAPTER = extern struct {
    Header: NDIS_OBJECT_HEADER,
    IfIndex: u32,
    NetLuid: NET_LUID_LH,
    DeviceNameLength: u16,
    DeviceName: [1]CHAR,
};

pub const NDIS_WMI_OUTPUT_INFO = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Flags: u32,
    SupportedRevision: u8,
    DataOffset: u32,
};

pub const NDIS_RECEIVE_SCALE_CAPABILITIES = extern struct {
    Header: NDIS_OBJECT_HEADER,
    CapabilitiesFlags: u32,
    NumberOfInterruptMessages: u32,
    NumberOfReceiveQueues: u32,
};

pub const NDIS_RECEIVE_SCALE_PARAMETERS = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Flags: u16,
    BaseCpuNumber: u16,
    HashInformation: u32,
    IndirectionTableSize: u16,
    IndirectionTableOffset: u32,
    HashSecretKeySize: u16,
    HashSecretKeyOffset: u32,
};

pub const NDIS_RECEIVE_HASH_PARAMETERS = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Flags: u32,
    HashInformation: u32,
    HashSecretKeySize: u16,
    HashSecretKeyOffset: u32,
};

pub const NDIS_PROCESSOR_VENDOR = enum(i32) {
    Unknown = 0,
    GenuinIntel = 1,
    // GenuineIntel = 1, this enum value conflicts with GenuinIntel
    AuthenticAMD = 2,
};
pub const NdisProcessorVendorUnknown = NDIS_PROCESSOR_VENDOR.Unknown;
pub const NdisProcessorVendorGenuinIntel = NDIS_PROCESSOR_VENDOR.GenuinIntel;
pub const NdisProcessorVendorGenuineIntel = NDIS_PROCESSOR_VENDOR.GenuinIntel;
pub const NdisProcessorVendorAuthenticAMD = NDIS_PROCESSOR_VENDOR.AuthenticAMD;

pub const NDIS_PORT_STATE = extern struct {
    Header: NDIS_OBJECT_HEADER,
    MediaConnectState: NET_IF_MEDIA_CONNECT_STATE,
    XmitLinkSpeed: u64,
    RcvLinkSpeed: u64,
    Direction: NET_IF_DIRECTION_TYPE,
    SendControlState: NDIS_PORT_CONTROL_STATE,
    RcvControlState: NDIS_PORT_CONTROL_STATE,
    SendAuthorizationState: NDIS_PORT_AUTHORIZATION_STATE,
    RcvAuthorizationState: NDIS_PORT_AUTHORIZATION_STATE,
    Flags: u32,
};

pub const NDIS_PORT_CHARACTERISTICS = extern struct {
    Header: NDIS_OBJECT_HEADER,
    PortNumber: u32,
    Flags: u32,
    Type: NDIS_PORT_TYPE,
    MediaConnectState: NET_IF_MEDIA_CONNECT_STATE,
    XmitLinkSpeed: u64,
    RcvLinkSpeed: u64,
    Direction: NET_IF_DIRECTION_TYPE,
    SendControlState: NDIS_PORT_CONTROL_STATE,
    RcvControlState: NDIS_PORT_CONTROL_STATE,
    SendAuthorizationState: NDIS_PORT_AUTHORIZATION_STATE,
    RcvAuthorizationState: NDIS_PORT_AUTHORIZATION_STATE,
};

pub const NDIS_PORT = extern struct {
    Next: ?*NDIS_PORT,
    NdisReserved: ?*anyopaque,
    MiniportReserved: ?*anyopaque,
    ProtocolReserved: ?*anyopaque,
    PortCharacteristics: NDIS_PORT_CHARACTERISTICS,
};

pub const NDIS_PORT_ARRAY = extern struct {
    Header: NDIS_OBJECT_HEADER,
    NumberOfPorts: u32,
    OffsetFirstPort: u32,
    ElementSize: u32,
    Ports: [1]NDIS_PORT_CHARACTERISTICS,
};

pub const NDIS_TIMESTAMP_CAPABILITY_FLAGS = extern struct {
    PtpV2OverUdpIPv4EventMsgReceiveHw: BOOLEAN,
    PtpV2OverUdpIPv4AllMsgReceiveHw: BOOLEAN,
    PtpV2OverUdpIPv4EventMsgTransmitHw: BOOLEAN,
    PtpV2OverUdpIPv4AllMsgTransmitHw: BOOLEAN,
    PtpV2OverUdpIPv6EventMsgReceiveHw: BOOLEAN,
    PtpV2OverUdpIPv6AllMsgReceiveHw: BOOLEAN,
    PtpV2OverUdpIPv6EventMsgTransmitHw: BOOLEAN,
    PtpV2OverUdpIPv6AllMsgTransmitHw: BOOLEAN,
    AllReceiveHw: BOOLEAN,
    AllTransmitHw: BOOLEAN,
    TaggedTransmitHw: BOOLEAN,
    AllReceiveSw: BOOLEAN,
    AllTransmitSw: BOOLEAN,
    TaggedTransmitSw: BOOLEAN,
};

pub const NDIS_TIMESTAMP_CAPABILITIES = extern struct {
    Header: NDIS_OBJECT_HEADER,
    HardwareClockFrequencyHz: u64,
    CrossTimestamp: BOOLEAN,
    Reserved1: u64,
    Reserved2: u64,
    TimestampFlags: NDIS_TIMESTAMP_CAPABILITY_FLAGS,
};

pub const NDIS_HARDWARE_CROSSTIMESTAMP = extern struct {
    Header: NDIS_OBJECT_HEADER,
    Flags: u32,
    SystemTimestamp1: u64,
    HardwareClockTimestamp: u64,
    SystemTimestamp2: u64,
};

pub const NDK_VERSION = extern struct {
    Major: u16,
    Minor: u16,
};

pub const NDK_RDMA_TECHNOLOGY = enum(i32) {
    Undefined = 0,
    iWarp = 1,
    InfiniBand = 2,
    RoCE = 3,
    RoCEv2 = 4,
    MaxTechnology = 5,
};
pub const NdkUndefined = NDK_RDMA_TECHNOLOGY.Undefined;
pub const NdkiWarp = NDK_RDMA_TECHNOLOGY.iWarp;
pub const NdkInfiniBand = NDK_RDMA_TECHNOLOGY.InfiniBand;
pub const NdkRoCE = NDK_RDMA_TECHNOLOGY.RoCE;
pub const NdkRoCEv2 = NDK_RDMA_TECHNOLOGY.RoCEv2;
pub const NdkMaxTechnology = NDK_RDMA_TECHNOLOGY.MaxTechnology;

pub const NDK_ADAPTER_INFO = extern struct {
    Version: NDK_VERSION,
    VendorId: u32,
    DeviceId: u32,
    MaxRegistrationSize: usize,
    MaxWindowSize: usize,
    FRMRPageCount: u32,
    MaxInitiatorRequestSge: u32,
    MaxReceiveRequestSge: u32,
    MaxReadRequestSge: u32,
    MaxTransferLength: u32,
    MaxInlineDataSize: u32,
    MaxInboundReadLimit: u32,
    MaxOutboundReadLimit: u32,
    MaxReceiveQueueDepth: u32,
    MaxInitiatorQueueDepth: u32,
    MaxSrqDepth: u32,
    MaxCqDepth: u32,
    LargeRequestThreshold: u32,
    MaxCallerData: u32,
    MaxCalleeData: u32,
    AdapterFlags: u32,
    RdmaTechnology: NDK_RDMA_TECHNOLOGY,
};

pub const DOT11_ADAPTER = extern struct {
    gAdapterId: Guid,
    pszDescription: ?PWSTR,
    Dot11CurrentOpMode: DOT11_CURRENT_OPERATION_MODE,
};

pub const DOT11_BSS_LIST = extern struct {
    uNumOfBytes: u32,
    pucBuffer: ?*u8,
};

pub const DOT11_PORT_STATE = extern struct {
    PeerMacAddress: [6]u8,
    uSessionId: u32,
    bPortControlled: BOOL,
    bPortAuthorized: BOOL,
};

pub const DOT11_SECURITY_PACKET_HEADER = extern struct {
    PeerMac: [6]u8 align(1),
    usEtherType: u16 align(1),
    Data: [1]u8 align(1),
};

pub const DOT11_MSSECURITY_SETTINGS = extern struct {
    dot11AuthAlgorithm: DOT11_AUTH_ALGORITHM,
    dot11CipherAlgorithm: DOT11_CIPHER_ALGORITHM,
    fOneXEnabled: BOOL,
    eapMethodType: EAP_METHOD_TYPE,
    dwEapConnectionDataLen: u32,
    pEapConnectionData: ?*u8,
};

pub const DOT11EXT_IHV_SSID_LIST = extern struct {
    ulCount: u32,
    SSIDs: [1]DOT11_SSID,
};

pub const DOT11EXT_IHV_PROFILE_PARAMS = extern struct {
    pSsidList: ?*DOT11EXT_IHV_SSID_LIST,
    BssType: DOT11_BSS_TYPE,
    pMSSecuritySettings: ?*DOT11_MSSECURITY_SETTINGS,
};

pub const DOT11EXT_IHV_PARAMS = extern struct {
    dot11ExtIhvProfileParams: DOT11EXT_IHV_PROFILE_PARAMS,
    wstrProfileName: [256]u16,
    dwProfileTypeFlags: u32,
    interfaceGuid: Guid,
};

pub const DOT11_IHV_VERSION_INFO = extern struct {
    dwVerMin: u32,
    dwVerMax: u32,
};

pub const DOT11EXT_IHV_CONNECTION_PHASE = enum(i32) {
    any = 0,
    initial_connection = 1,
    post_l3_connection = 2,
};
pub const connection_phase_any = DOT11EXT_IHV_CONNECTION_PHASE.any;
pub const connection_phase_initial_connection = DOT11EXT_IHV_CONNECTION_PHASE.initial_connection;
pub const connection_phase_post_l3_connection = DOT11EXT_IHV_CONNECTION_PHASE.post_l3_connection;

pub const DOT11EXT_IHV_UI_REQUEST = extern struct {
    dwSessionId: u32,
    guidUIRequest: Guid,
    UIPageClsid: Guid,
    dwByteCount: u32,
    pvUIRequest: ?*u8,
};

pub const DOT11_MSONEX_RESULT = enum(i32) {
    SUCCESS = 0,
    FAILURE = 1,
    IN_PROGRESS = 2,
};
pub const DOT11_MSONEX_SUCCESS = DOT11_MSONEX_RESULT.SUCCESS;
pub const DOT11_MSONEX_FAILURE = DOT11_MSONEX_RESULT.FAILURE;
pub const DOT11_MSONEX_IN_PROGRESS = DOT11_MSONEX_RESULT.IN_PROGRESS;

pub const DOT11_EAP_RESULT = extern struct {
    dwFailureReasonCode: u32,
    pAttribArray: ?*EAP_ATTRIBUTES,
};

pub const DOT11_MSONEX_RESULT_PARAMS = extern struct {
    Dot11OnexAuthStatus: ONEX_AUTH_STATUS,
    Dot11OneXReasonCode: ONEX_REASON_CODE,
    pbMPPESendKey: ?*u8,
    dwMPPESendKeyLen: u32,
    pbMPPERecvKey: ?*u8,
    dwMPPERecvKeyLen: u32,
    pDot11EapResult: ?*DOT11_EAP_RESULT,
};

pub const DOT11EXT_IHV_CONNECTIVITY_PROFILE = extern struct {
    pszXmlFragmentIhvConnectivity: ?PWSTR,
};

pub const DOT11EXT_IHV_SECURITY_PROFILE = extern struct {
    pszXmlFragmentIhvSecurity: ?PWSTR,
    bUseMSOnex: BOOL,
};

pub const DOT11EXT_IHV_DISCOVERY_PROFILE = extern struct {
    IhvConnectivityProfile: DOT11EXT_IHV_CONNECTIVITY_PROFILE,
    IhvSecurityProfile: DOT11EXT_IHV_SECURITY_PROFILE,
};

pub const DOT11EXT_IHV_DISCOVERY_PROFILE_LIST = extern struct {
    dwCount: u32,
    pIhvDiscoveryProfiles: ?*DOT11EXT_IHV_DISCOVERY_PROFILE,
};

pub const DOT11EXT_IHV_INDICATION_TYPE = enum(i32) {
    NicSpecificNotification = 0,
    PmkidCandidateList = 1,
    TkipMicFailure = 2,
    PhyStateChange = 3,
    LinkQuality = 4,
};
pub const IndicationTypeNicSpecificNotification = DOT11EXT_IHV_INDICATION_TYPE.NicSpecificNotification;
pub const IndicationTypePmkidCandidateList = DOT11EXT_IHV_INDICATION_TYPE.PmkidCandidateList;
pub const IndicationTypeTkipMicFailure = DOT11EXT_IHV_INDICATION_TYPE.TkipMicFailure;
pub const IndicationTypePhyStateChange = DOT11EXT_IHV_INDICATION_TYPE.PhyStateChange;
pub const IndicationTypeLinkQuality = DOT11EXT_IHV_INDICATION_TYPE.LinkQuality;

pub const DOT11EXT_VIRTUAL_STATION_AP_PROPERTY = extern struct {
    dot11SSID: DOT11_SSID,
    dot11AuthAlgo: DOT11_AUTH_ALGORITHM,
    dot11CipherAlgo: DOT11_CIPHER_ALGORITHM,
    bIsPassPhrase: BOOL,
    dwKeyLength: u32,
    ucKeyData: [64]u8,
};

pub const WDIAG_IHV_WLAN_ID = extern struct {
    strProfileName: [256]u16,
    Ssid: DOT11_SSID,
    BssType: DOT11_BSS_TYPE,
    dwFlags: u32,
    dwReasonCode: u32,
};

pub const DOT11EXT_ALLOCATE_BUFFER = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        dwByteCount: u32,
        ppvBuffer: ?*?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        dwByteCount: u32,
        ppvBuffer: ?*?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_FREE_BUFFER = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        pvMemory: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
    else => *const fn (
        pvMemory: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) void,
};

pub const DOT11EXT_SET_PROFILE_CUSTOM_USER_DATA = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        dwSessionID: u32,
        dwDataSize: u32,
        // TODO: what to do with BytesParamIndex 3?
        pvData: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        dwSessionID: u32,
        dwDataSize: u32,
        // TODO: what to do with BytesParamIndex 3?
        pvData: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_GET_PROFILE_CUSTOM_USER_DATA = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        dwSessionID: u32,
        pdwDataSize: ?*u32,
        ppvData: ?*?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        dwSessionID: u32,
        pdwDataSize: ?*u32,
        ppvData: ?*?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_CURRENT_PROFILE = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        pIhvConnProfile: ?*DOT11EXT_IHV_CONNECTIVITY_PROFILE,
        pIhvSecProfile: ?*DOT11EXT_IHV_SECURITY_PROFILE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        pIhvConnProfile: ?*DOT11EXT_IHV_CONNECTIVITY_PROFILE,
        pIhvSecProfile: ?*DOT11EXT_IHV_SECURITY_PROFILE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SEND_UI_REQUEST = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        pIhvUIRequest: ?*DOT11EXT_IHV_UI_REQUEST,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        pIhvUIRequest: ?*DOT11EXT_IHV_UI_REQUEST,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_PRE_ASSOCIATE_COMPLETION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        dwReasonCode: u32,
        dwWin32Error: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        dwReasonCode: u32,
        dwWin32Error: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_POST_ASSOCIATE_COMPLETION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        hSecuritySessionID: ?HANDLE,
        pPeer: ?*?*u8,
        dwReasonCode: u32,
        dwWin32Error: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        hSecuritySessionID: ?HANDLE,
        pPeer: ?*?*u8,
        dwReasonCode: u32,
        dwWin32Error: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SEND_NOTIFICATION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        pNotificationData: ?*L2_NOTIFICATION_DATA,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        pNotificationData: ?*L2_NOTIFICATION_DATA,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SEND_PACKET = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        uPacketLen: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvPacket: ?*anyopaque,
        hSendCompletion: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        uPacketLen: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvPacket: ?*anyopaque,
        hSendCompletion: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_ETHERTYPE_HANDLING = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        uMaxBackLog: u32,
        uNumOfExemption: u32,
        pExemption: ?[*]DOT11_PRIVACY_EXEMPTION,
        uNumOfRegistration: u32,
        pusRegistration: ?[*:0]u16,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        uMaxBackLog: u32,
        uNumOfExemption: u32,
        pExemption: ?[*]DOT11_PRIVACY_EXEMPTION,
        uNumOfRegistration: u32,
        pusRegistration: ?[*:0]u16,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_AUTH_ALGORITHM = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        dwAuthAlgo: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        dwAuthAlgo: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_UNICAST_CIPHER_ALGORITHM = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        dwUnicastCipherAlgo: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        dwUnicastCipherAlgo: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_MULTICAST_CIPHER_ALGORITHM = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        dwMulticastCipherAlgo: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        dwMulticastCipherAlgo: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_DEFAULT_KEY = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        pKey: ?*DOT11_CIPHER_DEFAULT_KEY_VALUE,
        dot11Direction: DOT11_DIRECTION,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        pKey: ?*DOT11_CIPHER_DEFAULT_KEY_VALUE,
        dot11Direction: DOT11_DIRECTION,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_KEY_MAPPING_KEY = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        pKey: ?*DOT11_CIPHER_KEY_MAPPING_KEY_VALUE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        pKey: ?*DOT11_CIPHER_KEY_MAPPING_KEY_VALUE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_DEFAULT_KEY_ID = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        uDefaultKeyId: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        uDefaultKeyId: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_EXCLUDE_UNENCRYPTED = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        bExcludeUnencrypted: BOOL,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        bExcludeUnencrypted: BOOL,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_NIC_SPECIFIC_EXTENSION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        dwInBufferSize: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvInBuffer: ?*anyopaque,
        pdwOutBufferSize: ?*u32,
        // TODO: what to do with BytesParamIndex 3?
        pvOutBuffer: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        dwInBufferSize: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvInBuffer: ?*anyopaque,
        pdwOutBufferSize: ?*u32,
        // TODO: what to do with BytesParamIndex 3?
        pvOutBuffer: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_ONEX_START = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        pEapAttributes: ?*EAP_ATTRIBUTES,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        pEapAttributes: ?*EAP_ATTRIBUTES,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_ONEX_STOP = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_PROCESS_ONEX_PACKET = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        dwInPacketSize: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvInPacket: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        dwInPacketSize: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvInPacket: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_REQUEST_VIRTUAL_STATION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11PrimaryHandle: ?HANDLE,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11PrimaryHandle: ?HANDLE,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_RELEASE_VIRTUAL_STATION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11PrimaryHandle: ?HANDLE,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11PrimaryHandle: ?HANDLE,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_QUERY_VIRTUAL_STATION_PROPERTIES = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        pbIsVirtualStation: ?*BOOL,
        pgPrimary: ?*Guid,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        pbIsVirtualStation: ?*BOOL,
        pgPrimary: ?*Guid,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_SET_VIRTUAL_STATION_AP_PROPERTIES = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        dwNumProperties: u32,
        pProperties: [*]DOT11EXT_VIRTUAL_STATION_AP_PROPERTY,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hDot11SvcHandle: ?HANDLE,
        hConnectSession: ?HANDLE,
        dwNumProperties: u32,
        pProperties: [*]DOT11EXT_VIRTUAL_STATION_AP_PROPERTY,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_GET_VERSION_INFO = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        pDot11IHVVersionInfo: ?*DOT11_IHV_VERSION_INFO,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        pDot11IHVVersionInfo: ?*DOT11_IHV_VERSION_INFO,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_INIT_SERVICE = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        dwVerNumUsed: u32,
        pDot11ExtAPI: ?*DOT11EXT_APIS,
        pvReserved: ?*anyopaque,
        pDot11IHVHandlers: ?*DOT11EXT_IHV_HANDLERS,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        dwVerNumUsed: u32,
        pDot11ExtAPI: ?*DOT11EXT_APIS,
        pvReserved: ?*anyopaque,
        pDot11IHVHandlers: ?*DOT11EXT_IHV_HANDLERS,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_INIT_VIRTUAL_STATION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        pDot11ExtVSAPI: ?*DOT11EXT_VIRTUAL_STATION_APIS,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        pDot11ExtVSAPI: ?*DOT11EXT_VIRTUAL_STATION_APIS,
        pvReserved: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_DEINIT_SERVICE = switch (@import("builtin").zig_backend) {
    .stage1 => fn () callconv(@import("std").os.windows.WINAPI) void,
    else => *const fn () callconv(@import("std").os.windows.WINAPI) void,
};

pub const DOT11EXTIHV_INIT_ADAPTER = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        pDot11Adapter: ?*DOT11_ADAPTER,
        hDot11SvcHandle: ?HANDLE,
        phIhvExtAdapter: ?*?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        pDot11Adapter: ?*DOT11_ADAPTER,
        hDot11SvcHandle: ?HANDLE,
        phIhvExtAdapter: ?*?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_DEINIT_ADAPTER = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) void,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) void,
};

pub const DOT11EXTIHV_PERFORM_PRE_ASSOCIATE = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        hConnectSession: ?HANDLE,
        pIhvProfileParams: ?*DOT11EXT_IHV_PROFILE_PARAMS,
        pIhvConnProfile: ?*DOT11EXT_IHV_CONNECTIVITY_PROFILE,
        pIhvSecProfile: ?*DOT11EXT_IHV_SECURITY_PROFILE,
        pConnectableBssid: ?*DOT11_BSS_LIST,
        pdwReasonCode: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        hConnectSession: ?HANDLE,
        pIhvProfileParams: ?*DOT11EXT_IHV_PROFILE_PARAMS,
        pIhvConnProfile: ?*DOT11EXT_IHV_CONNECTIVITY_PROFILE,
        pIhvSecProfile: ?*DOT11EXT_IHV_SECURITY_PROFILE,
        pConnectableBssid: ?*DOT11_BSS_LIST,
        pdwReasonCode: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_ADAPTER_RESET = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_PERFORM_POST_ASSOCIATE = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        hSecuritySessionID: ?HANDLE,
        pPortState: ?*DOT11_PORT_STATE,
        uDot11AssocParamsBytes: u32,
        // TODO: what to do with BytesParamIndex 3?
        pDot11AssocParams: ?*DOT11_ASSOCIATION_COMPLETION_PARAMETERS,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        hSecuritySessionID: ?HANDLE,
        pPortState: ?*DOT11_PORT_STATE,
        uDot11AssocParamsBytes: u32,
        // TODO: what to do with BytesParamIndex 3?
        pDot11AssocParams: ?*DOT11_ASSOCIATION_COMPLETION_PARAMETERS,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_STOP_POST_ASSOCIATE = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        pPeer: ?*?*u8,
        dot11AssocStatus: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        pPeer: ?*?*u8,
        dot11AssocStatus: u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_VALIDATE_PROFILE = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        pIhvProfileParams: ?*DOT11EXT_IHV_PROFILE_PARAMS,
        pIhvConnProfile: ?*DOT11EXT_IHV_CONNECTIVITY_PROFILE,
        pIhvSecProfile: ?*DOT11EXT_IHV_SECURITY_PROFILE,
        pdwReasonCode: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        pIhvProfileParams: ?*DOT11EXT_IHV_PROFILE_PARAMS,
        pIhvConnProfile: ?*DOT11EXT_IHV_CONNECTIVITY_PROFILE,
        pIhvSecProfile: ?*DOT11EXT_IHV_SECURITY_PROFILE,
        pdwReasonCode: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_PERFORM_CAPABILITY_MATCH = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        pIhvProfileParams: ?*DOT11EXT_IHV_PROFILE_PARAMS,
        pIhvConnProfile: ?*DOT11EXT_IHV_CONNECTIVITY_PROFILE,
        pIhvSecProfile: ?*DOT11EXT_IHV_SECURITY_PROFILE,
        pConnectableBssid: ?*DOT11_BSS_LIST,
        pdwReasonCode: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        pIhvProfileParams: ?*DOT11EXT_IHV_PROFILE_PARAMS,
        pIhvConnProfile: ?*DOT11EXT_IHV_CONNECTIVITY_PROFILE,
        pIhvSecProfile: ?*DOT11EXT_IHV_SECURITY_PROFILE,
        pConnectableBssid: ?*DOT11_BSS_LIST,
        pdwReasonCode: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_CREATE_DISCOVERY_PROFILES = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        bInsecure: BOOL,
        pIhvProfileParams: ?*DOT11EXT_IHV_PROFILE_PARAMS,
        pConnectableBssid: ?*DOT11_BSS_LIST,
        pIhvDiscoveryProfileList: ?*DOT11EXT_IHV_DISCOVERY_PROFILE_LIST,
        pdwReasonCode: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        bInsecure: BOOL,
        pIhvProfileParams: ?*DOT11EXT_IHV_PROFILE_PARAMS,
        pConnectableBssid: ?*DOT11_BSS_LIST,
        pIhvDiscoveryProfileList: ?*DOT11EXT_IHV_DISCOVERY_PROFILE_LIST,
        pdwReasonCode: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_PROCESS_SESSION_CHANGE = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        uEventType: u32,
        pSessionNotification: ?*WTSSESSION_NOTIFICATION,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        uEventType: u32,
        pSessionNotification: ?*WTSSESSION_NOTIFICATION,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_RECEIVE_INDICATION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        indicationType: DOT11EXT_IHV_INDICATION_TYPE,
        uBufferLength: u32,
        // TODO: what to do with BytesParamIndex 2?
        pvBuffer: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        indicationType: DOT11EXT_IHV_INDICATION_TYPE,
        uBufferLength: u32,
        // TODO: what to do with BytesParamIndex 2?
        pvBuffer: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_RECEIVE_PACKET = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        dwInBufferSize: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvInBuffer: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        dwInBufferSize: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvInBuffer: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_SEND_PACKET_COMPLETION = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hSendCompletion: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hSendCompletion: ?HANDLE,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_IS_UI_REQUEST_PENDING = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        guidUIRequest: Guid,
        pbIsRequestPending: ?*BOOL,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        guidUIRequest: Guid,
        pbIsRequestPending: ?*BOOL,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_PROCESS_UI_RESPONSE = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        guidUIRequest: Guid,
        dwByteCount: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvResponseBuffer: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        guidUIRequest: Guid,
        dwByteCount: u32,
        // TODO: what to do with BytesParamIndex 1?
        pvResponseBuffer: ?*anyopaque,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_QUERY_UI_REQUEST = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        connectionPhase: DOT11EXT_IHV_CONNECTION_PHASE,
        ppIhvUIRequest: ?*?*DOT11EXT_IHV_UI_REQUEST,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        connectionPhase: DOT11EXT_IHV_CONNECTION_PHASE,
        ppIhvUIRequest: ?*?*DOT11EXT_IHV_UI_REQUEST,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_ONEX_INDICATE_RESULT = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        msOneXResult: DOT11_MSONEX_RESULT,
        pDot11MsOneXResultParams: ?*DOT11_MSONEX_RESULT_PARAMS,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        msOneXResult: DOT11_MSONEX_RESULT,
        pDot11MsOneXResultParams: ?*DOT11_MSONEX_RESULT_PARAMS,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXTIHV_CONTROL = switch (@import("builtin").zig_backend) {
    .stage1 => fn (
        hIhvExtAdapter: ?HANDLE,
        dwInBufferSize: u32,
        // TODO: what to do with BytesParamIndex 1?
        pInBuffer: ?*u8,
        dwOutBufferSize: u32,
        // TODO: what to do with BytesParamIndex 3?
        pOutBuffer: ?*u8,
        pdwBytesReturned: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
    else => *const fn (
        hIhvExtAdapter: ?HANDLE,
        dwInBufferSize: u32,
        // TODO: what to do with BytesParamIndex 1?
        pInBuffer: ?*u8,
        dwOutBufferSize: u32,
        // TODO: what to do with BytesParamIndex 3?
        pOutBuffer: ?*u8,
        pdwBytesReturned: ?*u32,
    ) callconv(@import("std").os.windows.WINAPI) u32,
};

pub const DOT11EXT_APIS = extern struct {
    Dot11ExtAllocateBuffer: ?DOT11EXT_ALLOCATE_BUFFER,
    Dot11ExtFreeBuffer: ?DOT11EXT_FREE_BUFFER,
    Dot11ExtSetProfileCustomUserData: ?DOT11EXT_SET_PROFILE_CUSTOM_USER_DATA,
    Dot11ExtGetProfileCustomUserData: ?DOT11EXT_GET_PROFILE_CUSTOM_USER_DATA,
    Dot11ExtSetCurrentProfile: ?DOT11EXT_SET_CURRENT_PROFILE,
    Dot11ExtSendUIRequest: ?DOT11EXT_SEND_UI_REQUEST,
    Dot11ExtPreAssociateCompletion: ?DOT11EXT_PRE_ASSOCIATE_COMPLETION,
    Dot11ExtPostAssociateCompletion: ?DOT11EXT_POST_ASSOCIATE_COMPLETION,
    Dot11ExtSendNotification: ?DOT11EXT_SEND_NOTIFICATION,
    Dot11ExtSendPacket: ?DOT11EXT_SEND_PACKET,
    Dot11ExtSetEtherTypeHandling: ?DOT11EXT_SET_ETHERTYPE_HANDLING,
    Dot11ExtSetAuthAlgorithm: ?DOT11EXT_SET_AUTH_ALGORITHM,
    Dot11ExtSetUnicastCipherAlgorithm: ?DOT11EXT_SET_UNICAST_CIPHER_ALGORITHM,
    Dot11ExtSetMulticastCipherAlgorithm: ?DOT11EXT_SET_MULTICAST_CIPHER_ALGORITHM,
    Dot11ExtSetDefaultKey: ?DOT11EXT_SET_DEFAULT_KEY,
    Dot11ExtSetKeyMappingKey: ?DOT11EXT_SET_KEY_MAPPING_KEY,
    Dot11ExtSetDefaultKeyId: ?DOT11EXT_SET_DEFAULT_KEY_ID,
    Dot11ExtNicSpecificExtension: ?DOT11EXT_NIC_SPECIFIC_EXTENSION,
    Dot11ExtSetExcludeUnencrypted: ?DOT11EXT_SET_EXCLUDE_UNENCRYPTED,
    Dot11ExtStartOneX: ?DOT11EXT_ONEX_START,
    Dot11ExtStopOneX: ?DOT11EXT_ONEX_STOP,
    Dot11ExtProcessSecurityPacket: ?DOT11EXT_PROCESS_ONEX_PACKET,
};

pub const DOT11EXT_IHV_HANDLERS = extern struct {
    Dot11ExtIhvDeinitService: ?DOT11EXTIHV_DEINIT_SERVICE,
    Dot11ExtIhvInitAdapter: ?DOT11EXTIHV_INIT_ADAPTER,
    Dot11ExtIhvDeinitAdapter: ?DOT11EXTIHV_DEINIT_ADAPTER,
    Dot11ExtIhvPerformPreAssociate: ?DOT11EXTIHV_PERFORM_PRE_ASSOCIATE,
    Dot11ExtIhvAdapterReset: ?DOT11EXTIHV_ADAPTER_RESET,
    Dot11ExtIhvPerformPostAssociate: ?DOT11EXTIHV_PERFORM_POST_ASSOCIATE,
    Dot11ExtIhvStopPostAssociate: ?DOT11EXTIHV_STOP_POST_ASSOCIATE,
    Dot11ExtIhvValidateProfile: ?DOT11EXTIHV_VALIDATE_PROFILE,
    Dot11ExtIhvPerformCapabilityMatch: ?DOT11EXTIHV_PERFORM_CAPABILITY_MATCH,
    Dot11ExtIhvCreateDiscoveryProfiles: ?DOT11EXTIHV_CREATE_DISCOVERY_PROFILES,
    Dot11ExtIhvProcessSessionChange: ?DOT11EXTIHV_PROCESS_SESSION_CHANGE,
    Dot11ExtIhvReceiveIndication: ?DOT11EXTIHV_RECEIVE_INDICATION,
    Dot11ExtIhvReceivePacket: ?DOT11EXTIHV_RECEIVE_PACKET,
    Dot11ExtIhvSendPacketCompletion: ?DOT11EXTIHV_SEND_PACKET_COMPLETION,
    Dot11ExtIhvIsUIRequestPending: ?DOT11EXTIHV_IS_UI_REQUEST_PENDING,
    Dot11ExtIhvProcessUIResponse: ?DOT11EXTIHV_PROCESS_UI_RESPONSE,
    Dot11ExtIhvQueryUIRequest: ?DOT11EXTIHV_QUERY_UI_REQUEST,
    Dot11ExtIhvOnexIndicateResult: ?DOT11EXTIHV_ONEX_INDICATE_RESULT,
    Dot11ExtIhvControl: ?DOT11EXTIHV_CONTROL,
};

pub const DOT11EXT_VIRTUAL_STATION_APIS = extern struct {
    Dot11ExtRequestVirtualStation: ?DOT11EXT_REQUEST_VIRTUAL_STATION,
    Dot11ExtReleaseVirtualStation: ?DOT11EXT_RELEASE_VIRTUAL_STATION,
    Dot11ExtQueryVirtualStationProperties: ?DOT11EXT_QUERY_VIRTUAL_STATION_PROPERTIES,
    Dot11ExtSetVirtualStationAPProperties: ?DOT11EXT_SET_VIRTUAL_STATION_AP_PROPERTIES,
};

//--------------------------------------------------------------------------------
// Section: Functions (0)
//--------------------------------------------------------------------------------

//--------------------------------------------------------------------------------
// Section: Unicode Aliases (0)
//--------------------------------------------------------------------------------
const thismodule = @This();
pub usingnamespace switch (@import("../zig.zig").unicode_mode) {
    .ansi => struct {},
    .wide => struct {},
    .unspecified => if (@import("builtin").is_test) struct {} else struct {},
};
//--------------------------------------------------------------------------------
// Section: Imports (28)
//--------------------------------------------------------------------------------
const Guid = @import("../zig.zig").Guid;
const BOOL = @import("../foundation.zig").BOOL;
const BOOLEAN = @import("../foundation.zig").BOOLEAN;
const CHAR = @import("../foundation.zig").CHAR;
const DOT11_ASSOCIATION_COMPLETION_PARAMETERS = @import("../network_management/wi_fi.zig").DOT11_ASSOCIATION_COMPLETION_PARAMETERS;
const DOT11_AUTH_ALGORITHM = @import("../network_management/wi_fi.zig").DOT11_AUTH_ALGORITHM;
const DOT11_BSS_TYPE = @import("../network_management/wi_fi.zig").DOT11_BSS_TYPE;
const DOT11_CIPHER_ALGORITHM = @import("../network_management/wi_fi.zig").DOT11_CIPHER_ALGORITHM;
const DOT11_CIPHER_DEFAULT_KEY_VALUE = @import("../network_management/wi_fi.zig").DOT11_CIPHER_DEFAULT_KEY_VALUE;
const DOT11_CIPHER_KEY_MAPPING_KEY_VALUE = @import("../network_management/wi_fi.zig").DOT11_CIPHER_KEY_MAPPING_KEY_VALUE;
const DOT11_CURRENT_OPERATION_MODE = @import("../network_management/wi_fi.zig").DOT11_CURRENT_OPERATION_MODE;
const DOT11_DIRECTION = @import("../network_management/wi_fi.zig").DOT11_DIRECTION;
const DOT11_PRIVACY_EXEMPTION = @import("../network_management/wi_fi.zig").DOT11_PRIVACY_EXEMPTION;
const DOT11_SSID = @import("../network_management/wi_fi.zig").DOT11_SSID;
const EAP_ATTRIBUTES = @import("../security/extensible_authentication_protocol.zig").EAP_ATTRIBUTES;
const EAP_METHOD_TYPE = @import("../security/extensible_authentication_protocol.zig").EAP_METHOD_TYPE;
const HANDLE = @import("../foundation.zig").HANDLE;
const L2_NOTIFICATION_DATA = @import("../network_management/wi_fi.zig").L2_NOTIFICATION_DATA;
const LARGE_INTEGER = @import("../foundation.zig").LARGE_INTEGER;
const NET_IF_DIRECTION_TYPE = @import("../network_management/ip_helper.zig").NET_IF_DIRECTION_TYPE;
const NET_IF_MEDIA_CONNECT_STATE = @import("../network_management/ip_helper.zig").NET_IF_MEDIA_CONNECT_STATE;
const NET_IF_MEDIA_DUPLEX_STATE = @import("../network_management/ip_helper.zig").NET_IF_MEDIA_DUPLEX_STATE;
const NET_IF_OPER_STATUS = @import("../network_management/ip_helper.zig").NET_IF_OPER_STATUS;
const NET_LUID_LH = @import("../network_management/ip_helper.zig").NET_LUID_LH;
const ONEX_AUTH_STATUS = @import("../network_management/wi_fi.zig").ONEX_AUTH_STATUS;
const ONEX_REASON_CODE = @import("../network_management/wi_fi.zig").ONEX_REASON_CODE;
const PWSTR = @import("../foundation.zig").PWSTR;
const WTSSESSION_NOTIFICATION = @import("../system/remote_desktop.zig").WTSSESSION_NOTIFICATION;

test {
    // The following '_ = <FuncPtrType>' lines are a workaround for https://github.com/ziglang/zig/issues/4476
    if (@hasDecl(@This(), "DOT11EXT_ALLOCATE_BUFFER")) {
        _ = DOT11EXT_ALLOCATE_BUFFER;
    }
    if (@hasDecl(@This(), "DOT11EXT_FREE_BUFFER")) {
        _ = DOT11EXT_FREE_BUFFER;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_PROFILE_CUSTOM_USER_DATA")) {
        _ = DOT11EXT_SET_PROFILE_CUSTOM_USER_DATA;
    }
    if (@hasDecl(@This(), "DOT11EXT_GET_PROFILE_CUSTOM_USER_DATA")) {
        _ = DOT11EXT_GET_PROFILE_CUSTOM_USER_DATA;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_CURRENT_PROFILE")) {
        _ = DOT11EXT_SET_CURRENT_PROFILE;
    }
    if (@hasDecl(@This(), "DOT11EXT_SEND_UI_REQUEST")) {
        _ = DOT11EXT_SEND_UI_REQUEST;
    }
    if (@hasDecl(@This(), "DOT11EXT_PRE_ASSOCIATE_COMPLETION")) {
        _ = DOT11EXT_PRE_ASSOCIATE_COMPLETION;
    }
    if (@hasDecl(@This(), "DOT11EXT_POST_ASSOCIATE_COMPLETION")) {
        _ = DOT11EXT_POST_ASSOCIATE_COMPLETION;
    }
    if (@hasDecl(@This(), "DOT11EXT_SEND_NOTIFICATION")) {
        _ = DOT11EXT_SEND_NOTIFICATION;
    }
    if (@hasDecl(@This(), "DOT11EXT_SEND_PACKET")) {
        _ = DOT11EXT_SEND_PACKET;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_ETHERTYPE_HANDLING")) {
        _ = DOT11EXT_SET_ETHERTYPE_HANDLING;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_AUTH_ALGORITHM")) {
        _ = DOT11EXT_SET_AUTH_ALGORITHM;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_UNICAST_CIPHER_ALGORITHM")) {
        _ = DOT11EXT_SET_UNICAST_CIPHER_ALGORITHM;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_MULTICAST_CIPHER_ALGORITHM")) {
        _ = DOT11EXT_SET_MULTICAST_CIPHER_ALGORITHM;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_DEFAULT_KEY")) {
        _ = DOT11EXT_SET_DEFAULT_KEY;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_KEY_MAPPING_KEY")) {
        _ = DOT11EXT_SET_KEY_MAPPING_KEY;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_DEFAULT_KEY_ID")) {
        _ = DOT11EXT_SET_DEFAULT_KEY_ID;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_EXCLUDE_UNENCRYPTED")) {
        _ = DOT11EXT_SET_EXCLUDE_UNENCRYPTED;
    }
    if (@hasDecl(@This(), "DOT11EXT_NIC_SPECIFIC_EXTENSION")) {
        _ = DOT11EXT_NIC_SPECIFIC_EXTENSION;
    }
    if (@hasDecl(@This(), "DOT11EXT_ONEX_START")) {
        _ = DOT11EXT_ONEX_START;
    }
    if (@hasDecl(@This(), "DOT11EXT_ONEX_STOP")) {
        _ = DOT11EXT_ONEX_STOP;
    }
    if (@hasDecl(@This(), "DOT11EXT_PROCESS_ONEX_PACKET")) {
        _ = DOT11EXT_PROCESS_ONEX_PACKET;
    }
    if (@hasDecl(@This(), "DOT11EXT_REQUEST_VIRTUAL_STATION")) {
        _ = DOT11EXT_REQUEST_VIRTUAL_STATION;
    }
    if (@hasDecl(@This(), "DOT11EXT_RELEASE_VIRTUAL_STATION")) {
        _ = DOT11EXT_RELEASE_VIRTUAL_STATION;
    }
    if (@hasDecl(@This(), "DOT11EXT_QUERY_VIRTUAL_STATION_PROPERTIES")) {
        _ = DOT11EXT_QUERY_VIRTUAL_STATION_PROPERTIES;
    }
    if (@hasDecl(@This(), "DOT11EXT_SET_VIRTUAL_STATION_AP_PROPERTIES")) {
        _ = DOT11EXT_SET_VIRTUAL_STATION_AP_PROPERTIES;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_GET_VERSION_INFO")) {
        _ = DOT11EXTIHV_GET_VERSION_INFO;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_INIT_SERVICE")) {
        _ = DOT11EXTIHV_INIT_SERVICE;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_INIT_VIRTUAL_STATION")) {
        _ = DOT11EXTIHV_INIT_VIRTUAL_STATION;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_DEINIT_SERVICE")) {
        _ = DOT11EXTIHV_DEINIT_SERVICE;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_INIT_ADAPTER")) {
        _ = DOT11EXTIHV_INIT_ADAPTER;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_DEINIT_ADAPTER")) {
        _ = DOT11EXTIHV_DEINIT_ADAPTER;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_PERFORM_PRE_ASSOCIATE")) {
        _ = DOT11EXTIHV_PERFORM_PRE_ASSOCIATE;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_ADAPTER_RESET")) {
        _ = DOT11EXTIHV_ADAPTER_RESET;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_PERFORM_POST_ASSOCIATE")) {
        _ = DOT11EXTIHV_PERFORM_POST_ASSOCIATE;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_STOP_POST_ASSOCIATE")) {
        _ = DOT11EXTIHV_STOP_POST_ASSOCIATE;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_VALIDATE_PROFILE")) {
        _ = DOT11EXTIHV_VALIDATE_PROFILE;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_PERFORM_CAPABILITY_MATCH")) {
        _ = DOT11EXTIHV_PERFORM_CAPABILITY_MATCH;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_CREATE_DISCOVERY_PROFILES")) {
        _ = DOT11EXTIHV_CREATE_DISCOVERY_PROFILES;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_PROCESS_SESSION_CHANGE")) {
        _ = DOT11EXTIHV_PROCESS_SESSION_CHANGE;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_RECEIVE_INDICATION")) {
        _ = DOT11EXTIHV_RECEIVE_INDICATION;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_RECEIVE_PACKET")) {
        _ = DOT11EXTIHV_RECEIVE_PACKET;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_SEND_PACKET_COMPLETION")) {
        _ = DOT11EXTIHV_SEND_PACKET_COMPLETION;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_IS_UI_REQUEST_PENDING")) {
        _ = DOT11EXTIHV_IS_UI_REQUEST_PENDING;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_PROCESS_UI_RESPONSE")) {
        _ = DOT11EXTIHV_PROCESS_UI_RESPONSE;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_QUERY_UI_REQUEST")) {
        _ = DOT11EXTIHV_QUERY_UI_REQUEST;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_ONEX_INDICATE_RESULT")) {
        _ = DOT11EXTIHV_ONEX_INDICATE_RESULT;
    }
    if (@hasDecl(@This(), "DOT11EXTIHV_CONTROL")) {
        _ = DOT11EXTIHV_CONTROL;
    }

    @setEvalBranchQuota(comptime @import("std").meta.declarations(@This()).len * 3);

    // reference all the pub declarations
    if (!@import("builtin").is_test) return;
    inline for (comptime @import("std").meta.declarations(@This())) |decl| {
        if (decl.is_pub) {
            _ = @field(@This(), decl.name);
        }
    }
}
