zigwin32/win32/network_management/wi_fi.zig

5407 lines
224 KiB
Zig

//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (796)
//--------------------------------------------------------------------------------
pub const L2_REASON_CODE_DOT11_AC_BASE = @as(u32, 131072);
pub const L2_REASON_CODE_DOT11_MSM_BASE = @as(u32, 196608);
pub const L2_REASON_CODE_DOT11_SECURITY_BASE = @as(u32, 262144);
pub const L2_REASON_CODE_ONEX_BASE = @as(u32, 327680);
pub const L2_REASON_CODE_DOT3_AC_BASE = @as(u32, 393216);
pub const L2_REASON_CODE_DOT3_MSM_BASE = @as(u32, 458752);
pub const L2_REASON_CODE_PROFILE_BASE = @as(u32, 524288);
pub const L2_REASON_CODE_IHV_BASE = @as(u32, 589824);
pub const L2_REASON_CODE_WIMAX_BASE = @as(u32, 655360);
pub const L2_REASON_CODE_RESERVED_BASE = @as(u32, 720896);
pub const WLAN_REASON_CODE_SUCCESS = @as(u32, 0);
pub const WLAN_REASON_CODE_UNKNOWN = @as(u32, 65537);
pub const WLAN_REASON_CODE_RANGE_SIZE = @as(u32, 65536);
pub const WLAN_REASON_CODE_BASE = @as(u32, 131072);
pub const WLAN_REASON_CODE_AC_BASE = @as(u32, 131072);
pub const WLAN_REASON_CODE_AC_CONNECT_BASE = @as(u32, 163840);
pub const WLAN_REASON_CODE_AC_END = @as(u32, 196607);
pub const WLAN_REASON_CODE_PROFILE_BASE = @as(u32, 524288);
pub const WLAN_REASON_CODE_PROFILE_CONNECT_BASE = @as(u32, 557056);
pub const WLAN_REASON_CODE_PROFILE_END = @as(u32, 589823);
pub const WLAN_REASON_CODE_MSM_BASE = @as(u32, 196608);
pub const WLAN_REASON_CODE_MSM_CONNECT_BASE = @as(u32, 229376);
pub const WLAN_REASON_CODE_MSM_END = @as(u32, 262143);
pub const WLAN_REASON_CODE_MSMSEC_BASE = @as(u32, 262144);
pub const WLAN_REASON_CODE_MSMSEC_CONNECT_BASE = @as(u32, 294912);
pub const WLAN_REASON_CODE_MSMSEC_END = @as(u32, 327679);
pub const WLAN_REASON_CODE_RESERVED_BASE = @as(u32, 720896);
pub const WLAN_REASON_CODE_RESERVED_END = @as(u32, 786431);
pub const L2_PROFILE_MAX_NAME_LENGTH = @as(u32, 256);
pub const L2_NOTIFICATION_SOURCE_NONE = @as(u32, 0);
pub const L2_NOTIFICATION_SOURCE_DOT3_AUTO_CONFIG = @as(u32, 1);
pub const L2_NOTIFICATION_SOURCE_SECURITY = @as(u32, 2);
pub const L2_NOTIFICATION_SOURCE_ONEX = @as(u32, 4);
pub const L2_NOTIFICATION_SOURCE_WLAN_ACM = @as(u32, 8);
pub const L2_NOTIFICATION_SOURCE_WLAN_MSM = @as(u32, 16);
pub const L2_NOTIFICATION_SOURCE_WLAN_SECURITY = @as(u32, 32);
pub const L2_NOTIFICATION_SOURCE_WLAN_IHV = @as(u32, 64);
pub const L2_NOTIFICATION_SOURCE_WLAN_HNWK = @as(u32, 128);
pub const L2_NOTIFICATION_SOURCE_WCM = @as(u32, 256);
pub const L2_NOTIFICATION_SOURCE_WCM_CSP = @as(u32, 512);
pub const L2_NOTIFICATION_SOURCE_WFD = @as(u32, 1024);
pub const L2_NOTIFICATION_SOURCE_WLAN_DEVICE_SERVICE = @as(u32, 2048);
pub const L2_NOTIFICATION_SOURCE_ALL = @as(u32, 65535);
pub const L2_NOTIFICATION_CODE_PUBLIC_BEGIN = @as(u32, 0);
pub const L2_NOTIFICATION_CODE_GROUP_SIZE = @as(u32, 4096);
pub const L2_REASON_CODE_GROUP_SIZE = @as(u32, 65536);
pub const L2_REASON_CODE_GEN_BASE = @as(u32, 65536);
pub const L2_REASON_CODE_SUCCESS = @as(u32, 0);
pub const L2_REASON_CODE_UNKNOWN = @as(u32, 65537);
pub const L2_REASON_CODE_PROFILE_MISSING = @as(u32, 1);
pub const DOT11_BSSID_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_HESSID_LENGTH = @as(u32, 6);
pub const DOT11_RATE_SET_MAX_LENGTH = @as(u32, 126);
pub const DOT11_WFD_SERVICE_NAME_MAX_LENGTH = @as(u32, 255);
pub const DOT11_WFD_APS2_SERVICE_TYPE_MAX_LENGTH = @as(u32, 21);
pub const DOT11_WFD_ASP2_INSTANCE_NAME_MAX_LENGTH = @as(u32, 63);
pub const DOT11_WFD_SERVICE_INFORMATION_MAX_LENGTH = @as(u32, 65535);
pub const DOT11_MAX_REQUESTED_SERVICE_INFORMATION_LENGTH = @as(u32, 255);
pub const DOT11_WFD_SESSION_INFO_MAX_LENGTH = @as(u32, 144);
pub const NDIS_PACKET_TYPE_802_11_DIRECTED_DATA = @as(u32, 1);
pub const NDIS_PACKET_TYPE_802_11_BROADCAST_DATA = @as(u32, 8);
pub const NDIS_PACKET_TYPE_802_11_MULTICAST_DATA = @as(u32, 2);
pub const NDIS_PACKET_TYPE_802_11_ALL_MULTICAST_DATA = @as(u32, 4);
pub const NDIS_PACKET_TYPE_802_11_PROMISCUOUS_DATA = @as(u32, 32);
pub const DOT11_MAX_PDU_SIZE = @as(u32, 2346);
pub const DOT11_MIN_PDU_SIZE = @as(u32, 256);
pub const DOT11_MAX_NUM_DEFAULT_KEY = @as(u32, 4);
pub const DOT11_MAX_NUM_DEFAULT_KEY_MFP = @as(u32, 6);
pub const OID_DOT11_NDIS_START = @as(u32, 218170112);
pub const OID_DOT11_OFFLOAD_CAPABILITY = @as(u32, 218170112);
pub const DOT11_HW_WEP_SUPPORTED_TX = @as(u32, 1);
pub const DOT11_HW_WEP_SUPPORTED_RX = @as(u32, 2);
pub const DOT11_HW_FRAGMENTATION_SUPPORTED = @as(u32, 4);
pub const DOT11_HW_DEFRAGMENTATION_SUPPORTED = @as(u32, 8);
pub const DOT11_HW_MSDU_AUTH_SUPPORTED_TX = @as(u32, 16);
pub const DOT11_HW_MSDU_AUTH_SUPPORTED_RX = @as(u32, 32);
pub const DOT11_CONF_ALGO_WEP_RC4 = @as(u32, 1);
pub const DOT11_CONF_ALGO_TKIP = @as(u32, 2);
pub const DOT11_AUTH_ALGO_MICHAEL = @as(u32, 1);
pub const OID_DOT11_CURRENT_OFFLOAD_CAPABILITY = @as(u32, 218170113);
pub const OID_DOT11_WEP_OFFLOAD = @as(u32, 218170114);
pub const OID_DOT11_WEP_UPLOAD = @as(u32, 218170115);
pub const OID_DOT11_DEFAULT_WEP_OFFLOAD = @as(u32, 218170116);
pub const OID_DOT11_DEFAULT_WEP_UPLOAD = @as(u32, 218170117);
pub const OID_DOT11_MPDU_MAX_LENGTH = @as(u32, 218170118);
pub const OID_DOT11_OPERATION_MODE_CAPABILITY = @as(u32, 218170119);
pub const DOT11_OPERATION_MODE_UNKNOWN = @as(u32, 0);
pub const DOT11_OPERATION_MODE_STATION = @as(u32, 1);
pub const DOT11_OPERATION_MODE_AP = @as(u32, 2);
pub const DOT11_OPERATION_MODE_EXTENSIBLE_STATION = @as(u32, 4);
pub const DOT11_OPERATION_MODE_EXTENSIBLE_AP = @as(u32, 8);
pub const DOT11_OPERATION_MODE_WFD_DEVICE = @as(u32, 16);
pub const DOT11_OPERATION_MODE_WFD_GROUP_OWNER = @as(u32, 32);
pub const DOT11_OPERATION_MODE_WFD_CLIENT = @as(u32, 64);
pub const DOT11_OPERATION_MODE_MANUFACTURING = @as(u32, 1073741824);
pub const DOT11_OPERATION_MODE_NETWORK_MONITOR = @as(u32, 2147483648);
pub const OID_DOT11_CURRENT_OPERATION_MODE = @as(u32, 218170120);
pub const OID_DOT11_CURRENT_PACKET_FILTER = @as(u32, 218170121);
pub const DOT11_PACKET_TYPE_DIRECTED_CTRL = @as(u32, 1);
pub const DOT11_PACKET_TYPE_DIRECTED_MGMT = @as(u32, 2);
pub const DOT11_PACKET_TYPE_DIRECTED_DATA = @as(u32, 4);
pub const DOT11_PACKET_TYPE_MULTICAST_CTRL = @as(u32, 8);
pub const DOT11_PACKET_TYPE_MULTICAST_MGMT = @as(u32, 16);
pub const DOT11_PACKET_TYPE_MULTICAST_DATA = @as(u32, 32);
pub const DOT11_PACKET_TYPE_BROADCAST_CTRL = @as(u32, 64);
pub const DOT11_PACKET_TYPE_BROADCAST_MGMT = @as(u32, 128);
pub const DOT11_PACKET_TYPE_BROADCAST_DATA = @as(u32, 256);
pub const DOT11_PACKET_TYPE_PROMISCUOUS_CTRL = @as(u32, 512);
pub const DOT11_PACKET_TYPE_PROMISCUOUS_MGMT = @as(u32, 1024);
pub const DOT11_PACKET_TYPE_PROMISCUOUS_DATA = @as(u32, 2048);
pub const DOT11_PACKET_TYPE_ALL_MULTICAST_CTRL = @as(u32, 4096);
pub const DOT11_PACKET_TYPE_ALL_MULTICAST_MGMT = @as(u32, 8192);
pub const DOT11_PACKET_TYPE_ALL_MULTICAST_DATA = @as(u32, 16384);
pub const OID_DOT11_ATIM_WINDOW = @as(u32, 218170122);
pub const OID_DOT11_SCAN_REQUEST = @as(u32, 218170123);
pub const OID_DOT11_CURRENT_PHY_TYPE = @as(u32, 218170124);
pub const DOT11_PHY_TYPE_LIST_REVISION_1 = @as(u32, 1);
pub const OID_DOT11_JOIN_REQUEST = @as(u32, 218170125);
pub const DOT11_CAPABILITY_INFO_ESS = @as(u32, 1);
pub const DOT11_CAPABILITY_INFO_IBSS = @as(u32, 2);
pub const DOT11_CAPABILITY_INFO_CF_POLLABLE = @as(u32, 4);
pub const DOT11_CAPABILITY_INFO_CF_POLL_REQ = @as(u32, 8);
pub const DOT11_CAPABILITY_INFO_PRIVACY = @as(u32, 16);
pub const DOT11_CAPABILITY_SHORT_PREAMBLE = @as(u32, 32);
pub const DOT11_CAPABILITY_PBCC = @as(u32, 64);
pub const DOT11_CAPABILITY_CHANNEL_AGILITY = @as(u32, 128);
pub const DOT11_CAPABILITY_SHORT_SLOT_TIME = @as(u32, 1024);
pub const DOT11_CAPABILITY_DSSSOFDM = @as(u32, 8192);
pub const OID_DOT11_START_REQUEST = @as(u32, 218170126);
pub const OID_DOT11_UPDATE_IE = @as(u32, 218170127);
pub const OID_DOT11_RESET_REQUEST = @as(u32, 218170128);
pub const OID_DOT11_NIC_POWER_STATE = @as(u32, 218170129);
pub const OID_DOT11_OPTIONAL_CAPABILITY = @as(u32, 218170130);
pub const OID_DOT11_CURRENT_OPTIONAL_CAPABILITY = @as(u32, 218170131);
pub const OID_DOT11_STATION_ID = @as(u32, 218170132);
pub const OID_DOT11_MEDIUM_OCCUPANCY_LIMIT = @as(u32, 218170133);
pub const OID_DOT11_CF_POLLABLE = @as(u32, 218170134);
pub const OID_DOT11_CFP_PERIOD = @as(u32, 218170135);
pub const OID_DOT11_CFP_MAX_DURATION = @as(u32, 218170136);
pub const OID_DOT11_POWER_MGMT_MODE = @as(u32, 218170137);
pub const DOT11_POWER_SAVE_LEVEL_MAX_PSP = @as(u32, 1);
pub const DOT11_POWER_SAVE_LEVEL_FAST_PSP = @as(u32, 2);
pub const OID_DOT11_OPERATIONAL_RATE_SET = @as(u32, 218170138);
pub const OID_DOT11_BEACON_PERIOD = @as(u32, 218170139);
pub const OID_DOT11_DTIM_PERIOD = @as(u32, 218170140);
pub const OID_DOT11_WEP_ICV_ERROR_COUNT = @as(u32, 218170141);
pub const OID_DOT11_MAC_ADDRESS = @as(u32, 218170142);
pub const OID_DOT11_RTS_THRESHOLD = @as(u32, 218170143);
pub const OID_DOT11_SHORT_RETRY_LIMIT = @as(u32, 218170144);
pub const OID_DOT11_LONG_RETRY_LIMIT = @as(u32, 218170145);
pub const OID_DOT11_FRAGMENTATION_THRESHOLD = @as(u32, 218170146);
pub const OID_DOT11_MAX_TRANSMIT_MSDU_LIFETIME = @as(u32, 218170147);
pub const OID_DOT11_MAX_RECEIVE_LIFETIME = @as(u32, 218170148);
pub const OID_DOT11_COUNTERS_ENTRY = @as(u32, 218170149);
pub const OID_DOT11_SUPPORTED_PHY_TYPES = @as(u32, 218170150);
pub const OID_DOT11_CURRENT_REG_DOMAIN = @as(u32, 218170151);
pub const DOT11_REG_DOMAIN_OTHER = @as(u32, 0);
pub const DOT11_REG_DOMAIN_FCC = @as(u32, 16);
pub const DOT11_REG_DOMAIN_DOC = @as(u32, 32);
pub const DOT11_REG_DOMAIN_ETSI = @as(u32, 48);
pub const DOT11_REG_DOMAIN_SPAIN = @as(u32, 49);
pub const DOT11_REG_DOMAIN_FRANCE = @as(u32, 50);
pub const DOT11_REG_DOMAIN_MKK = @as(u32, 64);
pub const OID_DOT11_TEMP_TYPE = @as(u32, 218170152);
pub const OID_DOT11_CURRENT_TX_ANTENNA = @as(u32, 218170153);
pub const OID_DOT11_DIVERSITY_SUPPORT = @as(u32, 218170154);
pub const OID_DOT11_CURRENT_RX_ANTENNA = @as(u32, 218170155);
pub const OID_DOT11_SUPPORTED_POWER_LEVELS = @as(u32, 218170156);
pub const OID_DOT11_CURRENT_TX_POWER_LEVEL = @as(u32, 218170157);
pub const OID_DOT11_HOP_TIME = @as(u32, 218170158);
pub const OID_DOT11_CURRENT_CHANNEL_NUMBER = @as(u32, 218170159);
pub const OID_DOT11_MAX_DWELL_TIME = @as(u32, 218170160);
pub const OID_DOT11_CURRENT_DWELL_TIME = @as(u32, 218170161);
pub const OID_DOT11_CURRENT_SET = @as(u32, 218170162);
pub const OID_DOT11_CURRENT_PATTERN = @as(u32, 218170163);
pub const OID_DOT11_CURRENT_INDEX = @as(u32, 218170164);
pub const OID_DOT11_CURRENT_CHANNEL = @as(u32, 218170165);
pub const OID_DOT11_CCA_MODE_SUPPORTED = @as(u32, 218170166);
pub const DOT11_CCA_MODE_ED_ONLY = @as(u32, 1);
pub const DOT11_CCA_MODE_CS_ONLY = @as(u32, 2);
pub const DOT11_CCA_MODE_ED_and_CS = @as(u32, 4);
pub const DOT11_CCA_MODE_CS_WITH_TIMER = @as(u32, 8);
pub const DOT11_CCA_MODE_HRCS_AND_ED = @as(u32, 16);
pub const OID_DOT11_CURRENT_CCA_MODE = @as(u32, 218170167);
pub const OID_DOT11_ED_THRESHOLD = @as(u32, 218170168);
pub const OID_DOT11_CCA_WATCHDOG_TIMER_MAX = @as(u32, 218170169);
pub const OID_DOT11_CCA_WATCHDOG_COUNT_MAX = @as(u32, 218170170);
pub const OID_DOT11_CCA_WATCHDOG_TIMER_MIN = @as(u32, 218170171);
pub const OID_DOT11_CCA_WATCHDOG_COUNT_MIN = @as(u32, 218170172);
pub const OID_DOT11_REG_DOMAINS_SUPPORT_VALUE = @as(u32, 218170173);
pub const OID_DOT11_SUPPORTED_TX_ANTENNA = @as(u32, 218170174);
pub const OID_DOT11_SUPPORTED_RX_ANTENNA = @as(u32, 218170175);
pub const OID_DOT11_DIVERSITY_SELECTION_RX = @as(u32, 218170176);
pub const OID_DOT11_SUPPORTED_DATA_RATES_VALUE = @as(u32, 218170177);
pub const MAX_NUM_SUPPORTED_RATES = @as(u32, 8);
pub const MAX_NUM_SUPPORTED_RATES_V2 = @as(u32, 255);
pub const OID_DOT11_CURRENT_FREQUENCY = @as(u32, 218170178);
pub const OID_DOT11_TI_THRESHOLD = @as(u32, 218170179);
pub const OID_DOT11_FREQUENCY_BANDS_SUPPORTED = @as(u32, 218170180);
pub const DOT11_FREQUENCY_BANDS_LOWER = @as(u32, 1);
pub const DOT11_FREQUENCY_BANDS_MIDDLE = @as(u32, 2);
pub const DOT11_FREQUENCY_BANDS_UPPER = @as(u32, 4);
pub const OID_DOT11_SHORT_PREAMBLE_OPTION_IMPLEMENTED = @as(u32, 218170181);
pub const OID_DOT11_PBCC_OPTION_IMPLEMENTED = @as(u32, 218170182);
pub const OID_DOT11_CHANNEL_AGILITY_PRESENT = @as(u32, 218170183);
pub const OID_DOT11_CHANNEL_AGILITY_ENABLED = @as(u32, 218170184);
pub const OID_DOT11_HR_CCA_MODE_SUPPORTED = @as(u32, 218170185);
pub const DOT11_HR_CCA_MODE_ED_ONLY = @as(u32, 1);
pub const DOT11_HR_CCA_MODE_CS_ONLY = @as(u32, 2);
pub const DOT11_HR_CCA_MODE_CS_AND_ED = @as(u32, 4);
pub const DOT11_HR_CCA_MODE_CS_WITH_TIMER = @as(u32, 8);
pub const DOT11_HR_CCA_MODE_HRCS_AND_ED = @as(u32, 16);
pub const OID_DOT11_MULTI_DOMAIN_CAPABILITY_IMPLEMENTED = @as(u32, 218170186);
pub const OID_DOT11_MULTI_DOMAIN_CAPABILITY_ENABLED = @as(u32, 218170187);
pub const OID_DOT11_COUNTRY_STRING = @as(u32, 218170188);
pub const OID_DOT11_MULTI_DOMAIN_CAPABILITY = @as(u32, 218170189);
pub const OID_DOT11_EHCC_PRIME_RADIX = @as(u32, 218170190);
pub const OID_DOT11_EHCC_NUMBER_OF_CHANNELS_FAMILY_INDEX = @as(u32, 218170191);
pub const OID_DOT11_EHCC_CAPABILITY_IMPLEMENTED = @as(u32, 218170192);
pub const OID_DOT11_EHCC_CAPABILITY_ENABLED = @as(u32, 218170193);
pub const OID_DOT11_HOP_ALGORITHM_ADOPTED = @as(u32, 218170194);
pub const OID_DOT11_RANDOM_TABLE_FLAG = @as(u32, 218170195);
pub const OID_DOT11_NUMBER_OF_HOPPING_SETS = @as(u32, 218170196);
pub const OID_DOT11_HOP_MODULUS = @as(u32, 218170197);
pub const OID_DOT11_HOP_OFFSET = @as(u32, 218170198);
pub const OID_DOT11_HOPPING_PATTERN = @as(u32, 218170199);
pub const OID_DOT11_RANDOM_TABLE_FIELD_NUMBER = @as(u32, 218170200);
pub const OID_DOT11_WPA_TSC = @as(u32, 218170201);
pub const OID_DOT11_RSSI_RANGE = @as(u32, 218170202);
pub const OID_DOT11_RF_USAGE = @as(u32, 218170203);
pub const OID_DOT11_NIC_SPECIFIC_EXTENSION = @as(u32, 218170204);
pub const OID_DOT11_AP_JOIN_REQUEST = @as(u32, 218170205);
pub const OID_DOT11_ERP_PBCC_OPTION_IMPLEMENTED = @as(u32, 218170206);
pub const OID_DOT11_ERP_PBCC_OPTION_ENABLED = @as(u32, 218170207);
pub const OID_DOT11_DSSS_OFDM_OPTION_IMPLEMENTED = @as(u32, 218170208);
pub const OID_DOT11_DSSS_OFDM_OPTION_ENABLED = @as(u32, 218170209);
pub const OID_DOT11_SHORT_SLOT_TIME_OPTION_IMPLEMENTED = @as(u32, 218170210);
pub const OID_DOT11_SHORT_SLOT_TIME_OPTION_ENABLED = @as(u32, 218170211);
pub const OID_DOT11_MAX_MAC_ADDRESS_STATES = @as(u32, 218170212);
pub const OID_DOT11_RECV_SENSITIVITY_LIST = @as(u32, 218170213);
pub const OID_DOT11_WME_IMPLEMENTED = @as(u32, 218170214);
pub const OID_DOT11_WME_ENABLED = @as(u32, 218170215);
pub const OID_DOT11_WME_AC_PARAMETERS = @as(u32, 218170216);
pub const OID_DOT11_WME_UPDATE_IE = @as(u32, 218170217);
pub const OID_DOT11_QOS_TX_QUEUES_SUPPORTED = @as(u32, 218170218);
pub const OID_DOT11_QOS_TX_DURATION = @as(u32, 218170219);
pub const OID_DOT11_QOS_TX_MEDIUM_TIME = @as(u32, 218170220);
pub const OID_DOT11_SUPPORTED_OFDM_FREQUENCY_LIST = @as(u32, 218170221);
pub const OID_DOT11_SUPPORTED_DSSS_CHANNEL_LIST = @as(u32, 218170222);
pub const DOT11_BSS_ENTRY_BYTE_ARRAY_REVISION_1 = @as(u32, 1);
pub const DOT11_POWER_SAVING_NO_POWER_SAVING = @as(u32, 0);
pub const DOT11_POWER_SAVING_FAST_PSP = @as(u32, 8);
pub const DOT11_POWER_SAVING_MAX_PSP = @as(u32, 16);
pub const DOT11_POWER_SAVING_MAXIMUM_LEVEL = @as(u32, 24);
pub const DOT11_SSID_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_MAC_ADDRESS_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_PMKID_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_STATISTICS_REVISION_1 = @as(u32, 1);
pub const DOT11_EXEMPT_NO_EXEMPTION = @as(u32, 0);
pub const DOT11_EXEMPT_ALWAYS = @as(u32, 1);
pub const DOT11_EXEMPT_ON_KEY_MAPPING_KEY_UNAVAILABLE = @as(u32, 2);
pub const DOT11_EXEMPT_UNICAST = @as(u32, 1);
pub const DOT11_EXEMPT_MULTICAST = @as(u32, 2);
pub const DOT11_EXEMPT_BOTH = @as(u32, 3);
pub const DOT11_PRIVACY_EXEMPTION_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_AUTH_ALGORITHM_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_AUTH_CIPHER_PAIR_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_CIPHER_ALGORITHM_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_CIPHER_DEFAULT_KEY_VALUE_REVISION_1 = @as(u32, 1);
pub const DOT11_CIPHER_KEY_MAPPING_KEY_VALUE_BYTE_ARRAY_REVISION_1 = @as(u32, 1);
pub const DOT11_ASSOCIATION_INFO_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_PHY_ID_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_EXTSTA_CAPABILITY_REVISION_1 = @as(u32, 1);
pub const DOT11_DATA_RATE_MAPPING_TABLE_REVISION_1 = @as(u32, 1);
pub const DOT11_COUNTRY_OR_REGION_STRING_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_PORT_STATE_NOTIFICATION_REVISION_1 = @as(u32, 1);
pub const DOT11_IBSS_PARAMS_REVISION_1 = @as(u32, 1);
pub const DOT11_QOS_PARAMS_REVISION_1 = @as(u32, 1);
pub const DOT11_ASSOCIATION_PARAMS_REVISION_1 = @as(u32, 1);
pub const DOT11_MAX_NUM_OF_FRAGMENTS = @as(u32, 16);
pub const DOT11_PRIORITY_CONTENTION = @as(u32, 0);
pub const DOT11_PRIORITY_CONTENTION_FREE = @as(u32, 1);
pub const DOT11_SERVICE_CLASS_REORDERABLE_MULTICAST = @as(u32, 0);
pub const DOT11_SERVICE_CLASS_STRICTLY_ORDERED = @as(u32, 1);
pub const DOT11_FLAGS_80211B_SHORT_PREAMBLE = @as(u32, 1);
pub const DOT11_FLAGS_80211B_PBCC = @as(u32, 2);
pub const DOT11_FLAGS_80211B_CHANNEL_AGILITY = @as(u32, 4);
pub const DOT11_FLAGS_PS_ON = @as(u32, 8);
pub const DOT11_FLAGS_80211G_DSSS_OFDM = @as(u32, 16);
pub const DOT11_FLAGS_80211G_USE_PROTECTION = @as(u32, 32);
pub const DOT11_FLAGS_80211G_NON_ERP_PRESENT = @as(u32, 64);
pub const DOT11_FLAGS_80211G_BARKER_PREAMBLE_MODE = @as(u32, 128);
pub const DOT11_WME_PACKET = @as(u32, 256);
pub const DOT11_PHY_ATTRIBUTES_REVISION_1 = @as(u32, 1);
pub const DOT11_EXTSTA_ATTRIBUTES_SAFEMODE_OID_SUPPORTED = @as(u32, 1);
pub const DOT11_EXTSTA_ATTRIBUTES_SAFEMODE_CERTIFIED = @as(u32, 2);
pub const DOT11_EXTSTA_ATTRIBUTES_SAFEMODE_RESERVED = @as(u32, 12);
pub const DOT11_EXTSTA_ATTRIBUTES_REVISION_1 = @as(u32, 1);
pub const DOT11_EXTSTA_ATTRIBUTES_REVISION_2 = @as(u32, 2);
pub const DOT11_EXTSTA_ATTRIBUTES_REVISION_3 = @as(u32, 3);
pub const DOT11_EXTSTA_ATTRIBUTES_REVISION_4 = @as(u32, 4);
pub const DOT11_SEND_CONTEXT_REVISION_1 = @as(u32, 1);
pub const DOT11_RECV_CONTEXT_REVISION_1 = @as(u32, 1);
pub const DOT11_STATUS_SUCCESS = @as(u32, 1);
pub const DOT11_STATUS_RETRY_LIMIT_EXCEEDED = @as(u32, 2);
pub const DOT11_STATUS_UNSUPPORTED_PRIORITY = @as(u32, 4);
pub const DOT11_STATUS_UNSUPPORTED_SERVICE_CLASS = @as(u32, 8);
pub const DOT11_STATUS_UNAVAILABLE_PRIORITY = @as(u32, 16);
pub const DOT11_STATUS_UNAVAILABLE_SERVICE_CLASS = @as(u32, 32);
pub const DOT11_STATUS_XMIT_MSDU_TIMER_EXPIRED = @as(u32, 64);
pub const DOT11_STATUS_UNAVAILABLE_BSS = @as(u32, 128);
pub const DOT11_STATUS_EXCESSIVE_DATA_LENGTH = @as(u32, 256);
pub const DOT11_STATUS_ENCRYPTION_FAILED = @as(u32, 512);
pub const DOT11_STATUS_WEP_KEY_UNAVAILABLE = @as(u32, 1024);
pub const DOT11_STATUS_ICV_VERIFIED = @as(u32, 2048);
pub const DOT11_STATUS_PACKET_REASSEMBLED = @as(u32, 4096);
pub const DOT11_STATUS_PACKET_NOT_REASSEMBLED = @as(u32, 8192);
pub const DOT11_STATUS_GENERATE_AUTH_FAILED = @as(u32, 16384);
pub const DOT11_STATUS_AUTH_NOT_VERIFIED = @as(u32, 32768);
pub const DOT11_STATUS_AUTH_VERIFIED = @as(u32, 65536);
pub const DOT11_STATUS_AUTH_FAILED = @as(u32, 131072);
pub const DOT11_STATUS_PS_LIFETIME_EXPIRED = @as(u32, 262144);
pub const DOT11_STATUS_RESET_CONFIRM = @as(u32, 4);
pub const DOT11_STATUS_SCAN_CONFIRM = @as(u32, 1);
pub const DOT11_STATUS_JOIN_CONFIRM = @as(u32, 2);
pub const DOT11_STATUS_START_CONFIRM = @as(u32, 3);
pub const DOT11_STATUS_AP_JOIN_CONFIRM = @as(u32, 5);
pub const DOT11_STATUS_MPDU_MAX_LENGTH_CHANGED = @as(u32, 6);
pub const DOT11_MPDU_MAX_LENGTH_INDICATION_REVISION_1 = @as(u32, 1);
pub const DOT11_ASSOCIATION_START_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_ENCAP_RFC_1042 = @as(u32, 1);
pub const DOT11_ENCAP_802_1H = @as(u32, 2);
pub const DOT11_ASSOC_STATUS_SUCCESS = @as(u32, 0);
pub const DOT11_ASSOCIATION_COMPLETION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_ASSOCIATION_COMPLETION_PARAMETERS_REVISION_2 = @as(u32, 2);
pub const DOT11_CONNECTION_START_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_CONNECTION_STATUS_SUCCESS = @as(u32, 0);
pub const DOT11_CONNECTION_COMPLETION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_ROAMING_START_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_ROAMING_COMPLETION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_DISASSOCIATION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_TKIPMIC_FAILURE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_PMKID_CANDIDATE_LIST_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_PHY_STATE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_LINK_QUALITY_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_EXTSTA_SEND_CONTEXT_REVISION_1 = @as(u32, 1);
pub const DOT11_EXTSTA_RECV_CONTEXT_REVISION_1 = @as(u32, 1);
pub const OID_DOT11_PRIVATE_OIDS_START = @as(u32, 218171136);
pub const OID_DOT11_CURRENT_ADDRESS = @as(u32, 218171138);
pub const OID_DOT11_PERMANENT_ADDRESS = @as(u32, 218171139);
pub const OID_DOT11_MULTICAST_LIST = @as(u32, 218171140);
pub const OID_DOT11_MAXIMUM_LIST_SIZE = @as(u32, 218171141);
pub const DOT11_EXTAP_ATTRIBUTES_REVISION_1 = @as(u32, 1);
pub const DOT11_INCOMING_ASSOC_STARTED_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_INCOMING_ASSOC_REQUEST_RECEIVED_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_ASSOC_ERROR_SOURCE_OS = @as(u32, 0);
pub const DOT11_ASSOC_ERROR_SOURCE_REMOTE = @as(u32, 1);
pub const DOT11_ASSOC_ERROR_SOURCE_OTHER = @as(u32, 255);
pub const DOT11_INCOMING_ASSOC_COMPLETION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_STOP_AP_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_STOP_AP_REASON_FREQUENCY_NOT_AVAILABLE = @as(u32, 1);
pub const DOT11_STOP_AP_REASON_CHANNEL_NOT_AVAILABLE = @as(u32, 2);
pub const DOT11_STOP_AP_REASON_AP_ACTIVE = @as(u32, 3);
pub const DOT11_STOP_AP_REASON_IHV_START = @as(u32, 4278190080);
pub const DOT11_STOP_AP_REASON_IHV_END = @as(u32, 4294967295);
pub const DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_CAN_SUSTAIN_AP_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_CAN_SUSTAIN_AP_REASON_IHV_START = @as(u32, 4278190080);
pub const DOT11_CAN_SUSTAIN_AP_REASON_IHV_END = @as(u32, 4294967295);
pub const DOT11_AVAILABLE_CHANNEL_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_AVAILABLE_FREQUENCY_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_DISASSOCIATE_PEER_REQUEST_REVISION_1 = @as(u32, 1);
pub const DOT11_INCOMING_ASSOC_DECISION_REVISION_1 = @as(u32, 1);
pub const DOT11_INCOMING_ASSOC_DECISION_REVISION_2 = @as(u32, 2);
pub const DOT11_ADDITIONAL_IE_REVISION_1 = @as(u32, 1);
pub const DOT11_EXTAP_SEND_CONTEXT_REVISION_1 = @as(u32, 1);
pub const DOT11_EXTAP_RECV_CONTEXT_REVISION_1 = @as(u32, 1);
pub const DOT11_PEER_INFO_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_VWIFI_COMBINATION_REVISION_1 = @as(u32, 1);
pub const DOT11_VWIFI_COMBINATION_REVISION_2 = @as(u32, 2);
pub const DOT11_VWIFI_COMBINATION_REVISION_3 = @as(u32, 3);
pub const DOT11_VWIFI_ATTRIBUTES_REVISION_1 = @as(u32, 1);
pub const DOT11_MAC_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_ATTRIBUTES_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_STATUS_SUCCESS = @as(u32, 0);
pub const DOT11_WFD_STATUS_FAILED_INFORMATION_IS_UNAVAILABLE = @as(u32, 1);
pub const DOT11_WFD_STATUS_FAILED_INCOMPATIBLE_PARAMETERS = @as(u32, 2);
pub const DOT11_WFD_STATUS_FAILED_LIMIT_REACHED = @as(u32, 3);
pub const DOT11_WFD_STATUS_FAILED_INVALID_PARAMETERS = @as(u32, 4);
pub const DOT11_WFD_STATUS_FAILED_UNABLE_TO_ACCOMODATE_REQUEST = @as(u32, 5);
pub const DOT11_WFD_STATUS_FAILED_PREVIOUS_PROTOCOL_ERROR = @as(u32, 6);
pub const DOT11_WFD_STATUS_FAILED_NO_COMMON_CHANNELS = @as(u32, 7);
pub const DOT11_WFD_STATUS_FAILED_UNKNOWN_WFD_GROUP = @as(u32, 8);
pub const DOT11_WFD_STATUS_FAILED_MATCHING_MAX_INTENT = @as(u32, 9);
pub const DOT11_WFD_STATUS_FAILED_INCOMPATIBLE_PROVISIONING_METHOD = @as(u32, 10);
pub const DOT11_WFD_STATUS_FAILED_REJECTED_BY_USER = @as(u32, 11);
pub const DOT11_WFD_STATUS_SUCCESS_ACCEPTED_BY_USER = @as(u32, 12);
pub const DOT11_WFD_MINOR_REASON_SUCCESS = @as(u32, 0);
pub const DOT11_WFD_MINOR_REASON_DISASSOCIATED_FROM_WLAN_CROSS_CONNECTION_POLICY = @as(u32, 1);
pub const DOT11_WFD_MINOR_REASON_DISASSOCIATED_NOT_MANAGED_INFRASTRUCTURE_CAPABLE = @as(u32, 2);
pub const DOT11_WFD_MINOR_REASON_DISASSOCIATED_WFD_COEXISTENCE_POLICY = @as(u32, 3);
pub const DOT11_WFD_MINOR_REASON_DISASSOCIATED_INFRASTRUCTURE_MANAGED_POLICY = @as(u32, 4);
pub const DOT11_WPS_VERSION_1_0 = @as(u32, 1);
pub const DOT11_WPS_VERSION_2_0 = @as(u32, 2);
pub const DOT11_WFD_DEVICE_CAPABILITY_SERVICE_DISCOVERY = @as(u32, 1);
pub const DOT11_WFD_DEVICE_CAPABILITY_P2P_CLIENT_DISCOVERABILITY = @as(u32, 2);
pub const DOT11_WFD_DEVICE_CAPABILITY_CONCURRENT_OPERATION = @as(u32, 4);
pub const DOT11_WFD_DEVICE_CAPABILITY_P2P_INFRASTRUCTURE_MANAGED = @as(u32, 8);
pub const DOT11_WFD_DEVICE_CAPABILITY_P2P_DEVICE_LIMIT = @as(u32, 16);
pub const DOT11_WFD_DEVICE_CAPABILITY_P2P_INVITATION_PROCEDURE = @as(u32, 32);
pub const DOT11_WFD_DEVICE_CAPABILITY_RESERVED_6 = @as(u32, 64);
pub const DOT11_WFD_DEVICE_CAPABILITY_RESERVED_7 = @as(u32, 128);
pub const DOT11_WFD_GROUP_CAPABILITY_NONE = @as(u32, 0);
pub const DOT11_WFD_GROUP_CAPABILITY_GROUP_OWNER = @as(u32, 1);
pub const DOT11_WFD_GROUP_CAPABILITY_PERSISTENT_GROUP = @as(u32, 2);
pub const DOT11_WFD_GROUP_CAPABILITY_GROUP_LIMIT_REACHED = @as(u32, 4);
pub const DOT11_WFD_GROUP_CAPABILITY_INTRABSS_DISTRIBUTION_SUPPORTED = @as(u32, 8);
pub const DOT11_WFD_GROUP_CAPABILITY_CROSS_CONNECTION_SUPPORTED = @as(u32, 16);
pub const DOT11_WFD_GROUP_CAPABILITY_PERSISTENT_RECONNECT_SUPPORTED = @as(u32, 32);
pub const DOT11_WFD_GROUP_CAPABILITY_IN_GROUP_FORMATION = @as(u32, 64);
pub const DOT11_WFD_GROUP_CAPABILITY_RESERVED_7 = @as(u32, 128);
pub const DOT11_WFD_GROUP_CAPABILITY_EAPOL_KEY_IP_ADDRESS_ALLOCATION_SUPPORTED = @as(u32, 128);
pub const DOT11_WPS_DEVICE_NAME_MAX_LENGTH = @as(u32, 32);
pub const DOT11_WPS_MAX_PASSKEY_LENGTH = @as(u32, 8);
pub const DOT11_WPS_MAX_MODEL_NAME_LENGTH = @as(u32, 32);
pub const DOT11_WPS_MAX_MODEL_NUMBER_LENGTH = @as(u32, 32);
pub const WFDSVC_CONNECTION_CAPABILITY_NEW = @as(u32, 1);
pub const WFDSVC_CONNECTION_CAPABILITY_CLIENT = @as(u32, 2);
pub const WFDSVC_CONNECTION_CAPABILITY_GO = @as(u32, 4);
pub const DOT11_WFD_DISCOVER_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_DISCOVER_COMPLETE_MAX_LIST_SIZE = @as(u32, 128);
pub const DOT11_GO_NEGOTIATION_REQUEST_SEND_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_RECEIVED_GO_NEGOTIATION_REQUEST_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_GO_NEGOTIATION_RESPONSE_SEND_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_RECEIVED_GO_NEGOTIATION_RESPONSE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_GO_NEGOTIATION_CONFIRMATION_SEND_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_RECEIVED_GO_NEGOTIATION_CONFIRMATION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_INVITATION_REQUEST_SEND_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_RECEIVED_INVITATION_REQUEST_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_INVITATION_RESPONSE_SEND_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_RECEIVED_INVITATION_RESPONSE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_PROVISION_DISCOVERY_REQUEST_SEND_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_RECEIVED_PROVISION_DISCOVERY_REQUEST_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_PROVISION_DISCOVERY_RESPONSE_SEND_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_RECEIVED_PROVISION_DISCOVERY_RESPONSE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_ANQP_QUERY_COMPLETE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_DEVICE_CAPABILITY_CONFIG_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG_REVISION_2 = @as(u32, 2);
pub const DOT11_WFD_DEVICE_INFO_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_SECONDARY_DEVICE_TYPE_LIST_REVISION_1 = @as(u32, 1);
pub const DISCOVERY_FILTER_BITMASK_DEVICE = @as(u32, 1);
pub const DISCOVERY_FILTER_BITMASK_GO = @as(u32, 2);
pub const DISCOVERY_FILTER_BITMASK_ANY = @as(u32, 15);
pub const DOT11_WFD_DISCOVER_REQUEST_REVISION_1 = @as(u32, 1);
pub const DOT11_DEVICE_ENTRY_BYTE_ARRAY_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_DEVICE_NOT_DISCOVERABLE = @as(u32, 0);
pub const DOT11_WFD_DEVICE_AUTO_AVAILABILITY = @as(u32, 16);
pub const DOT11_WFD_DEVICE_HIGH_AVAILABILITY = @as(u32, 24);
pub const DOT11_WFD_ADDITIONAL_IE_REVISION_1 = @as(u32, 1);
pub const DOT11_SEND_GO_NEGOTIATION_REQUEST_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_SEND_GO_NEGOTIATION_RESPONSE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_SEND_GO_NEGOTIATION_CONFIRMATION_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_SEND_INVITATION_REQUEST_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_SEND_INVITATION_RESPONSE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_SEND_PROVISION_DISCOVERY_REQUEST_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_SEND_PROVISION_DISCOVERY_RESPONSE_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_DEVICE_LISTEN_CHANNEL_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_GROUP_START_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_WFD_GROUP_JOIN_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_POWER_MGMT_AUTO_MODE_ENABLED_REVISION_1 = @as(u32, 1);
pub const DOT11_POWER_MGMT_MODE_STATUS_INFO_REVISION_1 = @as(u32, 1);
pub const DOT11_MAX_CHANNEL_HINTS = @as(u32, 4);
pub const DOT11_INVALID_CHANNEL_NUMBER = @as(u32, 0);
pub const DOT11_NLO_FLAG_STOP_NLO_INDICATION = @as(u32, 1);
pub const DOT11_NLO_FLAG_SCAN_ON_AOAC_PLATFORM = @as(u32, 2);
pub const DOT11_NLO_FLAG_SCAN_AT_SYSTEM_RESUME = @as(u32, 4);
pub const DOT11_OFFLOAD_NETWORK_LIST_REVISION_1 = @as(u32, 1);
pub const DOT11_OFFLOAD_NETWORK_STATUS_PARAMETERS_REVISION_1 = @as(u32, 1);
pub const DOT11_MANUFACTURING_TEST_REVISION_1 = @as(u32, 1);
pub const DOT11_MANUFACTURING_CALLBACK_REVISION_1 = @as(u32, 1);
pub const DOT11_SSID_MAX_LENGTH = @as(u32, 32);
pub const DOT11_OI_MAX_LENGTH = @as(u32, 5);
pub const DOT11_OI_MIN_LENGTH = @as(u32, 3);
pub const DevProp_PciRootBus_SecondaryInterface_PciConventional = @as(u32, 0);
pub const DevProp_PciRootBus_SecondaryInterface_PciXMode1 = @as(u32, 1);
pub const DevProp_PciRootBus_SecondaryInterface_PciXMode2 = @as(u32, 2);
pub const DevProp_PciRootBus_SecondaryInterface_PciExpress = @as(u32, 3);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_Conventional_33Mhz = @as(u32, 0);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_Conventional_66Mhz = @as(u32, 1);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_66Mhz = @as(u32, 2);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_100Mhz = @as(u32, 3);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_133Mhz = @as(u32, 4);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_66Mhz = @as(u32, 5);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_100Mhz = @as(u32, 6);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_133Mhz = @as(u32, 7);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_66Mhz = @as(u32, 8);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_100Mhz = @as(u32, 9);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_133Mhz = @as(u32, 10);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_66Mhz = @as(u32, 11);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_100Mhz = @as(u32, 12);
pub const DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_133Mhz = @as(u32, 13);
pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_Conventional_33Mhz = @as(u32, 1);
pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_Conventional_66Mhz = @as(u32, 2);
pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_66Mhz = @as(u32, 4);
pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_133Mhz = @as(u32, 8);
pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_266Mhz = @as(u32, 16);
pub const DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_533Mhz = @as(u32, 32);
pub const DevProp_PciRootBus_BusWidth_32Bits = @as(u32, 0);
pub const DevProp_PciRootBus_BusWidth_64Bits = @as(u32, 1);
pub const DevProp_PciDevice_DeviceType_PciConventional = @as(u32, 0);
pub const DevProp_PciDevice_DeviceType_PciX = @as(u32, 1);
pub const DevProp_PciDevice_DeviceType_PciExpressEndpoint = @as(u32, 2);
pub const DevProp_PciDevice_DeviceType_PciExpressLegacyEndpoint = @as(u32, 3);
pub const DevProp_PciDevice_DeviceType_PciExpressRootComplexIntegratedEndpoint = @as(u32, 4);
pub const DevProp_PciDevice_DeviceType_PciExpressTreatedAsPci = @as(u32, 5);
pub const DevProp_PciDevice_BridgeType_PciConventional = @as(u32, 6);
pub const DevProp_PciDevice_BridgeType_PciX = @as(u32, 7);
pub const DevProp_PciDevice_BridgeType_PciExpressRootPort = @as(u32, 8);
pub const DevProp_PciDevice_BridgeType_PciExpressUpstreamSwitchPort = @as(u32, 9);
pub const DevProp_PciDevice_BridgeType_PciExpressDownstreamSwitchPort = @as(u32, 10);
pub const DevProp_PciDevice_BridgeType_PciExpressToPciXBridge = @as(u32, 11);
pub const DevProp_PciDevice_BridgeType_PciXToExpressBridge = @as(u32, 12);
pub const DevProp_PciDevice_BridgeType_PciExpressTreatedAsPci = @as(u32, 13);
pub const DevProp_PciDevice_BridgeType_PciExpressEventCollector = @as(u32, 14);
pub const DevProp_PciDevice_CurrentSpeedAndMode_Pci_Conventional_33MHz = @as(u32, 0);
pub const DevProp_PciDevice_CurrentSpeedAndMode_Pci_Conventional_66MHz = @as(u32, 1);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode_Conventional_Pci = @as(u32, 0);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_66Mhz = @as(u32, 1);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_100Mhz = @as(u32, 2);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_133MHZ = @as(u32, 3);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_66Mhz = @as(u32, 5);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_100Mhz = @as(u32, 6);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_133Mhz = @as(u32, 7);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_66MHz = @as(u32, 9);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_100MHz = @as(u32, 10);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_133MHz = @as(u32, 11);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_66MHz = @as(u32, 13);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_100MHz = @as(u32, 14);
pub const DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_133MHz = @as(u32, 15);
pub const DevProp_PciExpressDevice_PayloadOrRequestSize_128Bytes = @as(u32, 0);
pub const DevProp_PciExpressDevice_PayloadOrRequestSize_256Bytes = @as(u32, 1);
pub const DevProp_PciExpressDevice_PayloadOrRequestSize_512Bytes = @as(u32, 2);
pub const DevProp_PciExpressDevice_PayloadOrRequestSize_1024Bytes = @as(u32, 3);
pub const DevProp_PciExpressDevice_PayloadOrRequestSize_2048Bytes = @as(u32, 4);
pub const DevProp_PciExpressDevice_PayloadOrRequestSize_4096Bytes = @as(u32, 5);
pub const DevProp_PciExpressDevice_LinkSpeed_TwoAndHalf_Gbps = @as(u32, 1);
pub const DevProp_PciExpressDevice_LinkSpeed_Five_Gbps = @as(u32, 2);
pub const DevProp_PciExpressDevice_LinkWidth_By_1 = @as(u32, 1);
pub const DevProp_PciExpressDevice_LinkWidth_By_2 = @as(u32, 2);
pub const DevProp_PciExpressDevice_LinkWidth_By_4 = @as(u32, 4);
pub const DevProp_PciExpressDevice_LinkWidth_By_8 = @as(u32, 8);
pub const DevProp_PciExpressDevice_LinkWidth_By_12 = @as(u32, 12);
pub const DevProp_PciExpressDevice_LinkWidth_By_16 = @as(u32, 16);
pub const DevProp_PciExpressDevice_LinkWidth_By_32 = @as(u32, 32);
pub const DevProp_PciExpressDevice_Spec_Version_10 = @as(u32, 1);
pub const DevProp_PciExpressDevice_Spec_Version_11 = @as(u32, 2);
pub const DevProp_PciDevice_InterruptType_LineBased = @as(u32, 1);
pub const DevProp_PciDevice_InterruptType_Msi = @as(u32, 2);
pub const DevProp_PciDevice_InterruptType_MsiX = @as(u32, 4);
pub const DevProp_PciDevice_SriovSupport_Ok = @as(u32, 0);
pub const DevProp_PciDevice_SriovSupport_MissingAcs = @as(u32, 1);
pub const DevProp_PciDevice_SriovSupport_MissingPfDriver = @as(u32, 2);
pub const DevProp_PciDevice_SriovSupport_NoBusResource = @as(u32, 3);
pub const DevProp_PciDevice_SriovSupport_DidntGetVfBarSpace = @as(u32, 4);
pub const DevProp_PciDevice_AcsSupport_Present = @as(u32, 0);
pub const DevProp_PciDevice_AcsSupport_NotNeeded = @as(u32, 1);
pub const DevProp_PciDevice_AcsSupport_Missing = @as(u32, 2);
pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_NotSupported = @as(u32, 0);
pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_SingleFunctionSupported = @as(u32, 1);
pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_NoP2PSupported = @as(u32, 2);
pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_Supported = @as(u32, 3);
pub const DevProp_PciDevice_AcsCompatibleUpHierarchy_Enhanced = @as(u32, 4);
pub const WLAN_API_VERSION_1_0 = @as(u32, 1);
pub const WLAN_API_VERSION_2_0 = @as(u32, 2);
pub const WLAN_API_VERSION = @as(u32, 2);
pub const WLAN_MAX_NAME_LENGTH = @as(u32, 256);
pub const WLAN_PROFILE_GROUP_POLICY = @as(u32, 1);
pub const WLAN_PROFILE_USER = @as(u32, 2);
pub const WLAN_PROFILE_GET_PLAINTEXT_KEY = @as(u32, 4);
pub const WLAN_PROFILE_CONNECTION_MODE_SET_BY_CLIENT = @as(u32, 65536);
pub const WLAN_PROFILE_CONNECTION_MODE_AUTO = @as(u32, 131072);
pub const DOT11_PSD_IE_MAX_DATA_SIZE = @as(u32, 240);
pub const DOT11_PSD_IE_MAX_ENTRY_NUMBER = @as(u32, 5);
pub const WLAN_REASON_CODE_NETWORK_NOT_COMPATIBLE = @as(u32, 131073);
pub const WLAN_REASON_CODE_PROFILE_NOT_COMPATIBLE = @as(u32, 131074);
pub const WLAN_REASON_CODE_NO_AUTO_CONNECTION = @as(u32, 163841);
pub const WLAN_REASON_CODE_NOT_VISIBLE = @as(u32, 163842);
pub const WLAN_REASON_CODE_GP_DENIED = @as(u32, 163843);
pub const WLAN_REASON_CODE_USER_DENIED = @as(u32, 163844);
pub const WLAN_REASON_CODE_BSS_TYPE_NOT_ALLOWED = @as(u32, 163845);
pub const WLAN_REASON_CODE_IN_FAILED_LIST = @as(u32, 163846);
pub const WLAN_REASON_CODE_IN_BLOCKED_LIST = @as(u32, 163847);
pub const WLAN_REASON_CODE_SSID_LIST_TOO_LONG = @as(u32, 163848);
pub const WLAN_REASON_CODE_CONNECT_CALL_FAIL = @as(u32, 163849);
pub const WLAN_REASON_CODE_SCAN_CALL_FAIL = @as(u32, 163850);
pub const WLAN_REASON_CODE_NETWORK_NOT_AVAILABLE = @as(u32, 163851);
pub const WLAN_REASON_CODE_PROFILE_CHANGED_OR_DELETED = @as(u32, 163852);
pub const WLAN_REASON_CODE_KEY_MISMATCH = @as(u32, 163853);
pub const WLAN_REASON_CODE_USER_NOT_RESPOND = @as(u32, 163854);
pub const WLAN_REASON_CODE_AP_PROFILE_NOT_ALLOWED_FOR_CLIENT = @as(u32, 163855);
pub const WLAN_REASON_CODE_AP_PROFILE_NOT_ALLOWED = @as(u32, 163856);
pub const WLAN_REASON_CODE_HOTSPOT2_PROFILE_DENIED = @as(u32, 163857);
pub const WLAN_REASON_CODE_INVALID_PROFILE_SCHEMA = @as(u32, 524289);
pub const WLAN_REASON_CODE_PROFILE_MISSING = @as(u32, 524290);
pub const WLAN_REASON_CODE_INVALID_PROFILE_NAME = @as(u32, 524291);
pub const WLAN_REASON_CODE_INVALID_PROFILE_TYPE = @as(u32, 524292);
pub const WLAN_REASON_CODE_INVALID_PHY_TYPE = @as(u32, 524293);
pub const WLAN_REASON_CODE_MSM_SECURITY_MISSING = @as(u32, 524294);
pub const WLAN_REASON_CODE_IHV_SECURITY_NOT_SUPPORTED = @as(u32, 524295);
pub const WLAN_REASON_CODE_IHV_OUI_MISMATCH = @as(u32, 524296);
pub const WLAN_REASON_CODE_IHV_OUI_MISSING = @as(u32, 524297);
pub const WLAN_REASON_CODE_IHV_SETTINGS_MISSING = @as(u32, 524298);
pub const WLAN_REASON_CODE_CONFLICT_SECURITY = @as(u32, 524299);
pub const WLAN_REASON_CODE_SECURITY_MISSING = @as(u32, 524300);
pub const WLAN_REASON_CODE_INVALID_BSS_TYPE = @as(u32, 524301);
pub const WLAN_REASON_CODE_INVALID_ADHOC_CONNECTION_MODE = @as(u32, 524302);
pub const WLAN_REASON_CODE_NON_BROADCAST_SET_FOR_ADHOC = @as(u32, 524303);
pub const WLAN_REASON_CODE_AUTO_SWITCH_SET_FOR_ADHOC = @as(u32, 524304);
pub const WLAN_REASON_CODE_AUTO_SWITCH_SET_FOR_MANUAL_CONNECTION = @as(u32, 524305);
pub const WLAN_REASON_CODE_IHV_SECURITY_ONEX_MISSING = @as(u32, 524306);
pub const WLAN_REASON_CODE_PROFILE_SSID_INVALID = @as(u32, 524307);
pub const WLAN_REASON_CODE_TOO_MANY_SSID = @as(u32, 524308);
pub const WLAN_REASON_CODE_IHV_CONNECTIVITY_NOT_SUPPORTED = @as(u32, 524309);
pub const WLAN_REASON_CODE_BAD_MAX_NUMBER_OF_CLIENTS_FOR_AP = @as(u32, 524310);
pub const WLAN_REASON_CODE_INVALID_CHANNEL = @as(u32, 524311);
pub const WLAN_REASON_CODE_OPERATION_MODE_NOT_SUPPORTED = @as(u32, 524312);
pub const WLAN_REASON_CODE_AUTO_AP_PROFILE_NOT_ALLOWED = @as(u32, 524313);
pub const WLAN_REASON_CODE_AUTO_CONNECTION_NOT_ALLOWED = @as(u32, 524314);
pub const WLAN_REASON_CODE_HOTSPOT2_PROFILE_NOT_ALLOWED = @as(u32, 524315);
pub const WLAN_REASON_CODE_UNSUPPORTED_SECURITY_SET_BY_OS = @as(u32, 196609);
pub const WLAN_REASON_CODE_UNSUPPORTED_SECURITY_SET = @as(u32, 196610);
pub const WLAN_REASON_CODE_BSS_TYPE_UNMATCH = @as(u32, 196611);
pub const WLAN_REASON_CODE_PHY_TYPE_UNMATCH = @as(u32, 196612);
pub const WLAN_REASON_CODE_DATARATE_UNMATCH = @as(u32, 196613);
pub const WLAN_REASON_CODE_USER_CANCELLED = @as(u32, 229377);
pub const WLAN_REASON_CODE_ASSOCIATION_FAILURE = @as(u32, 229378);
pub const WLAN_REASON_CODE_ASSOCIATION_TIMEOUT = @as(u32, 229379);
pub const WLAN_REASON_CODE_PRE_SECURITY_FAILURE = @as(u32, 229380);
pub const WLAN_REASON_CODE_START_SECURITY_FAILURE = @as(u32, 229381);
pub const WLAN_REASON_CODE_SECURITY_FAILURE = @as(u32, 229382);
pub const WLAN_REASON_CODE_SECURITY_TIMEOUT = @as(u32, 229383);
pub const WLAN_REASON_CODE_ROAMING_FAILURE = @as(u32, 229384);
pub const WLAN_REASON_CODE_ROAMING_SECURITY_FAILURE = @as(u32, 229385);
pub const WLAN_REASON_CODE_ADHOC_SECURITY_FAILURE = @as(u32, 229386);
pub const WLAN_REASON_CODE_DRIVER_DISCONNECTED = @as(u32, 229387);
pub const WLAN_REASON_CODE_DRIVER_OPERATION_FAILURE = @as(u32, 229388);
pub const WLAN_REASON_CODE_IHV_NOT_AVAILABLE = @as(u32, 229389);
pub const WLAN_REASON_CODE_IHV_NOT_RESPONDING = @as(u32, 229390);
pub const WLAN_REASON_CODE_DISCONNECT_TIMEOUT = @as(u32, 229391);
pub const WLAN_REASON_CODE_INTERNAL_FAILURE = @as(u32, 229392);
pub const WLAN_REASON_CODE_UI_REQUEST_TIMEOUT = @as(u32, 229393);
pub const WLAN_REASON_CODE_TOO_MANY_SECURITY_ATTEMPTS = @as(u32, 229394);
pub const WLAN_REASON_CODE_AP_STARTING_FAILURE = @as(u32, 229395);
pub const WLAN_REASON_CODE_NO_VISIBLE_AP = @as(u32, 229396);
pub const WLAN_REASON_CODE_MSMSEC_MIN = @as(u32, 262144);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_KEY_INDEX = @as(u32, 262145);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_PSK_PRESENT = @as(u32, 262146);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_KEY_LENGTH = @as(u32, 262147);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_PSK_LENGTH = @as(u32, 262148);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_NO_AUTH_CIPHER_SPECIFIED = @as(u32, 262149);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_TOO_MANY_AUTH_CIPHER_SPECIFIED = @as(u32, 262150);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_DUPLICATE_AUTH_CIPHER = @as(u32, 262151);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_RAWDATA_INVALID = @as(u32, 262152);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_AUTH_CIPHER = @as(u32, 262153);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_ONEX_DISABLED = @as(u32, 262154);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_ONEX_ENABLED = @as(u32, 262155);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PMKCACHE_MODE = @as(u32, 262156);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PMKCACHE_SIZE = @as(u32, 262157);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PMKCACHE_TTL = @as(u32, 262158);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PREAUTH_MODE = @as(u32, 262159);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_PREAUTH_THROTTLE = @as(u32, 262160);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_PREAUTH_ONLY_ENABLED = @as(u32, 262161);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_NETWORK = @as(u32, 262162);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_NIC = @as(u32, 262163);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE = @as(u32, 262164);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_DISCOVERY = @as(u32, 262165);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_PASSPHRASE_CHAR = @as(u32, 262166);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_KEYMATERIAL_CHAR = @as(u32, 262167);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_WRONG_KEYTYPE = @as(u32, 262168);
pub const WLAN_REASON_CODE_MSMSEC_MIXED_CELL = @as(u32, 262169);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_AUTH_TIMERS_INVALID = @as(u32, 262170);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_INVALID_GKEY_INTV = @as(u32, 262171);
pub const WLAN_REASON_CODE_MSMSEC_TRANSITION_NETWORK = @as(u32, 262172);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_KEY_UNMAPPED_CHAR = @as(u32, 262173);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE_AUTH = @as(u32, 262174);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE_CIPHER = @as(u32, 262175);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_SAFE_MODE = @as(u32, 262176);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE_SAFE_MODE_NIC = @as(u32, 262177);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_PROFILE_SAFE_MODE_NW = @as(u32, 262178);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_UNSUPPORTED_AUTH = @as(u32, 262179);
pub const WLAN_REASON_CODE_MSMSEC_PROFILE_UNSUPPORTED_CIPHER = @as(u32, 262180);
pub const WLAN_REASON_CODE_MSMSEC_CAPABILITY_MFP_NW_NIC = @as(u32, 262181);
pub const WLAN_REASON_CODE_MSMSEC_UI_REQUEST_FAILURE = @as(u32, 294913);
pub const WLAN_REASON_CODE_MSMSEC_AUTH_START_TIMEOUT = @as(u32, 294914);
pub const WLAN_REASON_CODE_MSMSEC_AUTH_SUCCESS_TIMEOUT = @as(u32, 294915);
pub const WLAN_REASON_CODE_MSMSEC_KEY_START_TIMEOUT = @as(u32, 294916);
pub const WLAN_REASON_CODE_MSMSEC_KEY_SUCCESS_TIMEOUT = @as(u32, 294917);
pub const WLAN_REASON_CODE_MSMSEC_M3_MISSING_KEY_DATA = @as(u32, 294918);
pub const WLAN_REASON_CODE_MSMSEC_M3_MISSING_IE = @as(u32, 294919);
pub const WLAN_REASON_CODE_MSMSEC_M3_MISSING_GRP_KEY = @as(u32, 294920);
pub const WLAN_REASON_CODE_MSMSEC_PR_IE_MATCHING = @as(u32, 294921);
pub const WLAN_REASON_CODE_MSMSEC_SEC_IE_MATCHING = @as(u32, 294922);
pub const WLAN_REASON_CODE_MSMSEC_NO_PAIRWISE_KEY = @as(u32, 294923);
pub const WLAN_REASON_CODE_MSMSEC_G1_MISSING_KEY_DATA = @as(u32, 294924);
pub const WLAN_REASON_CODE_MSMSEC_G1_MISSING_GRP_KEY = @as(u32, 294925);
pub const WLAN_REASON_CODE_MSMSEC_PEER_INDICATED_INSECURE = @as(u32, 294926);
pub const WLAN_REASON_CODE_MSMSEC_NO_AUTHENTICATOR = @as(u32, 294927);
pub const WLAN_REASON_CODE_MSMSEC_NIC_FAILURE = @as(u32, 294928);
pub const WLAN_REASON_CODE_MSMSEC_CANCELLED = @as(u32, 294929);
pub const WLAN_REASON_CODE_MSMSEC_KEY_FORMAT = @as(u32, 294930);
pub const WLAN_REASON_CODE_MSMSEC_DOWNGRADE_DETECTED = @as(u32, 294931);
pub const WLAN_REASON_CODE_MSMSEC_PSK_MISMATCH_SUSPECTED = @as(u32, 294932);
pub const WLAN_REASON_CODE_MSMSEC_FORCED_FAILURE = @as(u32, 294933);
pub const WLAN_REASON_CODE_MSMSEC_M3_TOO_MANY_RSNIE = @as(u32, 294934);
pub const WLAN_REASON_CODE_MSMSEC_M2_MISSING_KEY_DATA = @as(u32, 294935);
pub const WLAN_REASON_CODE_MSMSEC_M2_MISSING_IE = @as(u32, 294936);
pub const WLAN_REASON_CODE_MSMSEC_AUTH_WCN_COMPLETED = @as(u32, 294937);
pub const WLAN_REASON_CODE_MSMSEC_M3_MISSING_MGMT_GRP_KEY = @as(u32, 294938);
pub const WLAN_REASON_CODE_MSMSEC_G1_MISSING_MGMT_GRP_KEY = @as(u32, 294939);
pub const WLAN_REASON_CODE_MSMSEC_MAX = @as(u32, 327679);
pub const WLAN_AVAILABLE_NETWORK_CONNECTED = @as(u32, 1);
pub const WLAN_AVAILABLE_NETWORK_HAS_PROFILE = @as(u32, 2);
pub const WLAN_AVAILABLE_NETWORK_CONSOLE_USER_PROFILE = @as(u32, 4);
pub const WLAN_AVAILABLE_NETWORK_INTERWORKING_SUPPORTED = @as(u32, 8);
pub const WLAN_AVAILABLE_NETWORK_HOTSPOT2_ENABLED = @as(u32, 16);
pub const WLAN_AVAILABLE_NETWORK_ANQP_SUPPORTED = @as(u32, 32);
pub const WLAN_AVAILABLE_NETWORK_HOTSPOT2_DOMAIN = @as(u32, 64);
pub const WLAN_AVAILABLE_NETWORK_HOTSPOT2_ROAMING = @as(u32, 128);
pub const WLAN_AVAILABLE_NETWORK_AUTO_CONNECT_FAILED = @as(u32, 256);
pub const WLAN_AVAILABLE_NETWORK_INCLUDE_ALL_ADHOC_PROFILES = @as(u32, 1);
pub const WLAN_AVAILABLE_NETWORK_INCLUDE_ALL_MANUAL_HIDDEN_PROFILES = @as(u32, 2);
pub const WLAN_MAX_PHY_TYPE_NUMBER = @as(u32, 8);
pub const WLAN_MAX_PHY_INDEX = @as(u32, 64);
pub const WLAN_CONNECTION_HIDDEN_NETWORK = @as(u32, 1);
pub const WLAN_CONNECTION_ADHOC_JOIN_ONLY = @as(u32, 2);
pub const WLAN_CONNECTION_IGNORE_PRIVACY_BIT = @as(u32, 4);
pub const WLAN_CONNECTION_EAPOL_PASSTHROUGH = @as(u32, 8);
pub const WLAN_CONNECTION_PERSIST_DISCOVERY_PROFILE = @as(u32, 16);
pub const WLAN_CONNECTION_PERSIST_DISCOVERY_PROFILE_CONNECTION_MODE_AUTO = @as(u32, 32);
pub const WLAN_CONNECTION_PERSIST_DISCOVERY_PROFILE_OVERWRITE_EXISTING = @as(u32, 64);
pub const WLAN_NOTIFICATION_SOURCE_NONE = @as(u32, 0);
pub const WLAN_NOTIFICATION_SOURCE_ALL = @as(u32, 65535);
pub const WLAN_NOTIFICATION_SOURCE_ACM = @as(u32, 8);
pub const WLAN_NOTIFICATION_SOURCE_MSM = @as(u32, 16);
pub const WLAN_NOTIFICATION_SOURCE_SECURITY = @as(u32, 32);
pub const WLAN_NOTIFICATION_SOURCE_IHV = @as(u32, 64);
pub const WLAN_NOTIFICATION_SOURCE_HNWK = @as(u32, 128);
pub const WLAN_NOTIFICATION_SOURCE_ONEX = @as(u32, 4);
pub const WLAN_NOTIFICATION_SOURCE_DEVICE_SERVICE = @as(u32, 2048);
pub const WFD_API_VERSION_1_0 = @as(u32, 1);
pub const WFD_API_VERSION = @as(u32, 1);
pub const WLAN_UI_API_VERSION = @as(u32, 1);
pub const WLAN_UI_API_INITIAL_VERSION = @as(u32, 1);
pub const GUID_DEVINTERFACE_WIFIDIRECT_DEVICE = Guid.initString("439b20af-8955-405b-99f0-a62af0c68d43");
pub const GUID_AEPSERVICE_WIFIDIRECT_DEVICE = Guid.initString("cc29827c-9caf-4928-99a9-18f7c2381389");
pub const GUID_DEVINTERFACE_ASP_INFRA_DEVICE = Guid.initString("ff823995-7a72-4c80-8757-c67ee13d1a49");
pub const DEVPKEY_WiFiDirect_DeviceAddress = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 1 };
pub const DEVPKEY_WiFiDirect_InterfaceAddress = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 2 };
pub const DEVPKEY_WiFiDirect_InterfaceGuid = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 3 };
pub const DEVPKEY_WiFiDirect_GroupId = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 4 };
pub const DEVPKEY_WiFiDirect_IsConnected = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 5 };
pub const DEVPKEY_WiFiDirect_IsVisible = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 6 };
pub const DEVPKEY_WiFiDirect_IsLegacyDevice = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 7 };
pub const DEVPKEY_WiFiDirect_MiracastVersion = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 8 };
pub const DEVPKEY_WiFiDirect_IsMiracastLCPSupported = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 9 };
pub const DEVPKEY_WiFiDirect_Services = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 10 };
pub const DEVPKEY_WiFiDirect_SupportedChannelList = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 11 };
pub const DEVPKEY_WiFiDirect_InformationElements = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 12 };
pub const DEVPKEY_WiFiDirect_DeviceAddressCopy = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 13 };
pub const DEVPKEY_WiFiDirect_IsRecentlyAssociated = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 14 };
pub const DEVPKEY_WiFiDirect_Service_Aeps = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 15 };
pub const DEVPKEY_WiFiDirect_NoMiracastAutoProject = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 16 };
pub const DEVPKEY_InfraCast_Supported = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 17 };
pub const DEVPKEY_InfraCast_StreamSecuritySupported = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 18 };
pub const DEVPKEY_InfraCast_AccessPointBssid = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 19 };
pub const DEVPKEY_InfraCast_SinkHostName = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 20 };
pub const DEVPKEY_InfraCast_ChallengeAep = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 21 };
pub const DEVPKEY_WiFiDirect_IsDMGCapable = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 22 };
pub const DEVPKEY_InfraCast_DevnodeAep = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 23 };
pub const DEVPKEY_WiFiDirect_FoundWsbService = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 24 };
pub const DEVPKEY_InfraCast_HostName_ResolutionMode = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 25 };
pub const DEVPKEY_InfraCast_SinkIpAddress = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 26 };
pub const DEVPKEY_WiFiDirect_TransientAssociation = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 27 };
pub const DEVPKEY_WiFiDirect_LinkQuality = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 28 };
pub const DEVPKEY_InfraCast_PinSupported = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 29 };
pub const DEVPKEY_InfraCast_RtspTcpConnectionParametersSupported = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 30 };
pub const DEVPKEY_WiFiDirect_Miracast_SessionMgmtControlPort = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 31 };
pub const DEVPKEY_WiFiDirect_RtspTcpConnectionParametersSupported = PROPERTYKEY { .fmtid = Guid.initString("1506935d-e3e7-450f-8637-82233ebe5f6e"), .pid = 32 };
pub const DEVPKEY_WiFiDirectServices_ServiceAddress = PROPERTYKEY { .fmtid = Guid.initString("31b37743-7c5e-4005-93e6-e953f92b82e9"), .pid = 2 };
pub const DEVPKEY_WiFiDirectServices_ServiceName = PROPERTYKEY { .fmtid = Guid.initString("31b37743-7c5e-4005-93e6-e953f92b82e9"), .pid = 3 };
pub const DEVPKEY_WiFiDirectServices_ServiceInformation = PROPERTYKEY { .fmtid = Guid.initString("31b37743-7c5e-4005-93e6-e953f92b82e9"), .pid = 4 };
pub const DEVPKEY_WiFiDirectServices_AdvertisementId = PROPERTYKEY { .fmtid = Guid.initString("31b37743-7c5e-4005-93e6-e953f92b82e9"), .pid = 5 };
pub const DEVPKEY_WiFiDirectServices_ServiceConfigMethods = PROPERTYKEY { .fmtid = Guid.initString("31b37743-7c5e-4005-93e6-e953f92b82e9"), .pid = 6 };
pub const DEVPKEY_WiFiDirectServices_RequestServiceInformation = PROPERTYKEY { .fmtid = Guid.initString("31b37743-7c5e-4005-93e6-e953f92b82e9"), .pid = 7 };
pub const DEVPKEY_WiFi_InterfaceGuid = PROPERTYKEY { .fmtid = Guid.initString("ef1167eb-cbfc-4341-a568-a7c91a68982c"), .pid = 2 };
//--------------------------------------------------------------------------------
// Section: Types (330)
//--------------------------------------------------------------------------------
pub const WLAN_SET_EAPHOST_FLAGS = enum(u32) {
S = 1,
};
pub const WLAN_SET_EAPHOST_DATA_ALL_USERS = WLAN_SET_EAPHOST_FLAGS.S;
pub const WLAN_CONNECTION_NOTIFICATION_FLAGS = enum(u32) {
ADHOC_NETWORK_FORMED = 1,
CONSOLE_USER_PROFILE = 4,
};
pub const WLAN_CONNECTION_NOTIFICATION_ADHOC_NETWORK_FORMED = WLAN_CONNECTION_NOTIFICATION_FLAGS.ADHOC_NETWORK_FORMED;
pub const WLAN_CONNECTION_NOTIFICATION_CONSOLE_USER_PROFILE = WLAN_CONNECTION_NOTIFICATION_FLAGS.CONSOLE_USER_PROFILE;
pub const DOT11_BSS_TYPE = enum(i32) {
infrastructure = 1,
independent = 2,
any = 3,
};
pub const dot11_BSS_type_infrastructure = DOT11_BSS_TYPE.infrastructure;
pub const dot11_BSS_type_independent = DOT11_BSS_TYPE.independent;
pub const dot11_BSS_type_any = DOT11_BSS_TYPE.any;
pub const DOT11_SSID = extern struct {
uSSIDLength: u32,
ucSSID: [32]u8,
};
pub const DOT11_AUTH_ALGORITHM = enum(i32) {
@"80211_OPEN" = 1,
@"80211_SHARED_KEY" = 2,
WPA = 3,
WPA_PSK = 4,
WPA_NONE = 5,
RSNA = 6,
RSNA_PSK = 7,
WPA3 = 8,
// WPA3_ENT_192 = 8, this enum value conflicts with WPA3
WPA3_SAE = 9,
OWE = 10,
WPA3_ENT = 11,
IHV_START = -2147483648,
IHV_END = -1,
};
pub const DOT11_AUTH_ALGO_80211_OPEN = DOT11_AUTH_ALGORITHM.@"80211_OPEN";
pub const DOT11_AUTH_ALGO_80211_SHARED_KEY = DOT11_AUTH_ALGORITHM.@"80211_SHARED_KEY";
pub const DOT11_AUTH_ALGO_WPA = DOT11_AUTH_ALGORITHM.WPA;
pub const DOT11_AUTH_ALGO_WPA_PSK = DOT11_AUTH_ALGORITHM.WPA_PSK;
pub const DOT11_AUTH_ALGO_WPA_NONE = DOT11_AUTH_ALGORITHM.WPA_NONE;
pub const DOT11_AUTH_ALGO_RSNA = DOT11_AUTH_ALGORITHM.RSNA;
pub const DOT11_AUTH_ALGO_RSNA_PSK = DOT11_AUTH_ALGORITHM.RSNA_PSK;
pub const DOT11_AUTH_ALGO_WPA3 = DOT11_AUTH_ALGORITHM.WPA3;
pub const DOT11_AUTH_ALGO_WPA3_ENT_192 = DOT11_AUTH_ALGORITHM.WPA3;
pub const DOT11_AUTH_ALGO_WPA3_SAE = DOT11_AUTH_ALGORITHM.WPA3_SAE;
pub const DOT11_AUTH_ALGO_OWE = DOT11_AUTH_ALGORITHM.OWE;
pub const DOT11_AUTH_ALGO_WPA3_ENT = DOT11_AUTH_ALGORITHM.WPA3_ENT;
pub const DOT11_AUTH_ALGO_IHV_START = DOT11_AUTH_ALGORITHM.IHV_START;
pub const DOT11_AUTH_ALGO_IHV_END = DOT11_AUTH_ALGORITHM.IHV_END;
pub const DOT11_CIPHER_ALGORITHM = enum(i32) {
NONE = 0,
WEP40 = 1,
TKIP = 2,
CCMP = 4,
WEP104 = 5,
BIP = 6,
GCMP = 8,
GCMP_256 = 9,
CCMP_256 = 10,
BIP_GMAC_128 = 11,
BIP_GMAC_256 = 12,
BIP_CMAC_256 = 13,
WPA_USE_GROUP = 256,
// RSN_USE_GROUP = 256, this enum value conflicts with WPA_USE_GROUP
WEP = 257,
IHV_START = -2147483648,
IHV_END = -1,
};
pub const DOT11_CIPHER_ALGO_NONE = DOT11_CIPHER_ALGORITHM.NONE;
pub const DOT11_CIPHER_ALGO_WEP40 = DOT11_CIPHER_ALGORITHM.WEP40;
pub const DOT11_CIPHER_ALGO_TKIP = DOT11_CIPHER_ALGORITHM.TKIP;
pub const DOT11_CIPHER_ALGO_CCMP = DOT11_CIPHER_ALGORITHM.CCMP;
pub const DOT11_CIPHER_ALGO_WEP104 = DOT11_CIPHER_ALGORITHM.WEP104;
pub const DOT11_CIPHER_ALGO_BIP = DOT11_CIPHER_ALGORITHM.BIP;
pub const DOT11_CIPHER_ALGO_GCMP = DOT11_CIPHER_ALGORITHM.GCMP;
pub const DOT11_CIPHER_ALGO_GCMP_256 = DOT11_CIPHER_ALGORITHM.GCMP_256;
pub const DOT11_CIPHER_ALGO_CCMP_256 = DOT11_CIPHER_ALGORITHM.CCMP_256;
pub const DOT11_CIPHER_ALGO_BIP_GMAC_128 = DOT11_CIPHER_ALGORITHM.BIP_GMAC_128;
pub const DOT11_CIPHER_ALGO_BIP_GMAC_256 = DOT11_CIPHER_ALGORITHM.BIP_GMAC_256;
pub const DOT11_CIPHER_ALGO_BIP_CMAC_256 = DOT11_CIPHER_ALGORITHM.BIP_CMAC_256;
pub const DOT11_CIPHER_ALGO_WPA_USE_GROUP = DOT11_CIPHER_ALGORITHM.WPA_USE_GROUP;
pub const DOT11_CIPHER_ALGO_RSN_USE_GROUP = DOT11_CIPHER_ALGORITHM.WPA_USE_GROUP;
pub const DOT11_CIPHER_ALGO_WEP = DOT11_CIPHER_ALGORITHM.WEP;
pub const DOT11_CIPHER_ALGO_IHV_START = DOT11_CIPHER_ALGORITHM.IHV_START;
pub const DOT11_CIPHER_ALGO_IHV_END = DOT11_CIPHER_ALGORITHM.IHV_END;
pub const DOT11_AUTH_CIPHER_PAIR = extern struct {
AuthAlgoId: DOT11_AUTH_ALGORITHM,
CipherAlgoId: DOT11_CIPHER_ALGORITHM,
};
pub const DOT11_OI = extern struct {
OILength: u16,
OI: [5]u8,
};
pub const DOT11_ACCESSNETWORKOPTIONS = extern struct {
AccessNetworkType: u8,
Internet: u8,
ASRA: u8,
ESR: u8,
UESA: u8,
};
pub const DOT11_VENUEINFO = extern struct {
VenueGroup: u8,
VenueType: u8,
};
pub const DOT11_BSSID_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
BSSIDs: [6]u8,
};
pub const DOT11_PHY_TYPE = enum(i32) {
unknown = 0,
// any = 0, this enum value conflicts with unknown
fhss = 1,
dsss = 2,
irbaseband = 3,
ofdm = 4,
hrdsss = 5,
erp = 6,
ht = 7,
vht = 8,
dmg = 9,
he = 10,
IHV_start = -2147483648,
IHV_end = -1,
};
pub const dot11_phy_type_unknown = DOT11_PHY_TYPE.unknown;
pub const dot11_phy_type_any = DOT11_PHY_TYPE.unknown;
pub const dot11_phy_type_fhss = DOT11_PHY_TYPE.fhss;
pub const dot11_phy_type_dsss = DOT11_PHY_TYPE.dsss;
pub const dot11_phy_type_irbaseband = DOT11_PHY_TYPE.irbaseband;
pub const dot11_phy_type_ofdm = DOT11_PHY_TYPE.ofdm;
pub const dot11_phy_type_hrdsss = DOT11_PHY_TYPE.hrdsss;
pub const dot11_phy_type_erp = DOT11_PHY_TYPE.erp;
pub const dot11_phy_type_ht = DOT11_PHY_TYPE.ht;
pub const dot11_phy_type_vht = DOT11_PHY_TYPE.vht;
pub const dot11_phy_type_dmg = DOT11_PHY_TYPE.dmg;
pub const dot11_phy_type_he = DOT11_PHY_TYPE.he;
pub const dot11_phy_type_IHV_start = DOT11_PHY_TYPE.IHV_start;
pub const dot11_phy_type_IHV_end = DOT11_PHY_TYPE.IHV_end;
pub const DOT11_RATE_SET = extern struct {
uRateSetLength: u32,
ucRateSet: [126]u8,
};
pub const DOT11_WFD_SESSION_INFO = extern struct {
uSessionInfoLength: u16,
ucSessionInfo: [144]u8,
};
pub const DOT11_OFFLOAD_CAPABILITY = extern struct {
uReserved: u32,
uFlags: u32,
uSupportedWEPAlgorithms: u32,
uNumOfReplayWindows: u32,
uMaxWEPKeyMappingLength: u32,
uSupportedAuthAlgorithms: u32,
uMaxAuthKeyMappingLength: u32,
};
pub const DOT11_CURRENT_OFFLOAD_CAPABILITY = extern struct {
uReserved: u32,
uFlags: u32,
};
pub const DOT11_OFFLOAD_TYPE = enum(i32) {
wep = 1,
auth = 2,
};
pub const dot11_offload_type_wep = DOT11_OFFLOAD_TYPE.wep;
pub const dot11_offload_type_auth = DOT11_OFFLOAD_TYPE.auth;
pub const DOT11_IV48_COUNTER = extern struct {
uIV32Counter: u32,
usIV16Counter: u16,
};
pub const DOT11_WEP_OFFLOAD = extern struct {
uReserved: u32,
hOffloadContext: ?HANDLE,
hOffload: ?HANDLE,
dot11OffloadType: DOT11_OFFLOAD_TYPE,
dwAlgorithm: u32,
bRowIsOutbound: BOOLEAN,
bUseDefault: BOOLEAN,
uFlags: u32,
ucMacAddress: [6]u8,
uNumOfRWsOnPeer: u32,
uNumOfRWsOnMe: u32,
dot11IV48Counters: [16]DOT11_IV48_COUNTER,
usDot11RWBitMaps: [16]u16,
usKeyLength: u16,
ucKey: [1]u8,
};
pub const DOT11_WEP_UPLOAD = extern struct {
uReserved: u32,
dot11OffloadType: DOT11_OFFLOAD_TYPE,
hOffload: ?HANDLE,
uNumOfRWsUsed: u32,
dot11IV48Counters: [16]DOT11_IV48_COUNTER,
usDot11RWBitMaps: [16]u16,
};
pub const DOT11_KEY_DIRECTION = enum(i32) {
both = 1,
inbound = 2,
outbound = 3,
};
pub const dot11_key_direction_both = DOT11_KEY_DIRECTION.both;
pub const dot11_key_direction_inbound = DOT11_KEY_DIRECTION.inbound;
pub const dot11_key_direction_outbound = DOT11_KEY_DIRECTION.outbound;
pub const DOT11_DEFAULT_WEP_OFFLOAD = extern struct {
uReserved: u32,
hOffloadContext: ?HANDLE,
hOffload: ?HANDLE,
dwIndex: u32,
dot11OffloadType: DOT11_OFFLOAD_TYPE,
dwAlgorithm: u32,
uFlags: u32,
dot11KeyDirection: DOT11_KEY_DIRECTION,
ucMacAddress: [6]u8,
uNumOfRWsOnMe: u32,
dot11IV48Counters: [16]DOT11_IV48_COUNTER,
usDot11RWBitMaps: [16]u16,
usKeyLength: u16,
ucKey: [1]u8,
};
pub const DOT11_DEFAULT_WEP_UPLOAD = extern struct {
uReserved: u32,
dot11OffloadType: DOT11_OFFLOAD_TYPE,
hOffload: ?HANDLE,
uNumOfRWsUsed: u32,
dot11IV48Counters: [16]DOT11_IV48_COUNTER,
usDot11RWBitMaps: [16]u16,
};
pub const DOT11_OPERATION_MODE_CAPABILITY = extern struct {
uReserved: u32,
uMajorVersion: u32,
uMinorVersion: u32,
uNumOfTXBuffers: u32,
uNumOfRXBuffers: u32,
uOpModeCapability: u32,
};
pub const DOT11_CURRENT_OPERATION_MODE = extern struct {
uReserved: u32,
uCurrentOpMode: u32,
};
pub const DOT11_SCAN_TYPE = enum(i32) {
active = 1,
passive = 2,
auto = 3,
forced = -2147483648,
};
pub const dot11_scan_type_active = DOT11_SCAN_TYPE.active;
pub const dot11_scan_type_passive = DOT11_SCAN_TYPE.passive;
pub const dot11_scan_type_auto = DOT11_SCAN_TYPE.auto;
pub const dot11_scan_type_forced = DOT11_SCAN_TYPE.forced;
pub const DOT11_SCAN_REQUEST = extern struct {
dot11BSSType: DOT11_BSS_TYPE,
dot11BSSID: [6]u8,
dot11SSID: DOT11_SSID,
dot11ScanType: DOT11_SCAN_TYPE,
bRestrictedScan: BOOLEAN,
bUseRequestIE: BOOLEAN,
uRequestIDsOffset: u32,
uNumOfRequestIDs: u32,
uPhyTypesOffset: u32,
uNumOfPhyTypes: u32,
uIEsOffset: u32,
uIEsLength: u32,
ucBuffer: [1]u8,
};
pub const CH_DESCRIPTION_TYPE = enum(i32) {
logical = 1,
center_frequency = 2,
phy_specific = 3,
};
pub const ch_description_type_logical = CH_DESCRIPTION_TYPE.logical;
pub const ch_description_type_center_frequency = CH_DESCRIPTION_TYPE.center_frequency;
pub const ch_description_type_phy_specific = CH_DESCRIPTION_TYPE.phy_specific;
pub const DOT11_PHY_TYPE_INFO = extern struct {
dot11PhyType: DOT11_PHY_TYPE,
bUseParameters: BOOLEAN,
uProbeDelay: u32,
uMinChannelTime: u32,
uMaxChannelTime: u32,
ChDescriptionType: CH_DESCRIPTION_TYPE,
uChannelListSize: u32,
ucChannelListBuffer: [1]u8,
};
pub const DOT11_SCAN_REQUEST_V2 = extern struct {
dot11BSSType: DOT11_BSS_TYPE,
dot11BSSID: [6]u8,
dot11ScanType: DOT11_SCAN_TYPE,
bRestrictedScan: BOOLEAN,
udot11SSIDsOffset: u32,
uNumOfdot11SSIDs: u32,
bUseRequestIE: BOOLEAN,
uRequestIDsOffset: u32,
uNumOfRequestIDs: u32,
uPhyTypeInfosOffset: u32,
uNumOfPhyTypeInfos: u32,
uIEsOffset: u32,
uIEsLength: u32,
ucBuffer: [1]u8,
};
pub const DOT11_PHY_TYPE_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11PhyType: [1]DOT11_PHY_TYPE,
};
pub const DOT11_BSS_DESCRIPTION = extern struct {
uReserved: u32,
dot11BSSID: [6]u8,
dot11BSSType: DOT11_BSS_TYPE,
usBeaconPeriod: u16,
ullTimestamp: u64,
usCapabilityInformation: u16,
uBufferLength: u32,
ucBuffer: [1]u8,
};
pub const DOT11_JOIN_REQUEST = extern struct {
uJoinFailureTimeout: u32,
OperationalRateSet: DOT11_RATE_SET,
uChCenterFrequency: u32,
dot11BSSDescription: DOT11_BSS_DESCRIPTION,
};
pub const DOT11_START_REQUEST = extern struct {
uStartFailureTimeout: u32,
OperationalRateSet: DOT11_RATE_SET,
uChCenterFrequency: u32,
dot11BSSDescription: DOT11_BSS_DESCRIPTION,
};
pub const DOT11_UPDATE_IE_OP = enum(i32) {
create_replace = 1,
delete = 2,
};
pub const dot11_update_ie_op_create_replace = DOT11_UPDATE_IE_OP.create_replace;
pub const dot11_update_ie_op_delete = DOT11_UPDATE_IE_OP.delete;
pub const DOT11_UPDATE_IE = extern struct {
dot11UpdateIEOp: DOT11_UPDATE_IE_OP,
uBufferLength: u32,
ucBuffer: [1]u8,
};
pub const DOT11_RESET_TYPE = enum(i32) {
phy = 1,
mac = 2,
phy_and_mac = 3,
};
pub const dot11_reset_type_phy = DOT11_RESET_TYPE.phy;
pub const dot11_reset_type_mac = DOT11_RESET_TYPE.mac;
pub const dot11_reset_type_phy_and_mac = DOT11_RESET_TYPE.phy_and_mac;
pub const DOT11_RESET_REQUEST = extern struct {
dot11ResetType: DOT11_RESET_TYPE,
dot11MacAddress: [6]u8,
bSetDefaultMIB: BOOLEAN,
};
pub const DOT11_OPTIONAL_CAPABILITY = extern struct {
uReserved: u32,
bDot11PCF: BOOLEAN,
bDot11PCFMPDUTransferToPC: BOOLEAN,
bStrictlyOrderedServiceClass: BOOLEAN,
};
pub const DOT11_CURRENT_OPTIONAL_CAPABILITY = extern struct {
uReserved: u32,
bDot11CFPollable: BOOLEAN,
bDot11PCF: BOOLEAN,
bDot11PCFMPDUTransferToPC: BOOLEAN,
bStrictlyOrderedServiceClass: BOOLEAN,
};
pub const DOT11_POWER_MODE = enum(i32) {
unknown = 0,
active = 1,
powersave = 2,
};
pub const dot11_power_mode_unknown = DOT11_POWER_MODE.unknown;
pub const dot11_power_mode_active = DOT11_POWER_MODE.active;
pub const dot11_power_mode_powersave = DOT11_POWER_MODE.powersave;
pub const DOT11_POWER_MGMT_MODE = extern struct {
dot11PowerMode: DOT11_POWER_MODE,
uPowerSaveLevel: u32,
usListenInterval: u16,
usAID: u16,
bReceiveDTIMs: BOOLEAN,
};
pub const DOT11_COUNTERS_ENTRY = extern struct {
uTransmittedFragmentCount: u32,
uMulticastTransmittedFrameCount: u32,
uFailedCount: u32,
uRetryCount: u32,
uMultipleRetryCount: u32,
uFrameDuplicateCount: u32,
uRTSSuccessCount: u32,
uRTSFailureCount: u32,
uACKFailureCount: u32,
uReceivedFragmentCount: u32,
uMulticastReceivedFrameCount: u32,
uFCSErrorCount: u32,
uTransmittedFrameCount: u32,
};
pub const DOT11_SUPPORTED_PHY_TYPES = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11PHYType: [1]DOT11_PHY_TYPE,
};
pub const DOT11_TEMP_TYPE = enum(i32) {
unknown = 0,
@"1" = 1,
@"2" = 2,
};
pub const dot11_temp_type_unknown = DOT11_TEMP_TYPE.unknown;
pub const dot11_temp_type_1 = DOT11_TEMP_TYPE.@"1";
pub const dot11_temp_type_2 = DOT11_TEMP_TYPE.@"2";
pub const DOT11_DIVERSITY_SUPPORT = enum(i32) {
unknown = 0,
fixedlist = 1,
notsupported = 2,
dynamic = 3,
};
pub const dot11_diversity_support_unknown = DOT11_DIVERSITY_SUPPORT.unknown;
pub const dot11_diversity_support_fixedlist = DOT11_DIVERSITY_SUPPORT.fixedlist;
pub const dot11_diversity_support_notsupported = DOT11_DIVERSITY_SUPPORT.notsupported;
pub const dot11_diversity_support_dynamic = DOT11_DIVERSITY_SUPPORT.dynamic;
pub const DOT11_SUPPORTED_POWER_LEVELS = extern struct {
uNumOfSupportedPowerLevels: u32,
uTxPowerLevelValues: [8]u32,
};
pub const DOT11_REG_DOMAIN_VALUE = extern struct {
uRegDomainsSupportIndex: u32,
uRegDomainsSupportValue: u32,
};
pub const DOT11_REG_DOMAINS_SUPPORT_VALUE = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11RegDomainValue: [1]DOT11_REG_DOMAIN_VALUE,
};
pub const DOT11_SUPPORTED_ANTENNA = extern struct {
uAntennaListIndex: u32,
bSupportedAntenna: BOOLEAN,
};
pub const DOT11_SUPPORTED_ANTENNA_LIST = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11SupportedAntenna: [1]DOT11_SUPPORTED_ANTENNA,
};
pub const DOT11_DIVERSITY_SELECTION_RX = extern struct {
uAntennaListIndex: u32,
bDiversitySelectionRX: BOOLEAN,
};
pub const DOT11_DIVERSITY_SELECTION_RX_LIST = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11DiversitySelectionRx: [1]DOT11_DIVERSITY_SELECTION_RX,
};
pub const DOT11_SUPPORTED_DATA_RATES_VALUE = extern struct {
ucSupportedTxDataRatesValue: [8]u8,
ucSupportedRxDataRatesValue: [8]u8,
};
pub const DOT11_SUPPORTED_DATA_RATES_VALUE_V2 = extern struct {
ucSupportedTxDataRatesValue: [255]u8,
ucSupportedRxDataRatesValue: [255]u8,
};
pub const DOT11_MULTI_DOMAIN_CAPABILITY_ENTRY = extern struct {
uMultiDomainCapabilityIndex: u32,
uFirstChannelNumber: u32,
uNumberOfChannels: u32,
lMaximumTransmitPowerLevel: i32,
};
pub const DOT11_MD_CAPABILITY_ENTRY_LIST = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11MDCapabilityEntry: [1]DOT11_MULTI_DOMAIN_CAPABILITY_ENTRY,
};
pub const DOT11_HOP_ALGO_ADOPTED = enum(i32) {
current = 0,
hop_index = 1,
hcc = 2,
};
pub const dot11_hop_algo_current = DOT11_HOP_ALGO_ADOPTED.current;
pub const dot11_hop_algo_hop_index = DOT11_HOP_ALGO_ADOPTED.hop_index;
pub const dot11_hop_algo_hcc = DOT11_HOP_ALGO_ADOPTED.hcc;
pub const DOT11_HOPPING_PATTERN_ENTRY = extern struct {
uHoppingPatternIndex: u32,
uRandomTableFieldNumber: u32,
};
pub const DOT11_HOPPING_PATTERN_ENTRY_LIST = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11HoppingPatternEntry: [1]DOT11_HOPPING_PATTERN_ENTRY,
};
pub const DOT11_WPA_TSC = extern struct {
uReserved: u32,
dot11OffloadType: DOT11_OFFLOAD_TYPE,
hOffload: ?HANDLE,
dot11IV48Counter: DOT11_IV48_COUNTER,
};
pub const DOT11_RSSI_RANGE = extern struct {
dot11PhyType: DOT11_PHY_TYPE,
uRSSIMin: u32,
uRSSIMax: u32,
};
pub const DOT11_NIC_SPECIFIC_EXTENSION = extern struct {
uBufferLength: u32,
uTotalBufferLength: u32,
ucBuffer: [1]u8,
};
pub const DOT11_AP_JOIN_REQUEST = extern struct {
uJoinFailureTimeout: u32,
OperationalRateSet: DOT11_RATE_SET,
uChCenterFrequency: u32,
dot11BSSDescription: DOT11_BSS_DESCRIPTION,
};
pub const DOT11_RECV_SENSITIVITY = extern struct {
ucDataRate: u8,
lRSSIMin: i32,
lRSSIMax: i32,
};
pub const DOT11_RECV_SENSITIVITY_LIST = extern struct {
Anonymous: extern union {
dot11PhyType: DOT11_PHY_TYPE,
uPhyId: u32,
},
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11RecvSensitivity: [1]DOT11_RECV_SENSITIVITY,
};
pub const DOT11_AC_PARAM = enum(i32) {
BE = 0,
BK = 1,
VI = 2,
VO = 3,
max = 4,
};
pub const dot11_AC_param_BE = DOT11_AC_PARAM.BE;
pub const dot11_AC_param_BK = DOT11_AC_PARAM.BK;
pub const dot11_AC_param_VI = DOT11_AC_PARAM.VI;
pub const dot11_AC_param_VO = DOT11_AC_PARAM.VO;
pub const dot11_AC_param_max = DOT11_AC_PARAM.max;
pub const DOT11_WME_AC_PARAMETERS = extern struct {
ucAccessCategoryIndex: u8,
ucAIFSN: u8,
ucECWmin: u8,
ucECWmax: u8,
usTXOPLimit: u16,
};
pub const _DOT11_WME_AC_PARAMTERS_LIST = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11WMEACParameters: [1]DOT11_WME_AC_PARAMETERS,
};
pub const DOT11_WME_UPDATE_IE = extern struct {
uParamElemMinBeaconIntervals: u32,
uWMEInfoElemOffset: u32,
uWMEInfoElemLength: u32,
uWMEParamElemOffset: u32,
uWMEParamElemLength: u32,
ucBuffer: [1]u8,
};
pub const DOT11_QOS_TX_DURATION = extern struct {
uNominalMSDUSize: u32,
uMinPHYRate: u32,
uDuration: u32,
};
pub const DOT11_QOS_TX_MEDIUM_TIME = extern struct {
dot11PeerAddress: [6]u8,
ucQoSPriority: u8,
uMediumTimeAdmited: u32,
};
pub const DOT11_SUPPORTED_OFDM_FREQUENCY = extern struct {
uCenterFrequency: u32,
};
pub const DOT11_SUPPORTED_OFDM_FREQUENCY_LIST = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11SupportedOFDMFrequency: [1]DOT11_SUPPORTED_OFDM_FREQUENCY,
};
pub const DOT11_SUPPORTED_DSSS_CHANNEL = extern struct {
uChannel: u32,
};
pub const DOT11_SUPPORTED_DSSS_CHANNEL_LIST = extern struct {
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11SupportedDSSSChannel: [1]DOT11_SUPPORTED_DSSS_CHANNEL,
};
pub const DOT11_BYTE_ARRAY = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfBytes: u32,
uTotalNumOfBytes: u32,
ucBuffer: [1]u8,
};
pub const DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO = extern union {
uChCenterFrequency: u32,
FHSS: extern struct {
uHopPattern: u32,
uHopSet: u32,
uDwellTime: u32,
},
};
pub const DOT11_BSS_ENTRY = extern struct {
uPhyId: u32,
PhySpecificInfo: DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO,
dot11BSSID: [6]u8,
dot11BSSType: DOT11_BSS_TYPE,
lRSSI: i32,
uLinkQuality: u32,
bInRegDomain: BOOLEAN,
usBeaconPeriod: u16,
ullTimestamp: u64,
ullHostTimestamp: u64,
usCapabilityInformation: u16,
uBufferLength: u32,
ucBuffer: [1]u8,
};
pub const DOT11_SSID_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
SSIDs: [1]DOT11_SSID,
};
pub const DOT11_MAC_ADDRESS_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
MacAddrs: [6]u8,
};
pub const DOT11_PMKID_ENTRY = extern struct {
BSSID: [6]u8,
PMKID: [16]u8,
uFlags: u32,
};
pub const DOT11_PMKID_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
PMKIDs: [1]DOT11_PMKID_ENTRY,
};
pub const DOT11_PHY_FRAME_STATISTICS = extern struct {
ullTransmittedFrameCount: u64,
ullMulticastTransmittedFrameCount: u64,
ullFailedCount: u64,
ullRetryCount: u64,
ullMultipleRetryCount: u64,
ullMaxTXLifetimeExceededCount: u64,
ullTransmittedFragmentCount: u64,
ullRTSSuccessCount: u64,
ullRTSFailureCount: u64,
ullACKFailureCount: u64,
ullReceivedFrameCount: u64,
ullMulticastReceivedFrameCount: u64,
ullPromiscuousReceivedFrameCount: u64,
ullMaxRXLifetimeExceededCount: u64,
ullFrameDuplicateCount: u64,
ullReceivedFragmentCount: u64,
ullPromiscuousReceivedFragmentCount: u64,
ullFCSErrorCount: u64,
};
pub const DOT11_MAC_FRAME_STATISTICS = extern struct {
ullTransmittedFrameCount: u64,
ullReceivedFrameCount: u64,
ullTransmittedFailureFrameCount: u64,
ullReceivedFailureFrameCount: u64,
ullWEPExcludedCount: u64,
ullTKIPLocalMICFailures: u64,
ullTKIPReplays: u64,
ullTKIPICVErrorCount: u64,
ullCCMPReplays: u64,
ullCCMPDecryptErrors: u64,
ullWEPUndecryptableCount: u64,
ullWEPICVErrorCount: u64,
ullDecryptSuccessCount: u64,
ullDecryptFailureCount: u64,
};
pub const DOT11_STATISTICS = extern struct {
Header: NDIS_OBJECT_HEADER,
ullFourWayHandshakeFailures: u64,
ullTKIPCounterMeasuresInvoked: u64,
ullReserved: u64,
MacUcastCounters: DOT11_MAC_FRAME_STATISTICS,
MacMcastCounters: DOT11_MAC_FRAME_STATISTICS,
PhyCounters: [1]DOT11_PHY_FRAME_STATISTICS,
};
pub const DOT11_PRIVACY_EXEMPTION = extern struct {
usEtherType: u16,
usExemptionActionType: u16,
usExemptionPacketType: u16,
};
pub const DOT11_PRIVACY_EXEMPTION_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
PrivacyExemptionEntries: [1]DOT11_PRIVACY_EXEMPTION,
};
pub const DOT11_AUTH_ALGORITHM_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
AlgorithmIds: [1]DOT11_AUTH_ALGORITHM,
};
pub const DOT11_AUTH_CIPHER_PAIR_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
AuthCipherPairs: [1]DOT11_AUTH_CIPHER_PAIR,
};
pub const DOT11_CIPHER_ALGORITHM_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
AlgorithmIds: [1]DOT11_CIPHER_ALGORITHM,
};
pub const DOT11_CIPHER_DEFAULT_KEY_VALUE = extern struct {
Header: NDIS_OBJECT_HEADER,
uKeyIndex: u32,
AlgorithmId: DOT11_CIPHER_ALGORITHM,
MacAddr: [6]u8,
bDelete: BOOLEAN,
bStatic: BOOLEAN,
usKeyLength: u16,
ucKey: [1]u8,
};
pub const DOT11_KEY_ALGO_TKIP_MIC = extern struct {
ucIV48Counter: [6]u8,
ulTKIPKeyLength: u32,
ulMICKeyLength: u32,
ucTKIPMICKeys: [1]u8,
};
pub const DOT11_KEY_ALGO_CCMP = extern struct {
ucIV48Counter: [6]u8,
ulCCMPKeyLength: u32,
ucCCMPKey: [1]u8,
};
pub const DOT11_KEY_ALGO_GCMP = extern struct {
ucIV48Counter: [6]u8,
ulGCMPKeyLength: u32,
ucGCMPKey: [1]u8,
};
pub const DOT11_KEY_ALGO_GCMP_256 = extern struct {
ucIV48Counter: [6]u8,
ulGCMP256KeyLength: u32,
ucGCMP256Key: [1]u8,
};
pub const DOT11_KEY_ALGO_BIP = extern struct {
ucIPN: [6]u8,
ulBIPKeyLength: u32,
ucBIPKey: [1]u8,
};
pub const DOT11_KEY_ALGO_BIP_GMAC_256 = extern struct {
ucIPN: [6]u8,
ulBIPGmac256KeyLength: u32,
ucBIPGmac256Key: [1]u8,
};
pub const DOT11_DIRECTION = enum(i32) {
INBOUND = 1,
OUTBOUND = 2,
BOTH = 3,
};
pub const DOT11_DIR_INBOUND = DOT11_DIRECTION.INBOUND;
pub const DOT11_DIR_OUTBOUND = DOT11_DIRECTION.OUTBOUND;
pub const DOT11_DIR_BOTH = DOT11_DIRECTION.BOTH;
pub const DOT11_CIPHER_KEY_MAPPING_KEY_VALUE = extern struct {
PeerMacAddr: [6]u8,
AlgorithmId: DOT11_CIPHER_ALGORITHM,
Direction: DOT11_DIRECTION,
bDelete: BOOLEAN,
bStatic: BOOLEAN,
usKeyLength: u16,
ucKey: [1]u8,
};
pub const DOT11_ASSOCIATION_STATE = enum(i32) {
zero = 0,
unauth_unassoc = 1,
auth_unassoc = 2,
auth_assoc = 3,
};
pub const dot11_assoc_state_zero = DOT11_ASSOCIATION_STATE.zero;
pub const dot11_assoc_state_unauth_unassoc = DOT11_ASSOCIATION_STATE.unauth_unassoc;
pub const dot11_assoc_state_auth_unassoc = DOT11_ASSOCIATION_STATE.auth_unassoc;
pub const dot11_assoc_state_auth_assoc = DOT11_ASSOCIATION_STATE.auth_assoc;
pub const DOT11_ASSOCIATION_INFO_EX = extern struct {
PeerMacAddress: [6]u8,
BSSID: [6]u8,
usCapabilityInformation: u16,
usListenInterval: u16,
ucPeerSupportedRates: [255]u8,
usAssociationID: u16,
dot11AssociationState: DOT11_ASSOCIATION_STATE,
dot11PowerMode: DOT11_POWER_MODE,
liAssociationUpTime: LARGE_INTEGER,
ullNumOfTxPacketSuccesses: u64,
ullNumOfTxPacketFailures: u64,
ullNumOfRxPacketSuccesses: u64,
ullNumOfRxPacketFailures: u64,
};
pub const DOT11_ASSOCIATION_INFO_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11AssocInfo: [1]DOT11_ASSOCIATION_INFO_EX,
};
pub const DOT11_PHY_ID_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
dot11PhyId: [1]u32,
};
pub const DOT11_EXTSTA_CAPABILITY = extern struct {
Header: NDIS_OBJECT_HEADER,
uScanSSIDListSize: u32,
uDesiredBSSIDListSize: u32,
uDesiredSSIDListSize: u32,
uExcludedMacAddressListSize: u32,
uPrivacyExemptionListSize: u32,
uKeyMappingTableSize: u32,
uDefaultKeyTableSize: u32,
uWEPKeyValueMaxLength: u32,
uPMKIDCacheSize: u32,
uMaxNumPerSTADefaultKeyTables: u32,
};
pub const DOT11_DATA_RATE_MAPPING_ENTRY = extern struct {
ucDataRateIndex: u8,
ucDataRateFlag: u8,
usDataRateValue: u16,
};
pub const DOT11_DATA_RATE_MAPPING_TABLE = extern struct {
Header: NDIS_OBJECT_HEADER,
uDataRateMappingLength: u32,
DataRateMappingEntries: [126]DOT11_DATA_RATE_MAPPING_ENTRY,
};
pub const DOT11_COUNTRY_OR_REGION_STRING_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
CountryOrRegionStrings: [3]u8,
};
pub const DOT11_PORT_STATE_NOTIFICATION = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerMac: [6]u8,
bOpen: BOOLEAN,
};
pub const DOT11_IBSS_PARAMS = extern struct {
Header: NDIS_OBJECT_HEADER,
bJoinOnly: BOOLEAN,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_QOS_PARAMS = extern struct {
Header: NDIS_OBJECT_HEADER,
ucEnabledQoSProtocolFlags: u8,
};
pub const DOT11_ASSOCIATION_PARAMS = extern struct {
Header: NDIS_OBJECT_HEADER,
BSSID: [6]u8,
uAssocRequestIEsOffset: u32,
uAssocRequestIEsLength: u32,
};
pub const DOT11_FRAGMENT_DESCRIPTOR = extern struct {
uOffset: u32,
uLength: u32,
};
pub const DOT11_PER_MSDU_COUNTERS = extern struct {
uTransmittedFragmentCount: u32,
uRetryCount: u32,
uRTSSuccessCount: u32,
uRTSFailureCount: u32,
uACKFailureCount: u32,
};
pub const DOT11_HRDSSS_PHY_ATTRIBUTES = extern struct {
bShortPreambleOptionImplemented: BOOLEAN,
bPBCCOptionImplemented: BOOLEAN,
bChannelAgilityPresent: BOOLEAN,
uHRCCAModeSupported: u32,
};
pub const DOT11_OFDM_PHY_ATTRIBUTES = extern struct {
uFrequencyBandsSupported: u32,
};
pub const DOT11_ERP_PHY_ATTRIBUTES = extern struct {
HRDSSSAttributes: DOT11_HRDSSS_PHY_ATTRIBUTES,
bERPPBCCOptionImplemented: BOOLEAN,
bDSSSOFDMOptionImplemented: BOOLEAN,
bShortSlotTimeOptionImplemented: BOOLEAN,
};
pub const DOT11_PHY_ATTRIBUTES = extern struct {
Header: NDIS_OBJECT_HEADER,
PhyType: DOT11_PHY_TYPE,
bHardwarePhyState: BOOLEAN,
bSoftwarePhyState: BOOLEAN,
bCFPollable: BOOLEAN,
uMPDUMaxLength: u32,
TempType: DOT11_TEMP_TYPE,
DiversitySupport: DOT11_DIVERSITY_SUPPORT,
PhySpecificAttributes: extern union {
HRDSSSAttributes: DOT11_HRDSSS_PHY_ATTRIBUTES,
OFDMAttributes: DOT11_OFDM_PHY_ATTRIBUTES,
ERPAttributes: DOT11_ERP_PHY_ATTRIBUTES,
},
uNumberSupportedPowerLevels: u32,
TxPowerLevels: [8]u32,
uNumDataRateMappingEntries: u32,
DataRateMappingEntries: [126]DOT11_DATA_RATE_MAPPING_ENTRY,
SupportedDataRatesValue: DOT11_SUPPORTED_DATA_RATES_VALUE_V2,
};
pub const DOT11_EXTSTA_ATTRIBUTES = extern struct {
Header: NDIS_OBJECT_HEADER,
uScanSSIDListSize: u32,
uDesiredBSSIDListSize: u32,
uDesiredSSIDListSize: u32,
uExcludedMacAddressListSize: u32,
uPrivacyExemptionListSize: u32,
uKeyMappingTableSize: u32,
uDefaultKeyTableSize: u32,
uWEPKeyValueMaxLength: u32,
uPMKIDCacheSize: u32,
uMaxNumPerSTADefaultKeyTables: u32,
bStrictlyOrderedServiceClassImplemented: BOOLEAN,
ucSupportedQoSProtocolFlags: u8,
bSafeModeImplemented: BOOLEAN,
uNumSupportedCountryOrRegionStrings: u32,
pSupportedCountryOrRegionStrings: ?*u8,
uInfraNumSupportedUcastAlgoPairs: u32,
pInfraSupportedUcastAlgoPairs: ?*DOT11_AUTH_CIPHER_PAIR,
uInfraNumSupportedMcastAlgoPairs: u32,
pInfraSupportedMcastAlgoPairs: ?*DOT11_AUTH_CIPHER_PAIR,
uAdhocNumSupportedUcastAlgoPairs: u32,
pAdhocSupportedUcastAlgoPairs: ?*DOT11_AUTH_CIPHER_PAIR,
uAdhocNumSupportedMcastAlgoPairs: u32,
pAdhocSupportedMcastAlgoPairs: ?*DOT11_AUTH_CIPHER_PAIR,
bAutoPowerSaveMode: BOOLEAN,
uMaxNetworkOffloadListSize: u32,
bMFPCapable: BOOLEAN,
uInfraNumSupportedMcastMgmtAlgoPairs: u32,
pInfraSupportedMcastMgmtAlgoPairs: ?*DOT11_AUTH_CIPHER_PAIR,
bNeighborReportSupported: BOOLEAN,
bAPChannelReportSupported: BOOLEAN,
bActionFramesSupported: BOOLEAN,
bANQPQueryOffloadSupported: BOOLEAN,
bHESSIDConnectionSupported: BOOLEAN,
};
pub const DOT11_RECV_EXTENSION_INFO = extern struct {
uVersion: u32,
pvReserved: ?*anyopaque,
dot11PhyType: DOT11_PHY_TYPE,
uChCenterFrequency: u32,
lRSSI: i32,
lRSSIMin: i32,
lRSSIMax: i32,
uRSSI: u32,
ucPriority: u8,
ucDataRate: u8,
ucPeerMacAddress: [6]u8,
dwExtendedStatus: u32,
hWEPOffloadContext: ?HANDLE,
hAuthOffloadContext: ?HANDLE,
usWEPAppliedMask: u16,
usWPAMSDUPriority: u16,
dot11LowestIV48Counter: DOT11_IV48_COUNTER,
usDot11LeftRWBitMap: u16,
dot11HighestIV48Counter: DOT11_IV48_COUNTER,
usDot11RightRWBitMap: u16,
usNumberOfMPDUsReceived: u16,
usNumberOfFragments: u16,
pNdisPackets: [1]?*anyopaque,
};
pub const DOT11_RECV_EXTENSION_INFO_V2 = extern struct {
uVersion: u32,
pvReserved: ?*anyopaque,
dot11PhyType: DOT11_PHY_TYPE,
uChCenterFrequency: u32,
lRSSI: i32,
uRSSI: u32,
ucPriority: u8,
ucDataRate: u8,
ucPeerMacAddress: [6]u8,
dwExtendedStatus: u32,
hWEPOffloadContext: ?HANDLE,
hAuthOffloadContext: ?HANDLE,
usWEPAppliedMask: u16,
usWPAMSDUPriority: u16,
dot11LowestIV48Counter: DOT11_IV48_COUNTER,
usDot11LeftRWBitMap: u16,
dot11HighestIV48Counter: DOT11_IV48_COUNTER,
usDot11RightRWBitMap: u16,
usNumberOfMPDUsReceived: u16,
usNumberOfFragments: u16,
pNdisPackets: [1]?*anyopaque,
};
pub const DOT11_STATUS_INDICATION = extern struct {
uStatusType: u32,
ndisStatus: i32,
};
pub const DOT11_MPDU_MAX_LENGTH_INDICATION = extern struct {
Header: NDIS_OBJECT_HEADER,
uPhyId: u32,
uMPDUMaxLength: u32,
};
pub const DOT11_ASSOCIATION_START_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
MacAddr: [6]u8,
SSID: DOT11_SSID,
uIHVDataOffset: u32,
uIHVDataSize: u32,
};
pub const DOT11_ENCAP_ENTRY = extern struct {
usEtherType: u16,
usEncapType: u16,
};
pub const DOT11_DS_INFO = enum(i32) {
CHANGED = 0,
UNCHANGED = 1,
UNKNOWN = 2,
};
pub const DOT11_DS_CHANGED = DOT11_DS_INFO.CHANGED;
pub const DOT11_DS_UNCHANGED = DOT11_DS_INFO.UNCHANGED;
pub const DOT11_DS_UNKNOWN = DOT11_DS_INFO.UNKNOWN;
pub const DOT11_ASSOCIATION_COMPLETION_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
MacAddr: [6]u8,
uStatus: u32,
bReAssocReq: BOOLEAN,
bReAssocResp: BOOLEAN,
uAssocReqOffset: u32,
uAssocReqSize: u32,
uAssocRespOffset: u32,
uAssocRespSize: u32,
uBeaconOffset: u32,
uBeaconSize: u32,
uIHVDataOffset: u32,
uIHVDataSize: u32,
AuthAlgo: DOT11_AUTH_ALGORITHM,
UnicastCipher: DOT11_CIPHER_ALGORITHM,
MulticastCipher: DOT11_CIPHER_ALGORITHM,
uActivePhyListOffset: u32,
uActivePhyListSize: u32,
bFourAddressSupported: BOOLEAN,
bPortAuthorized: BOOLEAN,
ucActiveQoSProtocol: u8,
DSInfo: DOT11_DS_INFO,
uEncapTableOffset: u32,
uEncapTableSize: u32,
MulticastMgmtCipher: DOT11_CIPHER_ALGORITHM,
uAssocComebackTime: u32,
};
pub const DOT11_CONNECTION_START_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
BSSType: DOT11_BSS_TYPE,
AdhocBSSID: [6]u8,
AdhocSSID: DOT11_SSID,
};
pub const DOT11_CONNECTION_COMPLETION_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
uStatus: u32,
};
pub const DOT11_ROAMING_START_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
AdhocBSSID: [6]u8,
AdhocSSID: DOT11_SSID,
uRoamingReason: u32,
};
pub const DOT11_ROAMING_COMPLETION_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
uStatus: u32,
};
pub const DOT11_DISASSOCIATION_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
MacAddr: [6]u8,
uReason: u32,
uIHVDataOffset: u32,
uIHVDataSize: u32,
};
pub const DOT11_TKIPMIC_FAILURE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
bDefaultKeyFailure: BOOLEAN,
uKeyIndex: u32,
PeerMac: [6]u8,
};
pub const DOT11_PMKID_CANDIDATE_LIST_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
uCandidateListSize: u32,
uCandidateListOffset: u32,
};
pub const DOT11_BSSID_CANDIDATE = extern struct {
BSSID: [6]u8,
uFlags: u32,
};
pub const DOT11_PHY_STATE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
uPhyId: u32,
bHardwarePhyState: BOOLEAN,
bSoftwarePhyState: BOOLEAN,
};
pub const DOT11_LINK_QUALITY_ENTRY = extern struct {
PeerMacAddr: [6]u8,
ucLinkQuality: u8,
};
pub const DOT11_LINK_QUALITY_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
uLinkQualityListSize: u32,
uLinkQualityListOffset: u32,
};
pub const DOT11_EXTSTA_SEND_CONTEXT = extern struct {
Header: NDIS_OBJECT_HEADER,
usExemptionActionType: u16,
uPhyId: u32,
uDelayedSleepValue: u32,
pvMediaSpecificInfo: ?*anyopaque,
uSendFlags: u32,
};
pub const DOT11_EXTSTA_RECV_CONTEXT = extern struct {
Header: NDIS_OBJECT_HEADER,
uReceiveFlags: u32,
uPhyId: u32,
uChCenterFrequency: u32,
usNumberOfMPDUsReceived: u16,
lRSSI: i32,
ucDataRate: u8,
uSizeMediaSpecificInfo: u32,
pvMediaSpecificInfo: ?*anyopaque,
ullTimestamp: u64,
};
pub const DOT11_EXTAP_ATTRIBUTES = extern struct {
Header: NDIS_OBJECT_HEADER,
uScanSSIDListSize: u32,
uDesiredSSIDListSize: u32,
uPrivacyExemptionListSize: u32,
uAssociationTableSize: u32,
uDefaultKeyTableSize: u32,
uWEPKeyValueMaxLength: u32,
bStrictlyOrderedServiceClassImplemented: BOOLEAN,
uNumSupportedCountryOrRegionStrings: u32,
pSupportedCountryOrRegionStrings: ?*u8,
uInfraNumSupportedUcastAlgoPairs: u32,
pInfraSupportedUcastAlgoPairs: ?*DOT11_AUTH_CIPHER_PAIR,
uInfraNumSupportedMcastAlgoPairs: u32,
pInfraSupportedMcastAlgoPairs: ?*DOT11_AUTH_CIPHER_PAIR,
};
pub const DOT11_INCOMING_ASSOC_STARTED_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerMacAddr: [6]u8,
};
pub const DOT11_INCOMING_ASSOC_REQUEST_RECEIVED_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerMacAddr: [6]u8,
bReAssocReq: BOOLEAN,
uAssocReqOffset: u32,
uAssocReqSize: u32,
};
pub const DOT11_INCOMING_ASSOC_COMPLETION_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerMacAddr: [6]u8,
uStatus: u32,
ucErrorSource: u8,
bReAssocReq: BOOLEAN,
bReAssocResp: BOOLEAN,
uAssocReqOffset: u32,
uAssocReqSize: u32,
uAssocRespOffset: u32,
uAssocRespSize: u32,
AuthAlgo: DOT11_AUTH_ALGORITHM,
UnicastCipher: DOT11_CIPHER_ALGORITHM,
MulticastCipher: DOT11_CIPHER_ALGORITHM,
uActivePhyListOffset: u32,
uActivePhyListSize: u32,
uBeaconOffset: u32,
uBeaconSize: u32,
};
pub const DOT11_STOP_AP_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
ulReason: u32,
};
pub const DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
ulPhyId: u32,
Anonymous: extern union {
ulChannel: u32,
ulFrequency: u32,
},
};
pub const DOT11_CAN_SUSTAIN_AP_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
ulReason: u32,
};
pub const DOT11_AVAILABLE_CHANNEL_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
uChannelNumber: [1]u32,
};
pub const DOT11_AVAILABLE_FREQUENCY_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
uFrequencyValue: [1]u32,
};
pub const DOT11_DISASSOCIATE_PEER_REQUEST = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerMacAddr: [6]u8,
usReason: u16,
};
pub const DOT11_INCOMING_ASSOC_DECISION = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerMacAddr: [6]u8,
bAccept: BOOLEAN,
usReasonCode: u16,
uAssocResponseIEsOffset: u32,
uAssocResponseIEsLength: u32,
};
pub const DOT11_INCOMING_ASSOC_DECISION_V2 = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerMacAddr: [6]u8,
bAccept: BOOLEAN,
usReasonCode: u16,
uAssocResponseIEsOffset: u32,
uAssocResponseIEsLength: u32,
WFDStatus: u8,
};
pub const DOT11_ADDITIONAL_IE = extern struct {
Header: NDIS_OBJECT_HEADER,
uBeaconIEsOffset: u32,
uBeaconIEsLength: u32,
uResponseIEsOffset: u32,
uResponseIEsLength: u32,
};
pub const DOT11_PEER_STATISTICS = extern struct {
ullDecryptSuccessCount: u64,
ullDecryptFailureCount: u64,
ullTxPacketSuccessCount: u64,
ullTxPacketFailureCount: u64,
ullRxPacketSuccessCount: u64,
ullRxPacketFailureCount: u64,
};
pub const DOT11_PEER_INFO = extern struct {
MacAddress: [6]u8,
usCapabilityInformation: u16,
AuthAlgo: DOT11_AUTH_ALGORITHM,
UnicastCipherAlgo: DOT11_CIPHER_ALGORITHM,
MulticastCipherAlgo: DOT11_CIPHER_ALGORITHM,
bWpsEnabled: BOOLEAN,
usListenInterval: u16,
ucSupportedRates: [255]u8,
usAssociationID: u16,
AssociationState: DOT11_ASSOCIATION_STATE,
PowerMode: DOT11_POWER_MODE,
liAssociationUpTime: LARGE_INTEGER,
Statistics: DOT11_PEER_STATISTICS,
};
pub const DOT11_PEER_INFO_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
PeerInfo: [1]DOT11_PEER_INFO,
};
pub const DOT11_VWIFI_COMBINATION = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumInfrastructure: u32,
uNumAdhoc: u32,
uNumSoftAP: u32,
};
pub const DOT11_VWIFI_COMBINATION_V2 = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumInfrastructure: u32,
uNumAdhoc: u32,
uNumSoftAP: u32,
uNumVirtualStation: u32,
};
pub const DOT11_VWIFI_COMBINATION_V3 = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumInfrastructure: u32,
uNumAdhoc: u32,
uNumSoftAP: u32,
uNumVirtualStation: u32,
uNumWFDGroup: u32,
};
pub const DOT11_VWIFI_ATTRIBUTES = extern struct {
Header: NDIS_OBJECT_HEADER,
uTotalNumOfEntries: u32,
Combinations: [1]DOT11_VWIFI_COMBINATION,
};
pub const DOT11_MAC_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
uOpmodeMask: u32,
};
pub const DOT11_MAC_INFO = extern struct {
uReserved: u32,
uNdisPortNumber: u32,
MacAddr: [6]u8,
};
pub const DOT11_WFD_ATTRIBUTES = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumConcurrentGORole: u32,
uNumConcurrentClientRole: u32,
WPSVersionsSupported: u32,
bServiceDiscoverySupported: BOOLEAN,
bClientDiscoverabilitySupported: BOOLEAN,
bInfrastructureManagementSupported: BOOLEAN,
uMaxSecondaryDeviceTypeListSize: u32,
DeviceAddress: [6]u8,
uInterfaceAddressListCount: u32,
pInterfaceAddressList: ?*u8,
uNumSupportedCountryOrRegionStrings: u32,
pSupportedCountryOrRegionStrings: ?*u8,
uDiscoveryFilterListSize: u32,
uGORoleClientTableSize: u32,
};
pub const DOT11_WFD_DEVICE_TYPE = extern struct {
CategoryID: u16,
SubCategoryID: u16,
OUI: [4]u8,
};
pub const DOT11_WPS_DEVICE_NAME = extern struct {
uDeviceNameLength: u32,
ucDeviceName: [32]u8,
};
pub const DOT11_WFD_CONFIGURATION_TIMEOUT = extern struct {
GOTimeout: u8,
ClientTimeout: u8,
};
pub const DOT11_WFD_GROUP_ID = extern struct {
DeviceAddress: [6]u8,
SSID: DOT11_SSID,
};
pub const DOT11_WFD_GO_INTENT = extern struct {
_bitfield: u8,
};
pub const DOT11_WFD_CHANNEL = extern struct {
CountryRegionString: [3]u8,
OperatingClass: u8,
ChannelNumber: u8,
};
pub const DOT11_WPS_CONFIG_METHOD = enum(i32) {
NULL = 0,
DISPLAY = 8,
NFC_TAG = 32,
NFC_INTERFACE = 64,
PUSHBUTTON = 128,
KEYPAD = 256,
WFDS_DEFAULT = 4096,
};
pub const DOT11_WPS_CONFIG_METHOD_NULL = DOT11_WPS_CONFIG_METHOD.NULL;
pub const DOT11_WPS_CONFIG_METHOD_DISPLAY = DOT11_WPS_CONFIG_METHOD.DISPLAY;
pub const DOT11_WPS_CONFIG_METHOD_NFC_TAG = DOT11_WPS_CONFIG_METHOD.NFC_TAG;
pub const DOT11_WPS_CONFIG_METHOD_NFC_INTERFACE = DOT11_WPS_CONFIG_METHOD.NFC_INTERFACE;
pub const DOT11_WPS_CONFIG_METHOD_PUSHBUTTON = DOT11_WPS_CONFIG_METHOD.PUSHBUTTON;
pub const DOT11_WPS_CONFIG_METHOD_KEYPAD = DOT11_WPS_CONFIG_METHOD.KEYPAD;
pub const DOT11_WPS_CONFIG_METHOD_WFDS_DEFAULT = DOT11_WPS_CONFIG_METHOD.WFDS_DEFAULT;
pub const DOT11_WPS_DEVICE_PASSWORD_ID = enum(i32) {
DEFAULT = 0,
USER_SPECIFIED = 1,
MACHINE_SPECIFIED = 2,
REKEY = 3,
PUSHBUTTON = 4,
REGISTRAR_SPECIFIED = 5,
NFC_CONNECTION_HANDOVER = 7,
WFD_SERVICES = 8,
OOB_RANGE_MIN = 16,
OOB_RANGE_MAX = 65535,
};
pub const DOT11_WPS_PASSWORD_ID_DEFAULT = DOT11_WPS_DEVICE_PASSWORD_ID.DEFAULT;
pub const DOT11_WPS_PASSWORD_ID_USER_SPECIFIED = DOT11_WPS_DEVICE_PASSWORD_ID.USER_SPECIFIED;
pub const DOT11_WPS_PASSWORD_ID_MACHINE_SPECIFIED = DOT11_WPS_DEVICE_PASSWORD_ID.MACHINE_SPECIFIED;
pub const DOT11_WPS_PASSWORD_ID_REKEY = DOT11_WPS_DEVICE_PASSWORD_ID.REKEY;
pub const DOT11_WPS_PASSWORD_ID_PUSHBUTTON = DOT11_WPS_DEVICE_PASSWORD_ID.PUSHBUTTON;
pub const DOT11_WPS_PASSWORD_ID_REGISTRAR_SPECIFIED = DOT11_WPS_DEVICE_PASSWORD_ID.REGISTRAR_SPECIFIED;
pub const DOT11_WPS_PASSWORD_ID_NFC_CONNECTION_HANDOVER = DOT11_WPS_DEVICE_PASSWORD_ID.NFC_CONNECTION_HANDOVER;
pub const DOT11_WPS_PASSWORD_ID_WFD_SERVICES = DOT11_WPS_DEVICE_PASSWORD_ID.WFD_SERVICES;
pub const DOT11_WPS_PASSWORD_ID_OOB_RANGE_MIN = DOT11_WPS_DEVICE_PASSWORD_ID.OOB_RANGE_MIN;
pub const DOT11_WPS_PASSWORD_ID_OOB_RANGE_MAX = DOT11_WPS_DEVICE_PASSWORD_ID.OOB_RANGE_MAX;
pub const WFDSVC_CONNECTION_CAPABILITY = extern struct {
bNew: BOOLEAN,
bClient: BOOLEAN,
bGO: BOOLEAN,
};
pub const DOT11_WFD_SERVICE_HASH_LIST = extern struct {
ServiceHashCount: u16,
ServiceHash: [6]u8,
};
pub const DOT11_WFD_ADVERTISEMENT_ID = extern struct {
AdvertisementID: u32,
ServiceAddress: [6]u8,
};
pub const DOT11_WFD_SESSION_ID = extern struct {
SessionID: u32,
SessionAddress: [6]u8,
};
pub const DOT11_WFD_ADVERTISED_SERVICE_DESCRIPTOR = extern struct {
AdvertisementID: u32,
ConfigMethods: u16,
ServiceNameLength: u8,
ServiceName: [255]u8,
};
pub const DOT11_WFD_ADVERTISED_SERVICE_LIST = extern struct {
ServiceCount: u16,
AdvertisedService: [1]DOT11_WFD_ADVERTISED_SERVICE_DESCRIPTOR,
};
pub const DOT11_WFD_DISCOVER_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
Status: i32,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
uListOffset: u32,
uListLength: u32,
};
pub const DOT11_GO_NEGOTIATION_REQUEST_SEND_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
Status: i32,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_RECEIVED_GO_NEGOTIATION_REQUEST_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
RequestContext: ?*anyopaque,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_GO_NEGOTIATION_RESPONSE_SEND_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
Status: i32,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_RECEIVED_GO_NEGOTIATION_RESPONSE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
ResponseContext: ?*anyopaque,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_GO_NEGOTIATION_CONFIRMATION_SEND_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
Status: i32,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_RECEIVED_GO_NEGOTIATION_CONFIRMATION_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_INVITATION_REQUEST_SEND_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
ReceiverAddress: [6]u8,
DialogToken: u8,
Status: i32,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_RECEIVED_INVITATION_REQUEST_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
TransmitterDeviceAddress: [6]u8,
BSSID: [6]u8,
DialogToken: u8,
RequestContext: ?*anyopaque,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_INVITATION_RESPONSE_SEND_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
ReceiverDeviceAddress: [6]u8,
DialogToken: u8,
Status: i32,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_RECEIVED_INVITATION_RESPONSE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
TransmitterDeviceAddress: [6]u8,
BSSID: [6]u8,
DialogToken: u8,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_PROVISION_DISCOVERY_REQUEST_SEND_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
ReceiverAddress: [6]u8,
DialogToken: u8,
Status: i32,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_RECEIVED_PROVISION_DISCOVERY_REQUEST_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
TransmitterDeviceAddress: [6]u8,
BSSID: [6]u8,
DialogToken: u8,
RequestContext: ?*anyopaque,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_PROVISION_DISCOVERY_RESPONSE_SEND_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
ReceiverDeviceAddress: [6]u8,
DialogToken: u8,
Status: i32,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_RECEIVED_PROVISION_DISCOVERY_RESPONSE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
TransmitterDeviceAddress: [6]u8,
BSSID: [6]u8,
DialogToken: u8,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_ANQP_QUERY_RESULT = enum(i32) {
success = 0,
failure = 1,
timed_out = 2,
resources = 3,
advertisement_protocol_not_supported_on_remote = 4,
gas_protocol_failure = 5,
advertisement_server_not_responding = 6,
access_issues = 7,
};
pub const dot11_ANQP_query_result_success = DOT11_ANQP_QUERY_RESULT.success;
pub const dot11_ANQP_query_result_failure = DOT11_ANQP_QUERY_RESULT.failure;
pub const dot11_ANQP_query_result_timed_out = DOT11_ANQP_QUERY_RESULT.timed_out;
pub const dot11_ANQP_query_result_resources = DOT11_ANQP_QUERY_RESULT.resources;
pub const dot11_ANQP_query_result_advertisement_protocol_not_supported_on_remote = DOT11_ANQP_QUERY_RESULT.advertisement_protocol_not_supported_on_remote;
pub const dot11_ANQP_query_result_gas_protocol_failure = DOT11_ANQP_QUERY_RESULT.gas_protocol_failure;
pub const dot11_ANQP_query_result_advertisement_server_not_responding = DOT11_ANQP_QUERY_RESULT.advertisement_server_not_responding;
pub const dot11_ANQP_query_result_access_issues = DOT11_ANQP_QUERY_RESULT.access_issues;
pub const DOT11_ANQP_QUERY_COMPLETE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
Status: DOT11_ANQP_QUERY_RESULT,
hContext: ?HANDLE,
uResponseLength: u32,
};
pub const DOT11_WFD_DEVICE_CAPABILITY_CONFIG = extern struct {
Header: NDIS_OBJECT_HEADER,
bServiceDiscoveryEnabled: BOOLEAN,
bClientDiscoverabilityEnabled: BOOLEAN,
bConcurrentOperationSupported: BOOLEAN,
bInfrastructureManagementEnabled: BOOLEAN,
bDeviceLimitReached: BOOLEAN,
bInvitationProcedureEnabled: BOOLEAN,
WPSVersionsEnabled: u32,
};
pub const DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG = extern struct {
Header: NDIS_OBJECT_HEADER,
bPersistentGroupEnabled: BOOLEAN,
bIntraBSSDistributionSupported: BOOLEAN,
bCrossConnectionSupported: BOOLEAN,
bPersistentReconnectSupported: BOOLEAN,
bGroupFormationEnabled: BOOLEAN,
uMaximumGroupLimit: u32,
};
pub const DOT11_WFD_GROUP_OWNER_CAPABILITY_CONFIG_V2 = extern struct {
Header: NDIS_OBJECT_HEADER,
bPersistentGroupEnabled: BOOLEAN,
bIntraBSSDistributionSupported: BOOLEAN,
bCrossConnectionSupported: BOOLEAN,
bPersistentReconnectSupported: BOOLEAN,
bGroupFormationEnabled: BOOLEAN,
uMaximumGroupLimit: u32,
bEapolKeyIpAddressAllocationSupported: BOOLEAN,
};
pub const DOT11_WFD_DEVICE_INFO = extern struct {
Header: NDIS_OBJECT_HEADER,
DeviceAddress: [6]u8,
ConfigMethods: u16,
PrimaryDeviceType: DOT11_WFD_DEVICE_TYPE,
DeviceName: DOT11_WPS_DEVICE_NAME,
};
pub const DOT11_WFD_SECONDARY_DEVICE_TYPE_LIST = extern struct {
Header: NDIS_OBJECT_HEADER,
uNumOfEntries: u32,
uTotalNumOfEntries: u32,
SecondaryDeviceTypes: [1]DOT11_WFD_DEVICE_TYPE,
};
pub const DOT11_WFD_DISCOVER_TYPE = enum(i32) {
scan_only = 1,
find_only = 2,
auto = 3,
scan_social_channels = 4,
forced = -2147483648,
};
pub const dot11_wfd_discover_type_scan_only = DOT11_WFD_DISCOVER_TYPE.scan_only;
pub const dot11_wfd_discover_type_find_only = DOT11_WFD_DISCOVER_TYPE.find_only;
pub const dot11_wfd_discover_type_auto = DOT11_WFD_DISCOVER_TYPE.auto;
pub const dot11_wfd_discover_type_scan_social_channels = DOT11_WFD_DISCOVER_TYPE.scan_social_channels;
pub const dot11_wfd_discover_type_forced = DOT11_WFD_DISCOVER_TYPE.forced;
pub const DOT11_WFD_SCAN_TYPE = enum(i32) {
active = 1,
passive = 2,
auto = 3,
};
pub const dot11_wfd_scan_type_active = DOT11_WFD_SCAN_TYPE.active;
pub const dot11_wfd_scan_type_passive = DOT11_WFD_SCAN_TYPE.passive;
pub const dot11_wfd_scan_type_auto = DOT11_WFD_SCAN_TYPE.auto;
pub const DOT11_WFD_DISCOVER_DEVICE_FILTER = extern struct {
DeviceID: [6]u8,
ucBitmask: u8,
GroupSSID: DOT11_SSID,
};
pub const DOT11_WFD_DISCOVER_REQUEST = extern struct {
Header: NDIS_OBJECT_HEADER,
DiscoverType: DOT11_WFD_DISCOVER_TYPE,
ScanType: DOT11_WFD_SCAN_TYPE,
uDiscoverTimeout: u32,
uDeviceFilterListOffset: u32,
uNumDeviceFilters: u32,
uIEsOffset: u32,
uIEsLength: u32,
bForceScanLegacyNetworks: BOOLEAN,
};
pub const DOT11_WFD_DEVICE_ENTRY = extern struct {
uPhyId: u32,
PhySpecificInfo: DOT11_BSS_ENTRY_PHY_SPECIFIC_INFO,
dot11BSSID: [6]u8,
dot11BSSType: DOT11_BSS_TYPE,
TransmitterAddress: [6]u8,
lRSSI: i32,
uLinkQuality: u32,
usBeaconPeriod: u16,
ullTimestamp: u64,
ullBeaconHostTimestamp: u64,
ullProbeResponseHostTimestamp: u64,
usCapabilityInformation: u16,
uBeaconIEsOffset: u32,
uBeaconIEsLength: u32,
uProbeResponseIEsOffset: u32,
uProbeResponseIEsLength: u32,
};
pub const DOT11_WFD_ADDITIONAL_IE = extern struct {
Header: NDIS_OBJECT_HEADER,
uBeaconIEsOffset: u32,
uBeaconIEsLength: u32,
uProbeResponseIEsOffset: u32,
uProbeResponseIEsLength: u32,
uDefaultRequestIEsOffset: u32,
uDefaultRequestIEsLength: u32,
};
pub const DOT11_SEND_GO_NEGOTIATION_REQUEST_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
uSendTimeout: u32,
GroupOwnerIntent: DOT11_WFD_GO_INTENT,
MinimumConfigTimeout: DOT11_WFD_CONFIGURATION_TIMEOUT,
IntendedInterfaceAddress: [6]u8,
GroupCapability: u8,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_SEND_GO_NEGOTIATION_RESPONSE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
RequestContext: ?*anyopaque,
uSendTimeout: u32,
Status: u8,
GroupOwnerIntent: DOT11_WFD_GO_INTENT,
MinimumConfigTimeout: DOT11_WFD_CONFIGURATION_TIMEOUT,
IntendedInterfaceAddress: [6]u8,
GroupCapability: u8,
GroupID: DOT11_WFD_GROUP_ID,
bUseGroupID: BOOLEAN,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_SEND_GO_NEGOTIATION_CONFIRMATION_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
PeerDeviceAddress: [6]u8,
DialogToken: u8,
ResponseContext: ?*anyopaque,
uSendTimeout: u32,
Status: u8,
GroupCapability: u8,
GroupID: DOT11_WFD_GROUP_ID,
bUseGroupID: BOOLEAN,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_WFD_INVITATION_FLAGS = extern struct {
_bitfield: u8,
};
pub const DOT11_SEND_INVITATION_REQUEST_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
DialogToken: u8,
PeerDeviceAddress: [6]u8,
uSendTimeout: u32,
MinimumConfigTimeout: DOT11_WFD_CONFIGURATION_TIMEOUT,
InvitationFlags: DOT11_WFD_INVITATION_FLAGS,
GroupBSSID: [6]u8,
bUseGroupBSSID: BOOLEAN,
OperatingChannel: DOT11_WFD_CHANNEL,
bUseSpecifiedOperatingChannel: BOOLEAN,
GroupID: DOT11_WFD_GROUP_ID,
bLocalGO: BOOLEAN,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_SEND_INVITATION_RESPONSE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
ReceiverDeviceAddress: [6]u8,
DialogToken: u8,
RequestContext: ?*anyopaque,
uSendTimeout: u32,
Status: u8,
MinimumConfigTimeout: DOT11_WFD_CONFIGURATION_TIMEOUT,
GroupBSSID: [6]u8,
bUseGroupBSSID: BOOLEAN,
OperatingChannel: DOT11_WFD_CHANNEL,
bUseSpecifiedOperatingChannel: BOOLEAN,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_SEND_PROVISION_DISCOVERY_REQUEST_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
DialogToken: u8,
PeerDeviceAddress: [6]u8,
uSendTimeout: u32,
GroupCapability: u8,
GroupID: DOT11_WFD_GROUP_ID,
bUseGroupID: BOOLEAN,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_SEND_PROVISION_DISCOVERY_RESPONSE_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
ReceiverDeviceAddress: [6]u8,
DialogToken: u8,
RequestContext: ?*anyopaque,
uSendTimeout: u32,
uIEsOffset: u32,
uIEsLength: u32,
};
pub const DOT11_WFD_DEVICE_LISTEN_CHANNEL = extern struct {
Header: NDIS_OBJECT_HEADER,
ChannelNumber: u8,
};
pub const DOT11_WFD_GROUP_START_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
AdvertisedOperatingChannel: DOT11_WFD_CHANNEL,
};
pub const DOT11_WFD_GROUP_JOIN_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
GOOperatingChannel: DOT11_WFD_CHANNEL,
GOConfigTime: u32,
bInGroupFormation: BOOLEAN,
bWaitForWPSReady: BOOLEAN,
};
pub const DOT11_POWER_MGMT_AUTO_MODE_ENABLED_INFO = extern struct {
Header: NDIS_OBJECT_HEADER,
bEnabled: BOOLEAN,
};
pub const DOT11_POWER_MODE_REASON = enum(i32) {
no_change = 0,
noncompliant_AP = 1,
legacy_WFD_device = 2,
compliant_AP = 3,
compliant_WFD_device = 4,
others = 5,
};
pub const dot11_power_mode_reason_no_change = DOT11_POWER_MODE_REASON.no_change;
pub const dot11_power_mode_reason_noncompliant_AP = DOT11_POWER_MODE_REASON.noncompliant_AP;
pub const dot11_power_mode_reason_legacy_WFD_device = DOT11_POWER_MODE_REASON.legacy_WFD_device;
pub const dot11_power_mode_reason_compliant_AP = DOT11_POWER_MODE_REASON.compliant_AP;
pub const dot11_power_mode_reason_compliant_WFD_device = DOT11_POWER_MODE_REASON.compliant_WFD_device;
pub const dot11_power_mode_reason_others = DOT11_POWER_MODE_REASON.others;
pub const DOT11_POWER_MGMT_MODE_STATUS_INFO = extern struct {
Header: NDIS_OBJECT_HEADER,
PowerSaveMode: DOT11_POWER_MODE,
uPowerSaveLevel: u32,
Reason: DOT11_POWER_MODE_REASON,
};
pub const DOT11_CHANNEL_HINT = extern struct {
Dot11PhyType: DOT11_PHY_TYPE,
uChannelNumber: u32,
};
pub const DOT11_OFFLOAD_NETWORK = extern struct {
Ssid: DOT11_SSID,
UnicastCipher: DOT11_CIPHER_ALGORITHM,
AuthAlgo: DOT11_AUTH_ALGORITHM,
Dot11ChannelHints: [4]DOT11_CHANNEL_HINT,
};
pub const DOT11_OFFLOAD_NETWORK_LIST_INFO = extern struct {
Header: NDIS_OBJECT_HEADER,
ulFlags: u32,
FastScanPeriod: u32,
FastScanIterations: u32,
SlowScanPeriod: u32,
uNumOfEntries: u32,
offloadNetworkList: [1]DOT11_OFFLOAD_NETWORK,
};
pub const DOT11_OFFLOAD_NETWORK_STATUS_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
Status: i32,
};
pub const DOT11_MANUFACTURING_TEST_TYPE = enum(i32) {
unknown = 0,
self_start = 1,
self_query_result = 2,
rx = 3,
tx = 4,
query_adc = 5,
set_data = 6,
query_data = 7,
sleep = 8,
awake = 9,
IHV_start = -2147483648,
IHV_end = -1,
};
pub const dot11_manufacturing_test_unknown = DOT11_MANUFACTURING_TEST_TYPE.unknown;
pub const dot11_manufacturing_test_self_start = DOT11_MANUFACTURING_TEST_TYPE.self_start;
pub const dot11_manufacturing_test_self_query_result = DOT11_MANUFACTURING_TEST_TYPE.self_query_result;
pub const dot11_manufacturing_test_rx = DOT11_MANUFACTURING_TEST_TYPE.rx;
pub const dot11_manufacturing_test_tx = DOT11_MANUFACTURING_TEST_TYPE.tx;
pub const dot11_manufacturing_test_query_adc = DOT11_MANUFACTURING_TEST_TYPE.query_adc;
pub const dot11_manufacturing_test_set_data = DOT11_MANUFACTURING_TEST_TYPE.set_data;
pub const dot11_manufacturing_test_query_data = DOT11_MANUFACTURING_TEST_TYPE.query_data;
pub const dot11_manufacturing_test_sleep = DOT11_MANUFACTURING_TEST_TYPE.sleep;
pub const dot11_manufacturing_test_awake = DOT11_MANUFACTURING_TEST_TYPE.awake;
pub const dot11_manufacturing_test_IHV_start = DOT11_MANUFACTURING_TEST_TYPE.IHV_start;
pub const dot11_manufacturing_test_IHV_end = DOT11_MANUFACTURING_TEST_TYPE.IHV_end;
pub const DOT11_MANUFACTURING_TEST = extern struct {
dot11ManufacturingTestType: DOT11_MANUFACTURING_TEST_TYPE,
uBufferLength: u32,
ucBuffer: [1]u8,
};
pub const DOT11_MANUFACTURING_SELF_TEST_TYPE = enum(i32) {
INTERFACE = 1,
RF_INTERFACE = 2,
BT_COEXISTENCE = 3,
};
pub const DOT11_MANUFACTURING_SELF_TEST_TYPE_INTERFACE = DOT11_MANUFACTURING_SELF_TEST_TYPE.INTERFACE;
pub const DOT11_MANUFACTURING_SELF_TEST_TYPE_RF_INTERFACE = DOT11_MANUFACTURING_SELF_TEST_TYPE.RF_INTERFACE;
pub const DOT11_MANUFACTURING_SELF_TEST_TYPE_BT_COEXISTENCE = DOT11_MANUFACTURING_SELF_TEST_TYPE.BT_COEXISTENCE;
pub const DOT11_MANUFACTURING_SELF_TEST_SET_PARAMS = extern struct {
SelfTestType: DOT11_MANUFACTURING_SELF_TEST_TYPE,
uTestID: u32,
uPinBitMask: u32,
pvContext: ?*anyopaque,
uBufferLength: u32,
ucBufferIn: [1]u8,
};
pub const DOT11_MANUFACTURING_SELF_TEST_QUERY_RESULTS = extern struct {
SelfTestType: DOT11_MANUFACTURING_SELF_TEST_TYPE,
uTestID: u32,
bResult: BOOLEAN,
uPinFailedBitMask: u32,
pvContext: ?*anyopaque,
uBytesWrittenOut: u32,
ucBufferOut: [1]u8,
};
pub const DOT11_BAND = enum(i32) {
@"2p4g" = 1,
@"4p9g" = 2,
@"5g" = 3,
};
pub const dot11_band_2p4g = DOT11_BAND.@"2p4g";
pub const dot11_band_4p9g = DOT11_BAND.@"4p9g";
pub const dot11_band_5g = DOT11_BAND.@"5g";
pub const DOT11_MANUFACTURING_FUNCTIONAL_TEST_RX = extern struct {
bEnabled: BOOLEAN,
Dot11Band: DOT11_BAND,
uChannel: u32,
PowerLevel: i32,
};
pub const DOT11_MANUFACTURING_FUNCTIONAL_TEST_TX = extern struct {
bEnable: BOOLEAN,
bOpenLoop: BOOLEAN,
Dot11Band: DOT11_BAND,
uChannel: u32,
uSetPowerLevel: u32,
ADCPowerLevel: i32,
};
pub const DOT11_MANUFACTURING_FUNCTIONAL_TEST_QUERY_ADC = extern struct {
Dot11Band: DOT11_BAND,
uChannel: u32,
ADCPowerLevel: i32,
};
pub const DOT11_MANUFACTURING_TEST_SET_DATA = extern struct {
uKey: u32,
uOffset: u32,
uBufferLength: u32,
ucBufferIn: [1]u8,
};
pub const DOT11_MANUFACTURING_TEST_QUERY_DATA = extern struct {
uKey: u32,
uOffset: u32,
uBufferLength: u32,
uBytesRead: u32,
ucBufferOut: [1]u8,
};
pub const DOT11_MANUFACTURING_TEST_SLEEP = extern struct {
uSleepTime: u32,
pvContext: ?*anyopaque,
};
pub const DOT11_MANUFACTURING_CALLBACK_TYPE = enum(i32) {
unknown = 0,
self_test_complete = 1,
sleep_complete = 2,
IHV_start = -2147483648,
IHV_end = -1,
};
pub const dot11_manufacturing_callback_unknown = DOT11_MANUFACTURING_CALLBACK_TYPE.unknown;
pub const dot11_manufacturing_callback_self_test_complete = DOT11_MANUFACTURING_CALLBACK_TYPE.self_test_complete;
pub const dot11_manufacturing_callback_sleep_complete = DOT11_MANUFACTURING_CALLBACK_TYPE.sleep_complete;
pub const dot11_manufacturing_callback_IHV_start = DOT11_MANUFACTURING_CALLBACK_TYPE.IHV_start;
pub const dot11_manufacturing_callback_IHV_end = DOT11_MANUFACTURING_CALLBACK_TYPE.IHV_end;
pub const DOT11_MANUFACTURING_CALLBACK_PARAMETERS = extern struct {
Header: NDIS_OBJECT_HEADER,
dot11ManufacturingCallbackType: DOT11_MANUFACTURING_CALLBACK_TYPE,
uStatus: u32,
pvContext: ?*anyopaque,
};
pub const L2_NOTIFICATION_DATA = extern struct {
NotificationSource: u32,
NotificationCode: u32,
InterfaceGuid: Guid,
dwDataSize: u32,
pData: ?*anyopaque,
};
pub const WLAN_PROFILE_INFO = extern struct {
strProfileName: [256]u16,
dwFlags: u32,
};
pub const DOT11_NETWORK = extern struct {
dot11Ssid: DOT11_SSID,
dot11BssType: DOT11_BSS_TYPE,
};
pub const WLAN_RAW_DATA = extern struct {
dwDataSize: u32,
DataBlob: [1]u8,
};
pub const WLAN_RAW_DATA_LIST = extern struct {
dwTotalSize: u32,
dwNumberOfItems: u32,
DataList: [1]extern struct {
dwDataOffset: u32,
dwDataSize: u32,
},
};
pub const WLAN_CONNECTION_MODE = enum(i32) {
profile = 0,
temporary_profile = 1,
discovery_secure = 2,
discovery_unsecure = 3,
auto = 4,
invalid = 5,
};
pub const wlan_connection_mode_profile = WLAN_CONNECTION_MODE.profile;
pub const wlan_connection_mode_temporary_profile = WLAN_CONNECTION_MODE.temporary_profile;
pub const wlan_connection_mode_discovery_secure = WLAN_CONNECTION_MODE.discovery_secure;
pub const wlan_connection_mode_discovery_unsecure = WLAN_CONNECTION_MODE.discovery_unsecure;
pub const wlan_connection_mode_auto = WLAN_CONNECTION_MODE.auto;
pub const wlan_connection_mode_invalid = WLAN_CONNECTION_MODE.invalid;
pub const WLAN_RATE_SET = extern struct {
uRateSetLength: u32,
usRateSet: [126]u16,
};
pub const WLAN_AVAILABLE_NETWORK = extern struct {
strProfileName: [256]u16,
dot11Ssid: DOT11_SSID,
dot11BssType: DOT11_BSS_TYPE,
uNumberOfBssids: u32,
bNetworkConnectable: BOOL,
wlanNotConnectableReason: u32,
uNumberOfPhyTypes: u32,
dot11PhyTypes: [8]DOT11_PHY_TYPE,
bMorePhyTypes: BOOL,
wlanSignalQuality: u32,
bSecurityEnabled: BOOL,
dot11DefaultAuthAlgorithm: DOT11_AUTH_ALGORITHM,
dot11DefaultCipherAlgorithm: DOT11_CIPHER_ALGORITHM,
dwFlags: u32,
dwReserved: u32,
};
pub const WLAN_AVAILABLE_NETWORK_V2 = extern struct {
strProfileName: [256]u16,
dot11Ssid: DOT11_SSID,
dot11BssType: DOT11_BSS_TYPE,
uNumberOfBssids: u32,
bNetworkConnectable: BOOL,
wlanNotConnectableReason: u32,
uNumberOfPhyTypes: u32,
dot11PhyTypes: [8]DOT11_PHY_TYPE,
bMorePhyTypes: BOOL,
wlanSignalQuality: u32,
bSecurityEnabled: BOOL,
dot11DefaultAuthAlgorithm: DOT11_AUTH_ALGORITHM,
dot11DefaultCipherAlgorithm: DOT11_CIPHER_ALGORITHM,
dwFlags: u32,
AccessNetworkOptions: DOT11_ACCESSNETWORKOPTIONS,
dot11HESSID: [6]u8,
VenueInfo: DOT11_VENUEINFO,
dwReserved: u32,
};
pub const WLAN_BSS_ENTRY = extern struct {
dot11Ssid: DOT11_SSID,
uPhyId: u32,
dot11Bssid: [6]u8,
dot11BssType: DOT11_BSS_TYPE,
dot11BssPhyType: DOT11_PHY_TYPE,
lRssi: i32,
uLinkQuality: u32,
bInRegDomain: BOOLEAN,
usBeaconPeriod: u16,
ullTimestamp: u64,
ullHostTimestamp: u64,
usCapabilityInformation: u16,
ulChCenterFrequency: u32,
wlanRateSet: WLAN_RATE_SET,
ulIeOffset: u32,
ulIeSize: u32,
};
pub const WLAN_BSS_LIST = extern struct {
dwTotalSize: u32,
dwNumberOfItems: u32,
wlanBssEntries: [1]WLAN_BSS_ENTRY,
};
pub const WLAN_INTERFACE_STATE = enum(i32) {
not_ready = 0,
connected = 1,
ad_hoc_network_formed = 2,
disconnecting = 3,
disconnected = 4,
associating = 5,
discovering = 6,
authenticating = 7,
};
pub const wlan_interface_state_not_ready = WLAN_INTERFACE_STATE.not_ready;
pub const wlan_interface_state_connected = WLAN_INTERFACE_STATE.connected;
pub const wlan_interface_state_ad_hoc_network_formed = WLAN_INTERFACE_STATE.ad_hoc_network_formed;
pub const wlan_interface_state_disconnecting = WLAN_INTERFACE_STATE.disconnecting;
pub const wlan_interface_state_disconnected = WLAN_INTERFACE_STATE.disconnected;
pub const wlan_interface_state_associating = WLAN_INTERFACE_STATE.associating;
pub const wlan_interface_state_discovering = WLAN_INTERFACE_STATE.discovering;
pub const wlan_interface_state_authenticating = WLAN_INTERFACE_STATE.authenticating;
pub const WLAN_ADHOC_NETWORK_STATE = enum(i32) {
formed = 0,
connected = 1,
};
pub const wlan_adhoc_network_state_formed = WLAN_ADHOC_NETWORK_STATE.formed;
pub const wlan_adhoc_network_state_connected = WLAN_ADHOC_NETWORK_STATE.connected;
pub const WLAN_INTERFACE_INFO = extern struct {
InterfaceGuid: Guid,
strInterfaceDescription: [256]u16,
isState: WLAN_INTERFACE_STATE,
};
pub const WLAN_ASSOCIATION_ATTRIBUTES = extern struct {
dot11Ssid: DOT11_SSID,
dot11BssType: DOT11_BSS_TYPE,
dot11Bssid: [6]u8,
dot11PhyType: DOT11_PHY_TYPE,
uDot11PhyIndex: u32,
wlanSignalQuality: u32,
ulRxRate: u32,
ulTxRate: u32,
};
pub const WLAN_SECURITY_ATTRIBUTES = extern struct {
bSecurityEnabled: BOOL,
bOneXEnabled: BOOL,
dot11AuthAlgorithm: DOT11_AUTH_ALGORITHM,
dot11CipherAlgorithm: DOT11_CIPHER_ALGORITHM,
};
pub const WLAN_CONNECTION_ATTRIBUTES = extern struct {
isState: WLAN_INTERFACE_STATE,
wlanConnectionMode: WLAN_CONNECTION_MODE,
strProfileName: [256]u16,
wlanAssociationAttributes: WLAN_ASSOCIATION_ATTRIBUTES,
wlanSecurityAttributes: WLAN_SECURITY_ATTRIBUTES,
};
pub const DOT11_RADIO_STATE = enum(i32) {
unknown = 0,
on = 1,
off = 2,
};
pub const dot11_radio_state_unknown = DOT11_RADIO_STATE.unknown;
pub const dot11_radio_state_on = DOT11_RADIO_STATE.on;
pub const dot11_radio_state_off = DOT11_RADIO_STATE.off;
pub const WLAN_PHY_RADIO_STATE = extern struct {
dwPhyIndex: u32,
dot11SoftwareRadioState: DOT11_RADIO_STATE,
dot11HardwareRadioState: DOT11_RADIO_STATE,
};
pub const WLAN_RADIO_STATE = extern struct {
dwNumberOfPhys: u32,
PhyRadioState: [64]WLAN_PHY_RADIO_STATE,
};
pub const WLAN_OPERATIONAL_STATE = enum(i32) {
unknown = 0,
off = 1,
on = 2,
going_off = 3,
going_on = 4,
};
pub const wlan_operational_state_unknown = WLAN_OPERATIONAL_STATE.unknown;
pub const wlan_operational_state_off = WLAN_OPERATIONAL_STATE.off;
pub const wlan_operational_state_on = WLAN_OPERATIONAL_STATE.on;
pub const wlan_operational_state_going_off = WLAN_OPERATIONAL_STATE.going_off;
pub const wlan_operational_state_going_on = WLAN_OPERATIONAL_STATE.going_on;
pub const WLAN_INTERFACE_TYPE = enum(i32) {
emulated_802_11 = 0,
native_802_11 = 1,
invalid = 2,
};
pub const wlan_interface_type_emulated_802_11 = WLAN_INTERFACE_TYPE.emulated_802_11;
pub const wlan_interface_type_native_802_11 = WLAN_INTERFACE_TYPE.native_802_11;
pub const wlan_interface_type_invalid = WLAN_INTERFACE_TYPE.invalid;
pub const WLAN_INTERFACE_CAPABILITY = extern struct {
interfaceType: WLAN_INTERFACE_TYPE,
bDot11DSupported: BOOL,
dwMaxDesiredSsidListSize: u32,
dwMaxDesiredBssidListSize: u32,
dwNumberOfSupportedPhys: u32,
dot11PhyTypes: [64]DOT11_PHY_TYPE,
};
pub const WLAN_AUTH_CIPHER_PAIR_LIST = extern struct {
dwNumberOfItems: u32,
pAuthCipherPairList: [1]DOT11_AUTH_CIPHER_PAIR,
};
pub const WLAN_COUNTRY_OR_REGION_STRING_LIST = extern struct {
dwNumberOfItems: u32,
pCountryOrRegionStringList: [3]u8,
};
pub const WLAN_PROFILE_INFO_LIST = extern struct {
dwNumberOfItems: u32,
dwIndex: u32,
ProfileInfo: [1]WLAN_PROFILE_INFO,
};
pub const WLAN_AVAILABLE_NETWORK_LIST = extern struct {
dwNumberOfItems: u32,
dwIndex: u32,
Network: [1]WLAN_AVAILABLE_NETWORK,
};
pub const WLAN_AVAILABLE_NETWORK_LIST_V2 = extern struct {
dwNumberOfItems: u32,
dwIndex: u32,
Network: [1]WLAN_AVAILABLE_NETWORK_V2,
};
pub const WLAN_INTERFACE_INFO_LIST = extern struct {
dwNumberOfItems: u32,
dwIndex: u32,
InterfaceInfo: [1]WLAN_INTERFACE_INFO,
};
pub const DOT11_NETWORK_LIST = extern struct {
dwNumberOfItems: u32,
dwIndex: u32,
Network: [1]DOT11_NETWORK,
};
pub const WLAN_POWER_SETTING = enum(i32) {
no_saving = 0,
low_saving = 1,
medium_saving = 2,
maximum_saving = 3,
invalid = 4,
};
pub const wlan_power_setting_no_saving = WLAN_POWER_SETTING.no_saving;
pub const wlan_power_setting_low_saving = WLAN_POWER_SETTING.low_saving;
pub const wlan_power_setting_medium_saving = WLAN_POWER_SETTING.medium_saving;
pub const wlan_power_setting_maximum_saving = WLAN_POWER_SETTING.maximum_saving;
pub const wlan_power_setting_invalid = WLAN_POWER_SETTING.invalid;
pub const WLAN_CONNECTION_PARAMETERS = extern struct {
wlanConnectionMode: WLAN_CONNECTION_MODE,
strProfile: ?[*:0]const u16,
pDot11Ssid: ?*DOT11_SSID,
pDesiredBssidList: ?*DOT11_BSSID_LIST,
dot11BssType: DOT11_BSS_TYPE,
dwFlags: u32,
};
pub const WLAN_CONNECTION_PARAMETERS_V2 = extern struct {
wlanConnectionMode: WLAN_CONNECTION_MODE,
strProfile: ?[*:0]const u16,
pDot11Ssid: ?*DOT11_SSID,
pDot11Hessid: ?*u8,
pDesiredBssidList: ?*DOT11_BSSID_LIST,
dot11BssType: DOT11_BSS_TYPE,
dwFlags: u32,
pDot11AccessNetworkOptions: ?*DOT11_ACCESSNETWORKOPTIONS,
};
pub const WLAN_MSM_NOTIFICATION_DATA = extern struct {
wlanConnectionMode: WLAN_CONNECTION_MODE,
strProfileName: [256]u16,
dot11Ssid: DOT11_SSID,
dot11BssType: DOT11_BSS_TYPE,
dot11MacAddr: [6]u8,
bSecurityEnabled: BOOL,
bFirstPeer: BOOL,
bLastPeer: BOOL,
wlanReasonCode: u32,
};
pub const WLAN_CONNECTION_NOTIFICATION_DATA = extern struct {
wlanConnectionMode: WLAN_CONNECTION_MODE,
strProfileName: [256]u16,
dot11Ssid: DOT11_SSID,
dot11BssType: DOT11_BSS_TYPE,
bSecurityEnabled: BOOL,
wlanReasonCode: u32,
dwFlags: WLAN_CONNECTION_NOTIFICATION_FLAGS,
strProfileXml: [1]u16,
};
pub const WLAN_DEVICE_SERVICE_NOTIFICATION_DATA = extern struct {
DeviceService: Guid,
dwOpCode: u32,
dwDataSize: u32,
DataBlob: [1]u8,
};
pub const WLAN_NOTIFICATION_ACM = enum(i32) {
start = 0,
autoconf_enabled = 1,
autoconf_disabled = 2,
background_scan_enabled = 3,
background_scan_disabled = 4,
bss_type_change = 5,
power_setting_change = 6,
scan_complete = 7,
scan_fail = 8,
connection_start = 9,
connection_complete = 10,
connection_attempt_fail = 11,
filter_list_change = 12,
interface_arrival = 13,
interface_removal = 14,
profile_change = 15,
profile_name_change = 16,
profiles_exhausted = 17,
network_not_available = 18,
network_available = 19,
disconnecting = 20,
disconnected = 21,
adhoc_network_state_change = 22,
profile_unblocked = 23,
screen_power_change = 24,
profile_blocked = 25,
scan_list_refresh = 26,
operational_state_change = 27,
end = 28,
};
pub const wlan_notification_acm_start = WLAN_NOTIFICATION_ACM.start;
pub const wlan_notification_acm_autoconf_enabled = WLAN_NOTIFICATION_ACM.autoconf_enabled;
pub const wlan_notification_acm_autoconf_disabled = WLAN_NOTIFICATION_ACM.autoconf_disabled;
pub const wlan_notification_acm_background_scan_enabled = WLAN_NOTIFICATION_ACM.background_scan_enabled;
pub const wlan_notification_acm_background_scan_disabled = WLAN_NOTIFICATION_ACM.background_scan_disabled;
pub const wlan_notification_acm_bss_type_change = WLAN_NOTIFICATION_ACM.bss_type_change;
pub const wlan_notification_acm_power_setting_change = WLAN_NOTIFICATION_ACM.power_setting_change;
pub const wlan_notification_acm_scan_complete = WLAN_NOTIFICATION_ACM.scan_complete;
pub const wlan_notification_acm_scan_fail = WLAN_NOTIFICATION_ACM.scan_fail;
pub const wlan_notification_acm_connection_start = WLAN_NOTIFICATION_ACM.connection_start;
pub const wlan_notification_acm_connection_complete = WLAN_NOTIFICATION_ACM.connection_complete;
pub const wlan_notification_acm_connection_attempt_fail = WLAN_NOTIFICATION_ACM.connection_attempt_fail;
pub const wlan_notification_acm_filter_list_change = WLAN_NOTIFICATION_ACM.filter_list_change;
pub const wlan_notification_acm_interface_arrival = WLAN_NOTIFICATION_ACM.interface_arrival;
pub const wlan_notification_acm_interface_removal = WLAN_NOTIFICATION_ACM.interface_removal;
pub const wlan_notification_acm_profile_change = WLAN_NOTIFICATION_ACM.profile_change;
pub const wlan_notification_acm_profile_name_change = WLAN_NOTIFICATION_ACM.profile_name_change;
pub const wlan_notification_acm_profiles_exhausted = WLAN_NOTIFICATION_ACM.profiles_exhausted;
pub const wlan_notification_acm_network_not_available = WLAN_NOTIFICATION_ACM.network_not_available;
pub const wlan_notification_acm_network_available = WLAN_NOTIFICATION_ACM.network_available;
pub const wlan_notification_acm_disconnecting = WLAN_NOTIFICATION_ACM.disconnecting;
pub const wlan_notification_acm_disconnected = WLAN_NOTIFICATION_ACM.disconnected;
pub const wlan_notification_acm_adhoc_network_state_change = WLAN_NOTIFICATION_ACM.adhoc_network_state_change;
pub const wlan_notification_acm_profile_unblocked = WLAN_NOTIFICATION_ACM.profile_unblocked;
pub const wlan_notification_acm_screen_power_change = WLAN_NOTIFICATION_ACM.screen_power_change;
pub const wlan_notification_acm_profile_blocked = WLAN_NOTIFICATION_ACM.profile_blocked;
pub const wlan_notification_acm_scan_list_refresh = WLAN_NOTIFICATION_ACM.scan_list_refresh;
pub const wlan_notification_acm_operational_state_change = WLAN_NOTIFICATION_ACM.operational_state_change;
pub const wlan_notification_acm_end = WLAN_NOTIFICATION_ACM.end;
pub const WLAN_NOTIFICATION_MSM = enum(i32) {
start = 0,
associating = 1,
associated = 2,
authenticating = 3,
connected = 4,
roaming_start = 5,
roaming_end = 6,
radio_state_change = 7,
signal_quality_change = 8,
disassociating = 9,
disconnected = 10,
peer_join = 11,
peer_leave = 12,
adapter_removal = 13,
adapter_operation_mode_change = 14,
link_degraded = 15,
link_improved = 16,
end = 17,
};
pub const wlan_notification_msm_start = WLAN_NOTIFICATION_MSM.start;
pub const wlan_notification_msm_associating = WLAN_NOTIFICATION_MSM.associating;
pub const wlan_notification_msm_associated = WLAN_NOTIFICATION_MSM.associated;
pub const wlan_notification_msm_authenticating = WLAN_NOTIFICATION_MSM.authenticating;
pub const wlan_notification_msm_connected = WLAN_NOTIFICATION_MSM.connected;
pub const wlan_notification_msm_roaming_start = WLAN_NOTIFICATION_MSM.roaming_start;
pub const wlan_notification_msm_roaming_end = WLAN_NOTIFICATION_MSM.roaming_end;
pub const wlan_notification_msm_radio_state_change = WLAN_NOTIFICATION_MSM.radio_state_change;
pub const wlan_notification_msm_signal_quality_change = WLAN_NOTIFICATION_MSM.signal_quality_change;
pub const wlan_notification_msm_disassociating = WLAN_NOTIFICATION_MSM.disassociating;
pub const wlan_notification_msm_disconnected = WLAN_NOTIFICATION_MSM.disconnected;
pub const wlan_notification_msm_peer_join = WLAN_NOTIFICATION_MSM.peer_join;
pub const wlan_notification_msm_peer_leave = WLAN_NOTIFICATION_MSM.peer_leave;
pub const wlan_notification_msm_adapter_removal = WLAN_NOTIFICATION_MSM.adapter_removal;
pub const wlan_notification_msm_adapter_operation_mode_change = WLAN_NOTIFICATION_MSM.adapter_operation_mode_change;
pub const wlan_notification_msm_link_degraded = WLAN_NOTIFICATION_MSM.link_degraded;
pub const wlan_notification_msm_link_improved = WLAN_NOTIFICATION_MSM.link_improved;
pub const wlan_notification_msm_end = WLAN_NOTIFICATION_MSM.end;
pub const WLAN_NOTIFICATION_SECURITY = enum(i32) {
start = 0,
end = 1,
};
pub const wlan_notification_security_start = WLAN_NOTIFICATION_SECURITY.start;
pub const wlan_notification_security_end = WLAN_NOTIFICATION_SECURITY.end;
pub const WLAN_NOTIFICATION_CALLBACK = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*L2_NOTIFICATION_DATA,
param1: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: ?*L2_NOTIFICATION_DATA,
param1: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const WLAN_OPCODE_VALUE_TYPE = enum(i32) {
query_only = 0,
set_by_group_policy = 1,
set_by_user = 2,
invalid = 3,
};
pub const wlan_opcode_value_type_query_only = WLAN_OPCODE_VALUE_TYPE.query_only;
pub const wlan_opcode_value_type_set_by_group_policy = WLAN_OPCODE_VALUE_TYPE.set_by_group_policy;
pub const wlan_opcode_value_type_set_by_user = WLAN_OPCODE_VALUE_TYPE.set_by_user;
pub const wlan_opcode_value_type_invalid = WLAN_OPCODE_VALUE_TYPE.invalid;
pub const WLAN_INTF_OPCODE = enum(i32) {
autoconf_start = 0,
autoconf_enabled = 1,
background_scan_enabled = 2,
media_streaming_mode = 3,
radio_state = 4,
bss_type = 5,
interface_state = 6,
current_connection = 7,
channel_number = 8,
supported_infrastructure_auth_cipher_pairs = 9,
supported_adhoc_auth_cipher_pairs = 10,
supported_country_or_region_string_list = 11,
current_operation_mode = 12,
supported_safe_mode = 13,
certified_safe_mode = 14,
hosted_network_capable = 15,
management_frame_protection_capable = 16,
secondary_sta_interfaces = 17,
secondary_sta_synchronized_connections = 18,
autoconf_end = 268435455,
msm_start = 268435712,
statistics = 268435713,
rssi = 268435714,
msm_end = 536870911,
security_start = 536936448,
security_end = 805306367,
ihv_start = 805306368,
ihv_end = 1073741823,
};
pub const wlan_intf_opcode_autoconf_start = WLAN_INTF_OPCODE.autoconf_start;
pub const wlan_intf_opcode_autoconf_enabled = WLAN_INTF_OPCODE.autoconf_enabled;
pub const wlan_intf_opcode_background_scan_enabled = WLAN_INTF_OPCODE.background_scan_enabled;
pub const wlan_intf_opcode_media_streaming_mode = WLAN_INTF_OPCODE.media_streaming_mode;
pub const wlan_intf_opcode_radio_state = WLAN_INTF_OPCODE.radio_state;
pub const wlan_intf_opcode_bss_type = WLAN_INTF_OPCODE.bss_type;
pub const wlan_intf_opcode_interface_state = WLAN_INTF_OPCODE.interface_state;
pub const wlan_intf_opcode_current_connection = WLAN_INTF_OPCODE.current_connection;
pub const wlan_intf_opcode_channel_number = WLAN_INTF_OPCODE.channel_number;
pub const wlan_intf_opcode_supported_infrastructure_auth_cipher_pairs = WLAN_INTF_OPCODE.supported_infrastructure_auth_cipher_pairs;
pub const wlan_intf_opcode_supported_adhoc_auth_cipher_pairs = WLAN_INTF_OPCODE.supported_adhoc_auth_cipher_pairs;
pub const wlan_intf_opcode_supported_country_or_region_string_list = WLAN_INTF_OPCODE.supported_country_or_region_string_list;
pub const wlan_intf_opcode_current_operation_mode = WLAN_INTF_OPCODE.current_operation_mode;
pub const wlan_intf_opcode_supported_safe_mode = WLAN_INTF_OPCODE.supported_safe_mode;
pub const wlan_intf_opcode_certified_safe_mode = WLAN_INTF_OPCODE.certified_safe_mode;
pub const wlan_intf_opcode_hosted_network_capable = WLAN_INTF_OPCODE.hosted_network_capable;
pub const wlan_intf_opcode_management_frame_protection_capable = WLAN_INTF_OPCODE.management_frame_protection_capable;
pub const wlan_intf_opcode_secondary_sta_interfaces = WLAN_INTF_OPCODE.secondary_sta_interfaces;
pub const wlan_intf_opcode_secondary_sta_synchronized_connections = WLAN_INTF_OPCODE.secondary_sta_synchronized_connections;
pub const wlan_intf_opcode_autoconf_end = WLAN_INTF_OPCODE.autoconf_end;
pub const wlan_intf_opcode_msm_start = WLAN_INTF_OPCODE.msm_start;
pub const wlan_intf_opcode_statistics = WLAN_INTF_OPCODE.statistics;
pub const wlan_intf_opcode_rssi = WLAN_INTF_OPCODE.rssi;
pub const wlan_intf_opcode_msm_end = WLAN_INTF_OPCODE.msm_end;
pub const wlan_intf_opcode_security_start = WLAN_INTF_OPCODE.security_start;
pub const wlan_intf_opcode_security_end = WLAN_INTF_OPCODE.security_end;
pub const wlan_intf_opcode_ihv_start = WLAN_INTF_OPCODE.ihv_start;
pub const wlan_intf_opcode_ihv_end = WLAN_INTF_OPCODE.ihv_end;
pub const WLAN_AUTOCONF_OPCODE = enum(i32) {
start = 0,
show_denied_networks = 1,
power_setting = 2,
only_use_gp_profiles_for_allowed_networks = 3,
allow_explicit_creds = 4,
block_period = 5,
allow_virtual_station_extensibility = 6,
end = 7,
};
pub const wlan_autoconf_opcode_start = WLAN_AUTOCONF_OPCODE.start;
pub const wlan_autoconf_opcode_show_denied_networks = WLAN_AUTOCONF_OPCODE.show_denied_networks;
pub const wlan_autoconf_opcode_power_setting = WLAN_AUTOCONF_OPCODE.power_setting;
pub const wlan_autoconf_opcode_only_use_gp_profiles_for_allowed_networks = WLAN_AUTOCONF_OPCODE.only_use_gp_profiles_for_allowed_networks;
pub const wlan_autoconf_opcode_allow_explicit_creds = WLAN_AUTOCONF_OPCODE.allow_explicit_creds;
pub const wlan_autoconf_opcode_block_period = WLAN_AUTOCONF_OPCODE.block_period;
pub const wlan_autoconf_opcode_allow_virtual_station_extensibility = WLAN_AUTOCONF_OPCODE.allow_virtual_station_extensibility;
pub const wlan_autoconf_opcode_end = WLAN_AUTOCONF_OPCODE.end;
pub const WLAN_IHV_CONTROL_TYPE = enum(i32) {
service = 0,
driver = 1,
};
pub const wlan_ihv_control_type_service = WLAN_IHV_CONTROL_TYPE.service;
pub const wlan_ihv_control_type_driver = WLAN_IHV_CONTROL_TYPE.driver;
pub const WLAN_FILTER_LIST_TYPE = enum(i32) {
gp_permit = 0,
gp_deny = 1,
user_permit = 2,
user_deny = 3,
};
pub const wlan_filter_list_type_gp_permit = WLAN_FILTER_LIST_TYPE.gp_permit;
pub const wlan_filter_list_type_gp_deny = WLAN_FILTER_LIST_TYPE.gp_deny;
pub const wlan_filter_list_type_user_permit = WLAN_FILTER_LIST_TYPE.user_permit;
pub const wlan_filter_list_type_user_deny = WLAN_FILTER_LIST_TYPE.user_deny;
pub const WLAN_PHY_FRAME_STATISTICS = extern struct {
ullTransmittedFrameCount: u64,
ullMulticastTransmittedFrameCount: u64,
ullFailedCount: u64,
ullRetryCount: u64,
ullMultipleRetryCount: u64,
ullMaxTXLifetimeExceededCount: u64,
ullTransmittedFragmentCount: u64,
ullRTSSuccessCount: u64,
ullRTSFailureCount: u64,
ullACKFailureCount: u64,
ullReceivedFrameCount: u64,
ullMulticastReceivedFrameCount: u64,
ullPromiscuousReceivedFrameCount: u64,
ullMaxRXLifetimeExceededCount: u64,
ullFrameDuplicateCount: u64,
ullReceivedFragmentCount: u64,
ullPromiscuousReceivedFragmentCount: u64,
ullFCSErrorCount: u64,
};
pub const WLAN_MAC_FRAME_STATISTICS = extern struct {
ullTransmittedFrameCount: u64,
ullReceivedFrameCount: u64,
ullWEPExcludedCount: u64,
ullTKIPLocalMICFailures: u64,
ullTKIPReplays: u64,
ullTKIPICVErrorCount: u64,
ullCCMPReplays: u64,
ullCCMPDecryptErrors: u64,
ullWEPUndecryptableCount: u64,
ullWEPICVErrorCount: u64,
ullDecryptSuccessCount: u64,
ullDecryptFailureCount: u64,
};
pub const WLAN_STATISTICS = extern struct {
ullFourWayHandshakeFailures: u64,
ullTKIPCounterMeasuresInvoked: u64,
ullReserved: u64,
MacUcastCounters: WLAN_MAC_FRAME_STATISTICS,
MacMcastCounters: WLAN_MAC_FRAME_STATISTICS,
dwNumberOfPhys: u32,
PhyCounters: [1]WLAN_PHY_FRAME_STATISTICS,
};
pub const WLAN_SECURABLE_OBJECT = enum(i32) {
wlan_secure_permit_list = 0,
wlan_secure_deny_list = 1,
wlan_secure_ac_enabled = 2,
wlan_secure_bc_scan_enabled = 3,
wlan_secure_bss_type = 4,
wlan_secure_show_denied = 5,
wlan_secure_interface_properties = 6,
wlan_secure_ihv_control = 7,
wlan_secure_all_user_profiles_order = 8,
wlan_secure_add_new_all_user_profiles = 9,
wlan_secure_add_new_per_user_profiles = 10,
wlan_secure_media_streaming_mode_enabled = 11,
wlan_secure_current_operation_mode = 12,
wlan_secure_get_plaintext_key = 13,
wlan_secure_hosted_network_elevated_access = 14,
wlan_secure_virtual_station_extensibility = 15,
wlan_secure_wfd_elevated_access = 16,
WLAN_SECURABLE_OBJECT_COUNT = 17,
};
pub const wlan_secure_permit_list = WLAN_SECURABLE_OBJECT.wlan_secure_permit_list;
pub const wlan_secure_deny_list = WLAN_SECURABLE_OBJECT.wlan_secure_deny_list;
pub const wlan_secure_ac_enabled = WLAN_SECURABLE_OBJECT.wlan_secure_ac_enabled;
pub const wlan_secure_bc_scan_enabled = WLAN_SECURABLE_OBJECT.wlan_secure_bc_scan_enabled;
pub const wlan_secure_bss_type = WLAN_SECURABLE_OBJECT.wlan_secure_bss_type;
pub const wlan_secure_show_denied = WLAN_SECURABLE_OBJECT.wlan_secure_show_denied;
pub const wlan_secure_interface_properties = WLAN_SECURABLE_OBJECT.wlan_secure_interface_properties;
pub const wlan_secure_ihv_control = WLAN_SECURABLE_OBJECT.wlan_secure_ihv_control;
pub const wlan_secure_all_user_profiles_order = WLAN_SECURABLE_OBJECT.wlan_secure_all_user_profiles_order;
pub const wlan_secure_add_new_all_user_profiles = WLAN_SECURABLE_OBJECT.wlan_secure_add_new_all_user_profiles;
pub const wlan_secure_add_new_per_user_profiles = WLAN_SECURABLE_OBJECT.wlan_secure_add_new_per_user_profiles;
pub const wlan_secure_media_streaming_mode_enabled = WLAN_SECURABLE_OBJECT.wlan_secure_media_streaming_mode_enabled;
pub const wlan_secure_current_operation_mode = WLAN_SECURABLE_OBJECT.wlan_secure_current_operation_mode;
pub const wlan_secure_get_plaintext_key = WLAN_SECURABLE_OBJECT.wlan_secure_get_plaintext_key;
pub const wlan_secure_hosted_network_elevated_access = WLAN_SECURABLE_OBJECT.wlan_secure_hosted_network_elevated_access;
pub const wlan_secure_virtual_station_extensibility = WLAN_SECURABLE_OBJECT.wlan_secure_virtual_station_extensibility;
pub const wlan_secure_wfd_elevated_access = WLAN_SECURABLE_OBJECT.wlan_secure_wfd_elevated_access;
pub const WLAN_SECURABLE_OBJECT_COUNT = WLAN_SECURABLE_OBJECT.WLAN_SECURABLE_OBJECT_COUNT;
pub const WLAN_DEVICE_SERVICE_GUID_LIST = extern struct {
dwNumberOfItems: u32,
dwIndex: u32,
DeviceService: [1]Guid,
};
pub const WFD_ROLE_TYPE = enum(i32) {
NONE = 0,
DEVICE = 1,
GROUP_OWNER = 2,
CLIENT = 4,
MAX = 5,
};
pub const WFD_ROLE_TYPE_NONE = WFD_ROLE_TYPE.NONE;
pub const WFD_ROLE_TYPE_DEVICE = WFD_ROLE_TYPE.DEVICE;
pub const WFD_ROLE_TYPE_GROUP_OWNER = WFD_ROLE_TYPE.GROUP_OWNER;
pub const WFD_ROLE_TYPE_CLIENT = WFD_ROLE_TYPE.CLIENT;
pub const WFD_ROLE_TYPE_MAX = WFD_ROLE_TYPE.MAX;
pub const WFD_GROUP_ID = extern struct {
DeviceAddress: [6]u8,
GroupSSID: DOT11_SSID,
};
pub const WL_DISPLAY_PAGES = enum(i32) {
ConnectionPage = 0,
SecurityPage = 1,
AdvPage = 2,
};
pub const WLConnectionPage = WL_DISPLAY_PAGES.ConnectionPage;
pub const WLSecurityPage = WL_DISPLAY_PAGES.SecurityPage;
pub const WLAdvPage = WL_DISPLAY_PAGES.AdvPage;
pub const WLAN_HOSTED_NETWORK_STATE = enum(i32) {
unavailable = 0,
idle = 1,
active = 2,
};
pub const wlan_hosted_network_unavailable = WLAN_HOSTED_NETWORK_STATE.unavailable;
pub const wlan_hosted_network_idle = WLAN_HOSTED_NETWORK_STATE.idle;
pub const wlan_hosted_network_active = WLAN_HOSTED_NETWORK_STATE.active;
pub const WLAN_HOSTED_NETWORK_REASON = enum(i32) {
success = 0,
unspecified = 1,
bad_parameters = 2,
service_shutting_down = 3,
insufficient_resources = 4,
elevation_required = 5,
read_only = 6,
persistence_failed = 7,
crypt_error = 8,
impersonation = 9,
stop_before_start = 10,
interface_available = 11,
interface_unavailable = 12,
miniport_stopped = 13,
miniport_started = 14,
incompatible_connection_started = 15,
incompatible_connection_stopped = 16,
user_action = 17,
client_abort = 18,
ap_start_failed = 19,
peer_arrived = 20,
peer_departed = 21,
peer_timeout = 22,
gp_denied = 23,
service_unavailable = 24,
device_change = 25,
properties_change = 26,
virtual_station_blocking_use = 27,
service_available_on_virtual_station = 28,
};
pub const wlan_hosted_network_reason_success = WLAN_HOSTED_NETWORK_REASON.success;
pub const wlan_hosted_network_reason_unspecified = WLAN_HOSTED_NETWORK_REASON.unspecified;
pub const wlan_hosted_network_reason_bad_parameters = WLAN_HOSTED_NETWORK_REASON.bad_parameters;
pub const wlan_hosted_network_reason_service_shutting_down = WLAN_HOSTED_NETWORK_REASON.service_shutting_down;
pub const wlan_hosted_network_reason_insufficient_resources = WLAN_HOSTED_NETWORK_REASON.insufficient_resources;
pub const wlan_hosted_network_reason_elevation_required = WLAN_HOSTED_NETWORK_REASON.elevation_required;
pub const wlan_hosted_network_reason_read_only = WLAN_HOSTED_NETWORK_REASON.read_only;
pub const wlan_hosted_network_reason_persistence_failed = WLAN_HOSTED_NETWORK_REASON.persistence_failed;
pub const wlan_hosted_network_reason_crypt_error = WLAN_HOSTED_NETWORK_REASON.crypt_error;
pub const wlan_hosted_network_reason_impersonation = WLAN_HOSTED_NETWORK_REASON.impersonation;
pub const wlan_hosted_network_reason_stop_before_start = WLAN_HOSTED_NETWORK_REASON.stop_before_start;
pub const wlan_hosted_network_reason_interface_available = WLAN_HOSTED_NETWORK_REASON.interface_available;
pub const wlan_hosted_network_reason_interface_unavailable = WLAN_HOSTED_NETWORK_REASON.interface_unavailable;
pub const wlan_hosted_network_reason_miniport_stopped = WLAN_HOSTED_NETWORK_REASON.miniport_stopped;
pub const wlan_hosted_network_reason_miniport_started = WLAN_HOSTED_NETWORK_REASON.miniport_started;
pub const wlan_hosted_network_reason_incompatible_connection_started = WLAN_HOSTED_NETWORK_REASON.incompatible_connection_started;
pub const wlan_hosted_network_reason_incompatible_connection_stopped = WLAN_HOSTED_NETWORK_REASON.incompatible_connection_stopped;
pub const wlan_hosted_network_reason_user_action = WLAN_HOSTED_NETWORK_REASON.user_action;
pub const wlan_hosted_network_reason_client_abort = WLAN_HOSTED_NETWORK_REASON.client_abort;
pub const wlan_hosted_network_reason_ap_start_failed = WLAN_HOSTED_NETWORK_REASON.ap_start_failed;
pub const wlan_hosted_network_reason_peer_arrived = WLAN_HOSTED_NETWORK_REASON.peer_arrived;
pub const wlan_hosted_network_reason_peer_departed = WLAN_HOSTED_NETWORK_REASON.peer_departed;
pub const wlan_hosted_network_reason_peer_timeout = WLAN_HOSTED_NETWORK_REASON.peer_timeout;
pub const wlan_hosted_network_reason_gp_denied = WLAN_HOSTED_NETWORK_REASON.gp_denied;
pub const wlan_hosted_network_reason_service_unavailable = WLAN_HOSTED_NETWORK_REASON.service_unavailable;
pub const wlan_hosted_network_reason_device_change = WLAN_HOSTED_NETWORK_REASON.device_change;
pub const wlan_hosted_network_reason_properties_change = WLAN_HOSTED_NETWORK_REASON.properties_change;
pub const wlan_hosted_network_reason_virtual_station_blocking_use = WLAN_HOSTED_NETWORK_REASON.virtual_station_blocking_use;
pub const wlan_hosted_network_reason_service_available_on_virtual_station = WLAN_HOSTED_NETWORK_REASON.service_available_on_virtual_station;
pub const WLAN_HOSTED_NETWORK_PEER_AUTH_STATE = enum(i32) {
invalid = 0,
authenticated = 1,
};
pub const wlan_hosted_network_peer_state_invalid = WLAN_HOSTED_NETWORK_PEER_AUTH_STATE.invalid;
pub const wlan_hosted_network_peer_state_authenticated = WLAN_HOSTED_NETWORK_PEER_AUTH_STATE.authenticated;
pub const WLAN_HOSTED_NETWORK_PEER_STATE = extern struct {
PeerMacAddress: [6]u8,
PeerAuthState: WLAN_HOSTED_NETWORK_PEER_AUTH_STATE,
};
pub const WLAN_HOSTED_NETWORK_RADIO_STATE = extern struct {
dot11SoftwareRadioState: DOT11_RADIO_STATE,
dot11HardwareRadioState: DOT11_RADIO_STATE,
};
pub const WLAN_HOSTED_NETWORK_NOTIFICATION_CODE = enum(i32) {
state_change = 4096,
peer_state_change = 4097,
radio_state_change = 4098,
};
pub const wlan_hosted_network_state_change = WLAN_HOSTED_NETWORK_NOTIFICATION_CODE.state_change;
pub const wlan_hosted_network_peer_state_change = WLAN_HOSTED_NETWORK_NOTIFICATION_CODE.peer_state_change;
pub const wlan_hosted_network_radio_state_change = WLAN_HOSTED_NETWORK_NOTIFICATION_CODE.radio_state_change;
pub const WLAN_HOSTED_NETWORK_STATE_CHANGE = extern struct {
OldState: WLAN_HOSTED_NETWORK_STATE,
NewState: WLAN_HOSTED_NETWORK_STATE,
StateChangeReason: WLAN_HOSTED_NETWORK_REASON,
};
pub const WLAN_HOSTED_NETWORK_DATA_PEER_STATE_CHANGE = extern struct {
OldState: WLAN_HOSTED_NETWORK_PEER_STATE,
NewState: WLAN_HOSTED_NETWORK_PEER_STATE,
PeerStateChangeReason: WLAN_HOSTED_NETWORK_REASON,
};
pub const WLAN_HOSTED_NETWORK_OPCODE = enum(i32) {
connection_settings = 0,
security_settings = 1,
station_profile = 2,
enable = 3,
};
pub const wlan_hosted_network_opcode_connection_settings = WLAN_HOSTED_NETWORK_OPCODE.connection_settings;
pub const wlan_hosted_network_opcode_security_settings = WLAN_HOSTED_NETWORK_OPCODE.security_settings;
pub const wlan_hosted_network_opcode_station_profile = WLAN_HOSTED_NETWORK_OPCODE.station_profile;
pub const wlan_hosted_network_opcode_enable = WLAN_HOSTED_NETWORK_OPCODE.enable;
pub const WLAN_HOSTED_NETWORK_CONNECTION_SETTINGS = extern struct {
hostedNetworkSSID: DOT11_SSID,
dwMaxNumberOfPeers: u32,
};
pub const WLAN_HOSTED_NETWORK_SECURITY_SETTINGS = extern struct {
dot11AuthAlgo: DOT11_AUTH_ALGORITHM,
dot11CipherAlgo: DOT11_CIPHER_ALGORITHM,
};
pub const WLAN_HOSTED_NETWORK_STATUS = extern struct {
HostedNetworkState: WLAN_HOSTED_NETWORK_STATE,
IPDeviceID: Guid,
wlanHostedNetworkBSSID: [6]u8,
dot11PhyType: DOT11_PHY_TYPE,
ulChannelFrequency: u32,
dwNumberOfPeers: u32,
PeerList: [1]WLAN_HOSTED_NETWORK_PEER_STATE,
};
pub const WFD_OPEN_SESSION_COMPLETE_CALLBACK = switch (@import("builtin").zig_backend) {
.stage1 => fn(
hSessionHandle: ?HANDLE,
pvContext: ?*anyopaque,
guidSessionInterface: Guid,
dwError: u32,
dwReasonCode: u32,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
hSessionHandle: ?HANDLE,
pvContext: ?*anyopaque,
guidSessionInterface: Guid,
dwError: u32,
dwReasonCode: u32,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const ONEX_AUTH_IDENTITY = enum(i32) {
None = 0,
Machine = 1,
User = 2,
ExplicitUser = 3,
Guest = 4,
Invalid = 5,
};
pub const OneXAuthIdentityNone = ONEX_AUTH_IDENTITY.None;
pub const OneXAuthIdentityMachine = ONEX_AUTH_IDENTITY.Machine;
pub const OneXAuthIdentityUser = ONEX_AUTH_IDENTITY.User;
pub const OneXAuthIdentityExplicitUser = ONEX_AUTH_IDENTITY.ExplicitUser;
pub const OneXAuthIdentityGuest = ONEX_AUTH_IDENTITY.Guest;
pub const OneXAuthIdentityInvalid = ONEX_AUTH_IDENTITY.Invalid;
pub const ONEX_AUTH_STATUS = enum(i32) {
NotStarted = 0,
InProgress = 1,
NoAuthenticatorFound = 2,
Success = 3,
Failure = 4,
Invalid = 5,
};
pub const OneXAuthNotStarted = ONEX_AUTH_STATUS.NotStarted;
pub const OneXAuthInProgress = ONEX_AUTH_STATUS.InProgress;
pub const OneXAuthNoAuthenticatorFound = ONEX_AUTH_STATUS.NoAuthenticatorFound;
pub const OneXAuthSuccess = ONEX_AUTH_STATUS.Success;
pub const OneXAuthFailure = ONEX_AUTH_STATUS.Failure;
pub const OneXAuthInvalid = ONEX_AUTH_STATUS.Invalid;
pub const ONEX_REASON_CODE = enum(i32) {
REASON_CODE_SUCCESS = 0,
REASON_START = 327680,
UNABLE_TO_IDENTIFY_USER = 327681,
IDENTITY_NOT_FOUND = 327682,
UI_DISABLED = 327683,
UI_FAILURE = 327684,
EAP_FAILURE_RECEIVED = 327685,
AUTHENTICATOR_NO_LONGER_PRESENT = 327686,
NO_RESPONSE_TO_IDENTITY = 327687,
PROFILE_VERSION_NOT_SUPPORTED = 327688,
PROFILE_INVALID_LENGTH = 327689,
PROFILE_DISALLOWED_EAP_TYPE = 327690,
PROFILE_INVALID_EAP_TYPE_OR_FLAG = 327691,
PROFILE_INVALID_ONEX_FLAGS = 327692,
PROFILE_INVALID_TIMER_VALUE = 327693,
PROFILE_INVALID_SUPPLICANT_MODE = 327694,
PROFILE_INVALID_AUTH_MODE = 327695,
PROFILE_INVALID_EAP_CONNECTION_PROPERTIES = 327696,
UI_CANCELLED = 327697,
PROFILE_INVALID_EXPLICIT_CREDENTIALS = 327698,
PROFILE_EXPIRED_EXPLICIT_CREDENTIALS = 327699,
UI_NOT_PERMITTED = 327700,
};
pub const ONEX_REASON_CODE_SUCCESS = ONEX_REASON_CODE.REASON_CODE_SUCCESS;
pub const ONEX_REASON_START = ONEX_REASON_CODE.REASON_START;
pub const ONEX_UNABLE_TO_IDENTIFY_USER = ONEX_REASON_CODE.UNABLE_TO_IDENTIFY_USER;
pub const ONEX_IDENTITY_NOT_FOUND = ONEX_REASON_CODE.IDENTITY_NOT_FOUND;
pub const ONEX_UI_DISABLED = ONEX_REASON_CODE.UI_DISABLED;
pub const ONEX_UI_FAILURE = ONEX_REASON_CODE.UI_FAILURE;
pub const ONEX_EAP_FAILURE_RECEIVED = ONEX_REASON_CODE.EAP_FAILURE_RECEIVED;
pub const ONEX_AUTHENTICATOR_NO_LONGER_PRESENT = ONEX_REASON_CODE.AUTHENTICATOR_NO_LONGER_PRESENT;
pub const ONEX_NO_RESPONSE_TO_IDENTITY = ONEX_REASON_CODE.NO_RESPONSE_TO_IDENTITY;
pub const ONEX_PROFILE_VERSION_NOT_SUPPORTED = ONEX_REASON_CODE.PROFILE_VERSION_NOT_SUPPORTED;
pub const ONEX_PROFILE_INVALID_LENGTH = ONEX_REASON_CODE.PROFILE_INVALID_LENGTH;
pub const ONEX_PROFILE_DISALLOWED_EAP_TYPE = ONEX_REASON_CODE.PROFILE_DISALLOWED_EAP_TYPE;
pub const ONEX_PROFILE_INVALID_EAP_TYPE_OR_FLAG = ONEX_REASON_CODE.PROFILE_INVALID_EAP_TYPE_OR_FLAG;
pub const ONEX_PROFILE_INVALID_ONEX_FLAGS = ONEX_REASON_CODE.PROFILE_INVALID_ONEX_FLAGS;
pub const ONEX_PROFILE_INVALID_TIMER_VALUE = ONEX_REASON_CODE.PROFILE_INVALID_TIMER_VALUE;
pub const ONEX_PROFILE_INVALID_SUPPLICANT_MODE = ONEX_REASON_CODE.PROFILE_INVALID_SUPPLICANT_MODE;
pub const ONEX_PROFILE_INVALID_AUTH_MODE = ONEX_REASON_CODE.PROFILE_INVALID_AUTH_MODE;
pub const ONEX_PROFILE_INVALID_EAP_CONNECTION_PROPERTIES = ONEX_REASON_CODE.PROFILE_INVALID_EAP_CONNECTION_PROPERTIES;
pub const ONEX_UI_CANCELLED = ONEX_REASON_CODE.UI_CANCELLED;
pub const ONEX_PROFILE_INVALID_EXPLICIT_CREDENTIALS = ONEX_REASON_CODE.PROFILE_INVALID_EXPLICIT_CREDENTIALS;
pub const ONEX_PROFILE_EXPIRED_EXPLICIT_CREDENTIALS = ONEX_REASON_CODE.PROFILE_EXPIRED_EXPLICIT_CREDENTIALS;
pub const ONEX_UI_NOT_PERMITTED = ONEX_REASON_CODE.UI_NOT_PERMITTED;
pub const ONEX_NOTIFICATION_TYPE = enum(i32) {
PublicNotificationBase = 0,
NotificationTypeResultUpdate = 1,
NotificationTypeAuthRestarted = 2,
NotificationTypeEventInvalid = 3,
// NumNotifications = 3, this enum value conflicts with NotificationTypeEventInvalid
};
pub const OneXPublicNotificationBase = ONEX_NOTIFICATION_TYPE.PublicNotificationBase;
pub const OneXNotificationTypeResultUpdate = ONEX_NOTIFICATION_TYPE.NotificationTypeResultUpdate;
pub const OneXNotificationTypeAuthRestarted = ONEX_NOTIFICATION_TYPE.NotificationTypeAuthRestarted;
pub const OneXNotificationTypeEventInvalid = ONEX_NOTIFICATION_TYPE.NotificationTypeEventInvalid;
pub const OneXNumNotifications = ONEX_NOTIFICATION_TYPE.NotificationTypeEventInvalid;
pub const ONEX_AUTH_RESTART_REASON = enum(i32) {
PeerInitiated = 0,
MsmInitiated = 1,
OneXHeldStateTimeout = 2,
OneXAuthTimeout = 3,
OneXConfigurationChanged = 4,
OneXUserChanged = 5,
QuarantineStateChanged = 6,
AltCredsTrial = 7,
Invalid = 8,
};
pub const OneXRestartReasonPeerInitiated = ONEX_AUTH_RESTART_REASON.PeerInitiated;
pub const OneXRestartReasonMsmInitiated = ONEX_AUTH_RESTART_REASON.MsmInitiated;
pub const OneXRestartReasonOneXHeldStateTimeout = ONEX_AUTH_RESTART_REASON.OneXHeldStateTimeout;
pub const OneXRestartReasonOneXAuthTimeout = ONEX_AUTH_RESTART_REASON.OneXAuthTimeout;
pub const OneXRestartReasonOneXConfigurationChanged = ONEX_AUTH_RESTART_REASON.OneXConfigurationChanged;
pub const OneXRestartReasonOneXUserChanged = ONEX_AUTH_RESTART_REASON.OneXUserChanged;
pub const OneXRestartReasonQuarantineStateChanged = ONEX_AUTH_RESTART_REASON.QuarantineStateChanged;
pub const OneXRestartReasonAltCredsTrial = ONEX_AUTH_RESTART_REASON.AltCredsTrial;
pub const OneXRestartReasonInvalid = ONEX_AUTH_RESTART_REASON.Invalid;
pub const ONEX_VARIABLE_BLOB = extern struct {
dwSize: u32,
dwOffset: u32,
};
pub const ONEX_AUTH_PARAMS = extern struct {
fUpdatePending: BOOL,
oneXConnProfile: ONEX_VARIABLE_BLOB,
authIdentity: ONEX_AUTH_IDENTITY,
dwQuarantineState: u32,
_bitfield: u32,
dwSessionId: u32,
hUserToken: ?HANDLE,
OneXUserProfile: ONEX_VARIABLE_BLOB,
Identity: ONEX_VARIABLE_BLOB,
UserName: ONEX_VARIABLE_BLOB,
Domain: ONEX_VARIABLE_BLOB,
};
pub const ONEX_EAP_ERROR = extern struct {
dwWinError: u32,
type: EAP_METHOD_TYPE,
dwReasonCode: u32,
rootCauseGuid: Guid,
repairGuid: Guid,
helpLinkGuid: Guid,
_bitfield: u32,
RootCauseString: ONEX_VARIABLE_BLOB,
RepairString: ONEX_VARIABLE_BLOB,
};
pub const ONEX_STATUS = extern struct {
authStatus: ONEX_AUTH_STATUS,
dwReason: u32,
dwError: u32,
};
pub const ONEX_EAP_METHOD_BACKEND_SUPPORT = enum(i32) {
SupportUnknown = 0,
Supported = 1,
Unsupported = 2,
};
pub const OneXEapMethodBackendSupportUnknown = ONEX_EAP_METHOD_BACKEND_SUPPORT.SupportUnknown;
pub const OneXEapMethodBackendSupported = ONEX_EAP_METHOD_BACKEND_SUPPORT.Supported;
pub const OneXEapMethodBackendUnsupported = ONEX_EAP_METHOD_BACKEND_SUPPORT.Unsupported;
pub const ONEX_RESULT_UPDATE_DATA = extern struct {
oneXStatus: ONEX_STATUS,
BackendSupport: ONEX_EAP_METHOD_BACKEND_SUPPORT,
fBackendEngaged: BOOL,
_bitfield: u32,
authParams: ONEX_VARIABLE_BLOB,
eapError: ONEX_VARIABLE_BLOB,
};
pub const ONEX_USER_INFO = extern struct {
authIdentity: ONEX_AUTH_IDENTITY,
_bitfield: u32,
UserName: ONEX_VARIABLE_BLOB,
DomainName: ONEX_VARIABLE_BLOB,
};
const CLSID_Dot11AdHocManager_Value = Guid.initString("dd06a84f-83bd-4d01-8ab9-2389fea0869e");
pub const CLSID_Dot11AdHocManager = &CLSID_Dot11AdHocManager_Value;
pub const DOT11_ADHOC_CIPHER_ALGORITHM = enum(i32) {
INVALID = -1,
NONE = 0,
CCMP = 4,
WEP = 257,
};
pub const DOT11_ADHOC_CIPHER_ALGO_INVALID = DOT11_ADHOC_CIPHER_ALGORITHM.INVALID;
pub const DOT11_ADHOC_CIPHER_ALGO_NONE = DOT11_ADHOC_CIPHER_ALGORITHM.NONE;
pub const DOT11_ADHOC_CIPHER_ALGO_CCMP = DOT11_ADHOC_CIPHER_ALGORITHM.CCMP;
pub const DOT11_ADHOC_CIPHER_ALGO_WEP = DOT11_ADHOC_CIPHER_ALGORITHM.WEP;
pub const DOT11_ADHOC_AUTH_ALGORITHM = enum(i32) {
INVALID = -1,
@"80211_OPEN" = 1,
RSNA_PSK = 7,
};
pub const DOT11_ADHOC_AUTH_ALGO_INVALID = DOT11_ADHOC_AUTH_ALGORITHM.INVALID;
pub const DOT11_ADHOC_AUTH_ALGO_80211_OPEN = DOT11_ADHOC_AUTH_ALGORITHM.@"80211_OPEN";
pub const DOT11_ADHOC_AUTH_ALGO_RSNA_PSK = DOT11_ADHOC_AUTH_ALGORITHM.RSNA_PSK;
pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS = enum(i32) {
INVALID = 0,
DISCONNECTED = 11,
CONNECTING = 12,
CONNECTED = 13,
FORMED = 14,
};
pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_INVALID = DOT11_ADHOC_NETWORK_CONNECTION_STATUS.INVALID;
pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_DISCONNECTED = DOT11_ADHOC_NETWORK_CONNECTION_STATUS.DISCONNECTED;
pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_CONNECTING = DOT11_ADHOC_NETWORK_CONNECTION_STATUS.CONNECTING;
pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_CONNECTED = DOT11_ADHOC_NETWORK_CONNECTION_STATUS.CONNECTED;
pub const DOT11_ADHOC_NETWORK_CONNECTION_STATUS_FORMED = DOT11_ADHOC_NETWORK_CONNECTION_STATUS.FORMED;
pub const DOT11_ADHOC_CONNECT_FAIL_REASON = enum(i32) {
DOMAIN_MISMATCH = 0,
PASSPHRASE_MISMATCH = 1,
OTHER = 2,
};
pub const DOT11_ADHOC_CONNECT_FAIL_DOMAIN_MISMATCH = DOT11_ADHOC_CONNECT_FAIL_REASON.DOMAIN_MISMATCH;
pub const DOT11_ADHOC_CONNECT_FAIL_PASSPHRASE_MISMATCH = DOT11_ADHOC_CONNECT_FAIL_REASON.PASSPHRASE_MISMATCH;
pub const DOT11_ADHOC_CONNECT_FAIL_OTHER = DOT11_ADHOC_CONNECT_FAIL_REASON.OTHER;
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IDot11AdHocManager_Value = Guid.initString("8f10cc26-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IDot11AdHocManager = &IID_IDot11AdHocManager_Value;
pub const IDot11AdHocManager = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
CreateNetwork: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManager,
Name: ?[*:0]const u16,
Password: ?[*:0]const u16,
GeographicalId: i32,
pInterface: ?*IDot11AdHocInterface,
pSecurity: ?*IDot11AdHocSecuritySettings,
pContextGuid: ?*Guid,
pIAdHoc: ?*?*IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManager,
Name: ?[*:0]const u16,
Password: ?[*:0]const u16,
GeographicalId: i32,
pInterface: ?*IDot11AdHocInterface,
pSecurity: ?*IDot11AdHocSecuritySettings,
pContextGuid: ?*Guid,
pIAdHoc: ?*?*IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CommitCreatedNetwork: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManager,
pIAdHoc: ?*IDot11AdHocNetwork,
fSaveProfile: BOOLEAN,
fMakeSavedProfileUserSpecific: BOOLEAN,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManager,
pIAdHoc: ?*IDot11AdHocNetwork,
fSaveProfile: BOOLEAN,
fMakeSavedProfileUserSpecific: BOOLEAN,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetIEnumDot11AdHocNetworks: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManager,
pContextGuid: ?*Guid,
ppEnum: ?*?*IEnumDot11AdHocNetworks,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManager,
pContextGuid: ?*Guid,
ppEnum: ?*?*IEnumDot11AdHocNetworks,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetIEnumDot11AdHocInterfaces: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManager,
ppEnum: ?*?*IEnumDot11AdHocInterfaces,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManager,
ppEnum: ?*?*IEnumDot11AdHocInterfaces,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetNetwork: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManager,
NetworkSignature: ?*Guid,
pNetwork: ?*?*IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManager,
NetworkSignature: ?*Guid,
pNetwork: ?*?*IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManager_CreateNetwork(self: *const T, Name: ?[*:0]const u16, Password: ?[*:0]const u16, GeographicalId: i32, pInterface: ?*IDot11AdHocInterface, pSecurity: ?*IDot11AdHocSecuritySettings, pContextGuid: ?*Guid, pIAdHoc: ?*?*IDot11AdHocNetwork) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManager.VTable, @ptrCast(self.vtable)).CreateNetwork(@as(*const IDot11AdHocManager, @ptrCast(self)), Name, Password, GeographicalId, pInterface, pSecurity, pContextGuid, pIAdHoc);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManager_CommitCreatedNetwork(self: *const T, pIAdHoc: ?*IDot11AdHocNetwork, fSaveProfile: BOOLEAN, fMakeSavedProfileUserSpecific: BOOLEAN) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManager.VTable, @ptrCast(self.vtable)).CommitCreatedNetwork(@as(*const IDot11AdHocManager, @ptrCast(self)), pIAdHoc, fSaveProfile, fMakeSavedProfileUserSpecific);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManager_GetIEnumDot11AdHocNetworks(self: *const T, pContextGuid: ?*Guid, ppEnum: ?*?*IEnumDot11AdHocNetworks) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManager.VTable, @ptrCast(self.vtable)).GetIEnumDot11AdHocNetworks(@as(*const IDot11AdHocManager, @ptrCast(self)), pContextGuid, ppEnum);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManager_GetIEnumDot11AdHocInterfaces(self: *const T, ppEnum: ?*?*IEnumDot11AdHocInterfaces) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManager.VTable, @ptrCast(self.vtable)).GetIEnumDot11AdHocInterfaces(@as(*const IDot11AdHocManager, @ptrCast(self)), ppEnum);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManager_GetNetwork(self: *const T, NetworkSignature: ?*Guid, pNetwork: ?*?*IDot11AdHocNetwork) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManager.VTable, @ptrCast(self.vtable)).GetNetwork(@as(*const IDot11AdHocManager, @ptrCast(self)), NetworkSignature, pNetwork);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IDot11AdHocManagerNotificationSink_Value = Guid.initString("8f10cc27-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IDot11AdHocManagerNotificationSink = &IID_IDot11AdHocManagerNotificationSink_Value;
pub const IDot11AdHocManagerNotificationSink = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
OnNetworkAdd: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManagerNotificationSink,
pIAdHocNetwork: ?*IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManagerNotificationSink,
pIAdHocNetwork: ?*IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
OnNetworkRemove: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManagerNotificationSink,
Signature: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManagerNotificationSink,
Signature: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
OnInterfaceAdd: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManagerNotificationSink,
pIAdHocInterface: ?*IDot11AdHocInterface,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManagerNotificationSink,
pIAdHocInterface: ?*IDot11AdHocInterface,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
OnInterfaceRemove: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocManagerNotificationSink,
Signature: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocManagerNotificationSink,
Signature: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManagerNotificationSink_OnNetworkAdd(self: *const T, pIAdHocNetwork: ?*IDot11AdHocNetwork) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManagerNotificationSink.VTable, @ptrCast(self.vtable)).OnNetworkAdd(@as(*const IDot11AdHocManagerNotificationSink, @ptrCast(self)), pIAdHocNetwork);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManagerNotificationSink_OnNetworkRemove(self: *const T, Signature: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManagerNotificationSink.VTable, @ptrCast(self.vtable)).OnNetworkRemove(@as(*const IDot11AdHocManagerNotificationSink, @ptrCast(self)), Signature);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManagerNotificationSink_OnInterfaceAdd(self: *const T, pIAdHocInterface: ?*IDot11AdHocInterface) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManagerNotificationSink.VTable, @ptrCast(self.vtable)).OnInterfaceAdd(@as(*const IDot11AdHocManagerNotificationSink, @ptrCast(self)), pIAdHocInterface);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocManagerNotificationSink_OnInterfaceRemove(self: *const T, Signature: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocManagerNotificationSink.VTable, @ptrCast(self.vtable)).OnInterfaceRemove(@as(*const IDot11AdHocManagerNotificationSink, @ptrCast(self)), Signature);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IEnumDot11AdHocNetworks_Value = Guid.initString("8f10cc28-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IEnumDot11AdHocNetworks = &IID_IEnumDot11AdHocNetworks_Value;
pub const IEnumDot11AdHocNetworks = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Next: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocNetworks,
cElt: u32,
rgElt: [*]?*IDot11AdHocNetwork,
pcEltFetched: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocNetworks,
cElt: u32,
rgElt: [*]?*IDot11AdHocNetwork,
pcEltFetched: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Skip: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocNetworks,
cElt: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocNetworks,
cElt: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Reset: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocNetworks,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocNetworks,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Clone: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocNetworks,
ppEnum: ?*?*IEnumDot11AdHocNetworks,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocNetworks,
ppEnum: ?*?*IEnumDot11AdHocNetworks,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocNetworks_Next(self: *const T, cElt: u32, rgElt: [*]?*IDot11AdHocNetwork, pcEltFetched: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocNetworks.VTable, @ptrCast(self.vtable)).Next(@as(*const IEnumDot11AdHocNetworks, @ptrCast(self)), cElt, rgElt, pcEltFetched);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocNetworks_Skip(self: *const T, cElt: u32) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocNetworks.VTable, @ptrCast(self.vtable)).Skip(@as(*const IEnumDot11AdHocNetworks, @ptrCast(self)), cElt);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocNetworks_Reset(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocNetworks.VTable, @ptrCast(self.vtable)).Reset(@as(*const IEnumDot11AdHocNetworks, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocNetworks_Clone(self: *const T, ppEnum: ?*?*IEnumDot11AdHocNetworks) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocNetworks.VTable, @ptrCast(self.vtable)).Clone(@as(*const IEnumDot11AdHocNetworks, @ptrCast(self)), ppEnum);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IDot11AdHocNetwork_Value = Guid.initString("8f10cc29-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IDot11AdHocNetwork = &IID_IDot11AdHocNetwork_Value;
pub const IDot11AdHocNetwork = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetStatus: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
eStatus: ?*DOT11_ADHOC_NETWORK_CONNECTION_STATUS,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
eStatus: ?*DOT11_ADHOC_NETWORK_CONNECTION_STATUS,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetSSID: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
ppszwSSID: ?*?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
ppszwSSID: ?*?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
HasProfile: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
pf11d: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
pf11d: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetProfileName: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
ppszwProfileName: ?*?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
ppszwProfileName: ?*?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DeleteProfile: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetSignalQuality: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
puStrengthValue: ?*u32,
puStrengthMax: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
puStrengthValue: ?*u32,
puStrengthMax: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetSecuritySetting: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
pAdHocSecuritySetting: ?*?*IDot11AdHocSecuritySettings,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
pAdHocSecuritySetting: ?*?*IDot11AdHocSecuritySettings,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetContextGuid: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
pContextGuid: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
pContextGuid: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetSignature: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
pSignature: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
pSignature: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetInterface: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
pAdHocInterface: ?*?*IDot11AdHocInterface,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
pAdHocInterface: ?*?*IDot11AdHocInterface,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Connect: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
Passphrase: ?[*:0]const u16,
GeographicalId: i32,
fSaveProfile: BOOLEAN,
fMakeSavedProfileUserSpecific: BOOLEAN,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
Passphrase: ?[*:0]const u16,
GeographicalId: i32,
fSaveProfile: BOOLEAN,
fMakeSavedProfileUserSpecific: BOOLEAN,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Disconnect: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_GetStatus(self: *const T, eStatus: ?*DOT11_ADHOC_NETWORK_CONNECTION_STATUS) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).GetStatus(@as(*const IDot11AdHocNetwork, @ptrCast(self)), eStatus);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_GetSSID(self: *const T, ppszwSSID: ?*?PWSTR) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).GetSSID(@as(*const IDot11AdHocNetwork, @ptrCast(self)), ppszwSSID);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_HasProfile(self: *const T, pf11d: ?*u8) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).HasProfile(@as(*const IDot11AdHocNetwork, @ptrCast(self)), pf11d);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_GetProfileName(self: *const T, ppszwProfileName: ?*?PWSTR) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).GetProfileName(@as(*const IDot11AdHocNetwork, @ptrCast(self)), ppszwProfileName);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_DeleteProfile(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).DeleteProfile(@as(*const IDot11AdHocNetwork, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_GetSignalQuality(self: *const T, puStrengthValue: ?*u32, puStrengthMax: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).GetSignalQuality(@as(*const IDot11AdHocNetwork, @ptrCast(self)), puStrengthValue, puStrengthMax);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_GetSecuritySetting(self: *const T, pAdHocSecuritySetting: ?*?*IDot11AdHocSecuritySettings) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).GetSecuritySetting(@as(*const IDot11AdHocNetwork, @ptrCast(self)), pAdHocSecuritySetting);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_GetContextGuid(self: *const T, pContextGuid: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).GetContextGuid(@as(*const IDot11AdHocNetwork, @ptrCast(self)), pContextGuid);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_GetSignature(self: *const T, pSignature: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).GetSignature(@as(*const IDot11AdHocNetwork, @ptrCast(self)), pSignature);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_GetInterface(self: *const T, pAdHocInterface: ?*?*IDot11AdHocInterface) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).GetInterface(@as(*const IDot11AdHocNetwork, @ptrCast(self)), pAdHocInterface);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_Connect(self: *const T, Passphrase: ?[*:0]const u16, GeographicalId: i32, fSaveProfile: BOOLEAN, fMakeSavedProfileUserSpecific: BOOLEAN) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).Connect(@as(*const IDot11AdHocNetwork, @ptrCast(self)), Passphrase, GeographicalId, fSaveProfile, fMakeSavedProfileUserSpecific);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetwork_Disconnect(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetwork.VTable, @ptrCast(self.vtable)).Disconnect(@as(*const IDot11AdHocNetwork, @ptrCast(self)));
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IDot11AdHocNetworkNotificationSink_Value = Guid.initString("8f10cc2a-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IDot11AdHocNetworkNotificationSink = &IID_IDot11AdHocNetworkNotificationSink_Value;
pub const IDot11AdHocNetworkNotificationSink = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
OnStatusChange: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetworkNotificationSink,
eStatus: DOT11_ADHOC_NETWORK_CONNECTION_STATUS,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetworkNotificationSink,
eStatus: DOT11_ADHOC_NETWORK_CONNECTION_STATUS,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
OnConnectFail: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocNetworkNotificationSink,
eFailReason: DOT11_ADHOC_CONNECT_FAIL_REASON,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocNetworkNotificationSink,
eFailReason: DOT11_ADHOC_CONNECT_FAIL_REASON,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetworkNotificationSink_OnStatusChange(self: *const T, eStatus: DOT11_ADHOC_NETWORK_CONNECTION_STATUS) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetworkNotificationSink.VTable, @ptrCast(self.vtable)).OnStatusChange(@as(*const IDot11AdHocNetworkNotificationSink, @ptrCast(self)), eStatus);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocNetworkNotificationSink_OnConnectFail(self: *const T, eFailReason: DOT11_ADHOC_CONNECT_FAIL_REASON) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocNetworkNotificationSink.VTable, @ptrCast(self.vtable)).OnConnectFail(@as(*const IDot11AdHocNetworkNotificationSink, @ptrCast(self)), eFailReason);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IDot11AdHocInterface_Value = Guid.initString("8f10cc2b-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IDot11AdHocInterface = &IID_IDot11AdHocInterface_Value;
pub const IDot11AdHocInterface = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetDeviceSignature: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
pSignature: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
pSignature: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetFriendlyName: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
ppszName: ?*?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
ppszName: ?*?PWSTR,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
IsDot11d: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
pf11d: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
pf11d: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
IsAdHocCapable: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
pfAdHocCapable: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
pfAdHocCapable: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
IsRadioOn: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
pfIsRadioOn: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
pfIsRadioOn: ?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetActiveNetwork: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
ppNetwork: ?*?*IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
ppNetwork: ?*?*IDot11AdHocNetwork,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetIEnumSecuritySettings: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
ppEnum: ?*?*IEnumDot11AdHocSecuritySettings,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
ppEnum: ?*?*IEnumDot11AdHocSecuritySettings,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetIEnumDot11AdHocNetworks: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
pFilterGuid: ?*Guid,
ppEnum: ?*?*IEnumDot11AdHocNetworks,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
pFilterGuid: ?*Guid,
ppEnum: ?*?*IEnumDot11AdHocNetworks,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetStatus: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterface,
pState: ?*DOT11_ADHOC_NETWORK_CONNECTION_STATUS,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterface,
pState: ?*DOT11_ADHOC_NETWORK_CONNECTION_STATUS,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_GetDeviceSignature(self: *const T, pSignature: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).GetDeviceSignature(@as(*const IDot11AdHocInterface, @ptrCast(self)), pSignature);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_GetFriendlyName(self: *const T, ppszName: ?*?PWSTR) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).GetFriendlyName(@as(*const IDot11AdHocInterface, @ptrCast(self)), ppszName);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_IsDot11d(self: *const T, pf11d: ?*u8) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).IsDot11d(@as(*const IDot11AdHocInterface, @ptrCast(self)), pf11d);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_IsAdHocCapable(self: *const T, pfAdHocCapable: ?*u8) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).IsAdHocCapable(@as(*const IDot11AdHocInterface, @ptrCast(self)), pfAdHocCapable);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_IsRadioOn(self: *const T, pfIsRadioOn: ?*u8) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).IsRadioOn(@as(*const IDot11AdHocInterface, @ptrCast(self)), pfIsRadioOn);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_GetActiveNetwork(self: *const T, ppNetwork: ?*?*IDot11AdHocNetwork) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).GetActiveNetwork(@as(*const IDot11AdHocInterface, @ptrCast(self)), ppNetwork);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_GetIEnumSecuritySettings(self: *const T, ppEnum: ?*?*IEnumDot11AdHocSecuritySettings) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).GetIEnumSecuritySettings(@as(*const IDot11AdHocInterface, @ptrCast(self)), ppEnum);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_GetIEnumDot11AdHocNetworks(self: *const T, pFilterGuid: ?*Guid, ppEnum: ?*?*IEnumDot11AdHocNetworks) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).GetIEnumDot11AdHocNetworks(@as(*const IDot11AdHocInterface, @ptrCast(self)), pFilterGuid, ppEnum);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterface_GetStatus(self: *const T, pState: ?*DOT11_ADHOC_NETWORK_CONNECTION_STATUS) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterface.VTable, @ptrCast(self.vtable)).GetStatus(@as(*const IDot11AdHocInterface, @ptrCast(self)), pState);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IEnumDot11AdHocInterfaces_Value = Guid.initString("8f10cc2c-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IEnumDot11AdHocInterfaces = &IID_IEnumDot11AdHocInterfaces_Value;
pub const IEnumDot11AdHocInterfaces = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Next: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocInterfaces,
cElt: u32,
rgElt: [*]?*IDot11AdHocInterface,
pcEltFetched: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocInterfaces,
cElt: u32,
rgElt: [*]?*IDot11AdHocInterface,
pcEltFetched: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Skip: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocInterfaces,
cElt: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocInterfaces,
cElt: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Reset: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocInterfaces,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocInterfaces,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Clone: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocInterfaces,
ppEnum: ?*?*IEnumDot11AdHocInterfaces,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocInterfaces,
ppEnum: ?*?*IEnumDot11AdHocInterfaces,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocInterfaces_Next(self: *const T, cElt: u32, rgElt: [*]?*IDot11AdHocInterface, pcEltFetched: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocInterfaces.VTable, @ptrCast(self.vtable)).Next(@as(*const IEnumDot11AdHocInterfaces, @ptrCast(self)), cElt, rgElt, pcEltFetched);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocInterfaces_Skip(self: *const T, cElt: u32) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocInterfaces.VTable, @ptrCast(self.vtable)).Skip(@as(*const IEnumDot11AdHocInterfaces, @ptrCast(self)), cElt);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocInterfaces_Reset(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocInterfaces.VTable, @ptrCast(self.vtable)).Reset(@as(*const IEnumDot11AdHocInterfaces, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocInterfaces_Clone(self: *const T, ppEnum: ?*?*IEnumDot11AdHocInterfaces) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocInterfaces.VTable, @ptrCast(self.vtable)).Clone(@as(*const IEnumDot11AdHocInterfaces, @ptrCast(self)), ppEnum);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IEnumDot11AdHocSecuritySettings_Value = Guid.initString("8f10cc2d-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IEnumDot11AdHocSecuritySettings = &IID_IEnumDot11AdHocSecuritySettings_Value;
pub const IEnumDot11AdHocSecuritySettings = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Next: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocSecuritySettings,
cElt: u32,
rgElt: [*]?*IDot11AdHocSecuritySettings,
pcEltFetched: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocSecuritySettings,
cElt: u32,
rgElt: [*]?*IDot11AdHocSecuritySettings,
pcEltFetched: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Skip: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocSecuritySettings,
cElt: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocSecuritySettings,
cElt: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Reset: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocSecuritySettings,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocSecuritySettings,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Clone: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IEnumDot11AdHocSecuritySettings,
ppEnum: ?*?*IEnumDot11AdHocSecuritySettings,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IEnumDot11AdHocSecuritySettings,
ppEnum: ?*?*IEnumDot11AdHocSecuritySettings,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocSecuritySettings_Next(self: *const T, cElt: u32, rgElt: [*]?*IDot11AdHocSecuritySettings, pcEltFetched: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocSecuritySettings.VTable, @ptrCast(self.vtable)).Next(@as(*const IEnumDot11AdHocSecuritySettings, @ptrCast(self)), cElt, rgElt, pcEltFetched);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocSecuritySettings_Skip(self: *const T, cElt: u32) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocSecuritySettings.VTable, @ptrCast(self.vtable)).Skip(@as(*const IEnumDot11AdHocSecuritySettings, @ptrCast(self)), cElt);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocSecuritySettings_Reset(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocSecuritySettings.VTable, @ptrCast(self.vtable)).Reset(@as(*const IEnumDot11AdHocSecuritySettings, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IEnumDot11AdHocSecuritySettings_Clone(self: *const T, ppEnum: ?*?*IEnumDot11AdHocSecuritySettings) callconv(.Inline) HRESULT {
return @as(*const IEnumDot11AdHocSecuritySettings.VTable, @ptrCast(self.vtable)).Clone(@as(*const IEnumDot11AdHocSecuritySettings, @ptrCast(self)), ppEnum);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IDot11AdHocSecuritySettings_Value = Guid.initString("8f10cc2e-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IDot11AdHocSecuritySettings = &IID_IDot11AdHocSecuritySettings_Value;
pub const IDot11AdHocSecuritySettings = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetDot11AuthAlgorithm: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocSecuritySettings,
pAuth: ?*DOT11_ADHOC_AUTH_ALGORITHM,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocSecuritySettings,
pAuth: ?*DOT11_ADHOC_AUTH_ALGORITHM,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDot11CipherAlgorithm: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocSecuritySettings,
pCipher: ?*DOT11_ADHOC_CIPHER_ALGORITHM,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocSecuritySettings,
pCipher: ?*DOT11_ADHOC_CIPHER_ALGORITHM,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocSecuritySettings_GetDot11AuthAlgorithm(self: *const T, pAuth: ?*DOT11_ADHOC_AUTH_ALGORITHM) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocSecuritySettings.VTable, @ptrCast(self.vtable)).GetDot11AuthAlgorithm(@as(*const IDot11AdHocSecuritySettings, @ptrCast(self)), pAuth);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocSecuritySettings_GetDot11CipherAlgorithm(self: *const T, pCipher: ?*DOT11_ADHOC_CIPHER_ALGORITHM) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocSecuritySettings.VTable, @ptrCast(self.vtable)).GetDot11CipherAlgorithm(@as(*const IDot11AdHocSecuritySettings, @ptrCast(self)), pCipher);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.0.6000'
const IID_IDot11AdHocInterfaceNotificationSink_Value = Guid.initString("8f10cc2f-cf0d-42a0-acbe-e2de7007384d");
pub const IID_IDot11AdHocInterfaceNotificationSink = &IID_IDot11AdHocInterfaceNotificationSink_Value;
pub const IDot11AdHocInterfaceNotificationSink = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
OnConnectionStatusChange: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IDot11AdHocInterfaceNotificationSink,
eStatus: DOT11_ADHOC_NETWORK_CONNECTION_STATUS,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IDot11AdHocInterfaceNotificationSink,
eStatus: DOT11_ADHOC_NETWORK_CONNECTION_STATUS,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IDot11AdHocInterfaceNotificationSink_OnConnectionStatusChange(self: *const T, eStatus: DOT11_ADHOC_NETWORK_CONNECTION_STATUS) callconv(.Inline) HRESULT {
return @as(*const IDot11AdHocInterfaceNotificationSink.VTable, @ptrCast(self.vtable)).OnConnectionStatusChange(@as(*const IDot11AdHocInterfaceNotificationSink, @ptrCast(self)), eStatus);
}
};}
pub usingnamespace MethodMixin(@This());
};
//--------------------------------------------------------------------------------
// Section: Functions (61)
//--------------------------------------------------------------------------------
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanOpenHandle(
dwClientVersion: u32,
pReserved: ?*anyopaque,
pdwNegotiatedVersion: ?*u32,
phClientHandle: ?*?HANDLE,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanCloseHandle(
hClientHandle: ?HANDLE,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanEnumInterfaces(
hClientHandle: ?HANDLE,
pReserved: ?*anyopaque,
ppInterfaceList: ?*?*WLAN_INTERFACE_INFO_LIST,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetAutoConfigParameter(
hClientHandle: ?HANDLE,
OpCode: WLAN_AUTOCONF_OPCODE,
dwDataSize: u32,
// TODO: what to do with BytesParamIndex 2?
pData: ?*const anyopaque,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanQueryAutoConfigParameter(
hClientHandle: ?HANDLE,
OpCode: WLAN_AUTOCONF_OPCODE,
pReserved: ?*anyopaque,
pdwDataSize: ?*u32,
ppData: ?*?*anyopaque,
pWlanOpcodeValueType: ?*WLAN_OPCODE_VALUE_TYPE,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanGetInterfaceCapability(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
pReserved: ?*anyopaque,
ppCapability: ?*?*WLAN_INTERFACE_CAPABILITY,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetInterface(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
OpCode: WLAN_INTF_OPCODE,
dwDataSize: u32,
// TODO: what to do with BytesParamIndex 3?
pData: ?*const anyopaque,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanQueryInterface(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
OpCode: WLAN_INTF_OPCODE,
pReserved: ?*anyopaque,
pdwDataSize: ?*u32,
ppData: ?*?*anyopaque,
pWlanOpcodeValueType: ?*WLAN_OPCODE_VALUE_TYPE,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanIhvControl(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
Type: WLAN_IHV_CONTROL_TYPE,
dwInBufferSize: u32,
// TODO: what to do with BytesParamIndex 3?
pInBuffer: ?*anyopaque,
dwOutBufferSize: u32,
// TODO: what to do with BytesParamIndex 5?
pOutBuffer: ?*anyopaque,
pdwBytesReturned: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanScan(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
pDot11Ssid: ?*const DOT11_SSID,
pIeData: ?*const WLAN_RAW_DATA,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanGetAvailableNetworkList(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
dwFlags: u32,
pReserved: ?*anyopaque,
ppAvailableNetworkList: ?*?*WLAN_AVAILABLE_NETWORK_LIST,
) callconv(@import("std").os.windows.WINAPI) u32;
pub extern "wlanapi" fn WlanGetAvailableNetworkList2(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
dwFlags: u32,
pReserved: ?*anyopaque,
ppAvailableNetworkList: ?*?*WLAN_AVAILABLE_NETWORK_LIST_V2,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanGetNetworkBssList(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
pDot11Ssid: ?*const DOT11_SSID,
dot11BssType: DOT11_BSS_TYPE,
bSecurityEnabled: BOOL,
pReserved: ?*anyopaque,
ppWlanBssList: ?*?*WLAN_BSS_LIST,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanConnect(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
pConnectionParameters: ?*const WLAN_CONNECTION_PARAMETERS,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
pub extern "wlanapi" fn WlanConnect2(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
pConnectionParameters: ?*const WLAN_CONNECTION_PARAMETERS_V2,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanDisconnect(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanRegisterNotification(
hClientHandle: ?HANDLE,
dwNotifSource: u32,
bIgnoreDuplicate: BOOL,
funcCallback: ?WLAN_NOTIFICATION_CALLBACK,
pCallbackContext: ?*anyopaque,
pReserved: ?*anyopaque,
pdwPrevNotifSource: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanGetProfile(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strProfileName: ?[*:0]const u16,
pReserved: ?*anyopaque,
pstrProfileXml: ?*?PWSTR,
pdwFlags: ?*u32,
pdwGrantedAccess: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetProfileEapUserData(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strProfileName: ?[*:0]const u16,
eapType: EAP_METHOD_TYPE,
dwFlags: WLAN_SET_EAPHOST_FLAGS,
dwEapUserDataSize: u32,
// TODO: what to do with BytesParamIndex 5?
pbEapUserData: ?*const u8,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetProfileEapXmlUserData(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strProfileName: ?[*:0]const u16,
dwFlags: WLAN_SET_EAPHOST_FLAGS,
strEapXmlUserData: ?[*:0]const u16,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetProfile(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
dwFlags: u32,
strProfileXml: ?[*:0]const u16,
strAllUserProfileSecurity: ?[*:0]const u16,
bOverwrite: BOOL,
pReserved: ?*anyopaque,
pdwReasonCode: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanDeleteProfile(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strProfileName: ?[*:0]const u16,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanRenameProfile(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strOldProfileName: ?[*:0]const u16,
strNewProfileName: ?[*:0]const u16,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanGetProfileList(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
pReserved: ?*anyopaque,
ppProfileList: ?*?*WLAN_PROFILE_INFO_LIST,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetProfileList(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
dwItems: u32,
strProfileNames: [*]?PWSTR,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetProfilePosition(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strProfileName: ?[*:0]const u16,
dwPosition: u32,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetProfileCustomUserData(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strProfileName: ?[*:0]const u16,
dwDataSize: u32,
// TODO: what to do with BytesParamIndex 3?
pData: ?*const u8,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanGetProfileCustomUserData(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strProfileName: ?[*:0]const u16,
pReserved: ?*anyopaque,
pdwDataSize: ?*u32,
ppData: ?*?*u8,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetFilterList(
hClientHandle: ?HANDLE,
wlanFilterListType: WLAN_FILTER_LIST_TYPE,
pNetworkList: ?*const DOT11_NETWORK_LIST,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanGetFilterList(
hClientHandle: ?HANDLE,
wlanFilterListType: WLAN_FILTER_LIST_TYPE,
pReserved: ?*anyopaque,
ppNetworkList: ?*?*DOT11_NETWORK_LIST,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetPsdIEDataList(
hClientHandle: ?HANDLE,
strFormat: ?[*:0]const u16,
pPsdIEDataList: ?*const WLAN_RAW_DATA_LIST,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSaveTemporaryProfile(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
strProfileName: ?[*:0]const u16,
strAllUserProfileSecurity: ?[*:0]const u16,
dwFlags: u32,
bOverWrite: BOOL,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
pub extern "wlanapi" fn WlanDeviceServiceCommand(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
pDeviceServiceGuid: ?*Guid,
dwOpCode: u32,
dwInBufferSize: u32,
// TODO: what to do with BytesParamIndex 4?
pInBuffer: ?*anyopaque,
dwOutBufferSize: u32,
// TODO: what to do with BytesParamIndex 6?
pOutBuffer: ?*anyopaque,
pdwBytesReturned: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
pub extern "wlanapi" fn WlanGetSupportedDeviceServices(
hClientHandle: ?HANDLE,
pInterfaceGuid: ?*const Guid,
ppDevSvcGuidList: ?*?*WLAN_DEVICE_SERVICE_GUID_LIST,
) callconv(@import("std").os.windows.WINAPI) u32;
pub extern "wlanapi" fn WlanRegisterDeviceServiceNotification(
hClientHandle: ?HANDLE,
pDevSvcGuidList: ?*const WLAN_DEVICE_SERVICE_GUID_LIST,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanExtractPsdIEDataList(
hClientHandle: ?HANDLE,
dwIeDataSize: u32,
// TODO: what to do with BytesParamIndex 1?
pRawIeData: ?*const u8,
strFormat: ?[*:0]const u16,
pReserved: ?*anyopaque,
ppPsdIEDataList: ?*?*WLAN_RAW_DATA_LIST,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanReasonCodeToString(
dwReasonCode: u32,
dwBufferSize: u32,
pStringBuffer: [*]u16,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanAllocateMemory(
dwMemorySize: u32,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanFreeMemory(
pMemory: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanSetSecuritySettings(
hClientHandle: ?HANDLE,
SecurableObject: WLAN_SECURABLE_OBJECT,
strModifiedSDDL: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanapi" fn WlanGetSecuritySettings(
hClientHandle: ?HANDLE,
SecurableObject: WLAN_SECURABLE_OBJECT,
pValueType: ?*WLAN_OPCODE_VALUE_TYPE,
pstrCurrentSDDL: ?*?PWSTR,
pdwGrantedAccess: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "wlanui" fn WlanUIEditProfile(
dwClientVersion: u32,
wstrProfileName: ?[*:0]const u16,
pInterfaceGuid: ?*Guid,
hWnd: ?HWND,
wlStartPage: WL_DISPLAY_PAGES,
pReserved: ?*anyopaque,
pWlanReasonCode: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkStartUsing(
hClientHandle: ?HANDLE,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkStopUsing(
hClientHandle: ?HANDLE,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkForceStart(
hClientHandle: ?HANDLE,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkForceStop(
hClientHandle: ?HANDLE,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkQueryProperty(
hClientHandle: ?HANDLE,
OpCode: WLAN_HOSTED_NETWORK_OPCODE,
pdwDataSize: ?*u32,
ppvData: ?*?*anyopaque,
pWlanOpcodeValueType: ?*WLAN_OPCODE_VALUE_TYPE,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkSetProperty(
hClientHandle: ?HANDLE,
OpCode: WLAN_HOSTED_NETWORK_OPCODE,
dwDataSize: u32,
// TODO: what to do with BytesParamIndex 2?
pvData: ?*anyopaque,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkInitSettings(
hClientHandle: ?HANDLE,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkRefreshSecuritySettings(
hClientHandle: ?HANDLE,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkQueryStatus(
hClientHandle: ?HANDLE,
ppWlanHostedNetworkStatus: ?*?*WLAN_HOSTED_NETWORK_STATUS,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkSetSecondaryKey(
hClientHandle: ?HANDLE,
dwKeyLength: u32,
// TODO: what to do with BytesParamIndex 1?
pucKeyData: ?*u8,
bIsPassPhrase: BOOL,
bPersistent: BOOL,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanHostedNetworkQuerySecondaryKey(
hClientHandle: ?HANDLE,
pdwKeyLength: ?*u32,
ppucKeyData: ?*?*u8,
pbIsPassPhrase: ?*BOOL,
pbPersistent: ?*BOOL,
pFailReason: ?*WLAN_HOSTED_NETWORK_REASON,
pvReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "wlanapi" fn WlanRegisterVirtualStationNotification(
hClientHandle: ?HANDLE,
bRegister: BOOL,
pReserved: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows8.0'
pub extern "wlanapi" fn WFDOpenHandle(
dwClientVersion: u32,
pdwNegotiatedVersion: ?*u32,
phClientHandle: ?*?HANDLE,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows8.0'
pub extern "wlanapi" fn WFDCloseHandle(
hClientHandle: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows8.0'
pub extern "wlanapi" fn WFDStartOpenSession(
hClientHandle: ?HANDLE,
pDeviceAddress: ?*?*u8,
pvContext: ?*anyopaque,
pfnCallback: ?WFD_OPEN_SESSION_COMPLETE_CALLBACK,
phSessionHandle: ?*?HANDLE,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows8.0'
pub extern "wlanapi" fn WFDCancelOpenSession(
hSessionHandle: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows8.0'
pub extern "wlanapi" fn WFDOpenLegacySession(
hClientHandle: ?HANDLE,
pLegacyMacAddress: ?*?*u8,
phSessionHandle: ?*?HANDLE,
pGuidSessionInterface: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows8.0'
pub extern "wlanapi" fn WFDCloseSession(
hSessionHandle: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows8.0'
pub extern "wlanapi" fn WFDUpdateDeviceVisibility(
pDeviceAddress: ?*?*u8,
) callconv(@import("std").os.windows.WINAPI) u32;
//--------------------------------------------------------------------------------
// 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 (12)
//--------------------------------------------------------------------------------
const Guid = @import("../zig.zig").Guid;
const BOOL = @import("../foundation.zig").BOOL;
const BOOLEAN = @import("../foundation.zig").BOOLEAN;
const EAP_METHOD_TYPE = @import("../security/extensible_authentication_protocol.zig").EAP_METHOD_TYPE;
const HANDLE = @import("../foundation.zig").HANDLE;
const HRESULT = @import("../foundation.zig").HRESULT;
const HWND = @import("../foundation.zig").HWND;
const IUnknown = @import("../system/com.zig").IUnknown;
const LARGE_INTEGER = @import("../foundation.zig").LARGE_INTEGER;
const NDIS_OBJECT_HEADER = @import("../network_management/ndis.zig").NDIS_OBJECT_HEADER;
const PROPERTYKEY = @import("../ui/shell/properties_system.zig").PROPERTYKEY;
const PWSTR = @import("../foundation.zig").PWSTR;
test {
// The following '_ = <FuncPtrType>' lines are a workaround for https://github.com/ziglang/zig/issues/4476
if (@hasDecl(@This(), "WLAN_NOTIFICATION_CALLBACK")) { _ = WLAN_NOTIFICATION_CALLBACK; }
if (@hasDecl(@This(), "WFD_OPEN_SESSION_COMPLETE_CALLBACK")) { _ = WFD_OPEN_SESSION_COMPLETE_CALLBACK; }
@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| {
_ = @field(@This(), decl.name);
}
}