// wificx.h
typedef struct _WIFI_WIFIDIRECT_CAPABILITIES {
ULONG Size;
UINT8 WFDRoleCount;
UINT8 ConcurrentGOCount;
UINT8 ConcurrentClientCount;
BOOLEAN ServiceDiscoverySupported;
BOOLEAN ServiceNameDiscoverySupported;
BOOLEAN ServiceInformationDiscoverySupported;
UINT32 ServiceNameAdvertisementsMaxBytesSupported;
UINT32 ServiceInformationAdvertisementsMaxBytesSupported;
BOOLEAN BackgroundDiscoverySupported;
BOOLEAN ClientDiscoverabilitySupported;
BOOLEAN InfrastructureManagementSupported;
UINT8 DeviceAddress[6];
UINT32 DiscoveryFilterListSize;
UINT8 GOClientTableSize;
UINT32 MaxVendorSpecificExtensionIESize;
BOOLEAN PassiveAvailabilityListenStateSupported;
BOOLEAN OperatingChannelUpdatesSupported;
BOOLEAN GOon5GHzBandSupported;
UINT32 ScanSSIDListSize;
UINT32 DesiredSSIDListSize;
UINT32 PrivacyExemptionListSize;
UINT32 AssociationTableSize;
UINT32 DefaultKeyTableSize;
UINT32 WEPKeyValueMaxLength;
UINT32 NumSupportedUnicastAlgorithms;
PDOT11_AUTH_CIPHER_PAIR UnicastAlgorithms;
UINT32 NumSupportedMulticastDataAlgorithms;
PDOT11_AUTH_CIPHER_PAIR MulticastDataAlgorithms;
UINT32 NumInterfaceAddresses;
WDI_MAC_ADDRESS *InterfaceAddressList;
BOOLEAN GOon6GHzBandSupported;
} WIFI_WIFIDIRECT_CAPABILITIES;
View the official Windows Driver Kit DDI referenceNo description available.
The WIFI_WIFIDIRECT_CAPABILITIES structure describes the Wi-Fi Direct capabilities for a WiFiCx device.
SizeThe sum (in bytes) of the sizes of all contained elements.
WFDRoleCountNumber of supported Wi-Fi Direct Role Ports
ConcurrentGOCountSpecifies the concurrent Group Owner count.
ConcurrentClientCountSpecifies the concurrent Client count.
ServiceDiscoverySupportedSpecifies whether Service discovery is supported. Valid values are 0 (not supported) and 1 (supported).
ServiceNameDiscoverySupportedWi-Fi Direct Service Names Discovery support. Specifies whether, when given a list of service name hashes, the adapter can probe for service hashes and indicate the responses as they arrive. Valid values are 0 (not supported) and 1 (supported).
ServiceInformationDiscoverySupportedWi-Fi Direct Service Information Discovery support. Specifies whether, when given a list of service name hashes, the adapter can perform probes and ANQP queries to get full service information. Valid values are 0 (not supported) and 1 (supported).
ServiceNameAdvertisementsMaxBytesSupportedSpecifies the maximum supported number of Service Name Advertisements bytes (to be sent in the beacon and probe responses). This sets a hard limit on the number of services that can be advertised.
ServiceInformationAdvertisementsMaxBytesSupportedSpecifies the maximum supported number of Service Information Advertisement bytes the adapter can respond to using the GAS protocol. This is only valid if the device supports responding to Service Advertisement queries. This value is for firmware optimization so that the firmware does not wake up the host to respond to every query. The operating system does not limit the number of service advertisements if the firmware has a limitation because there is a fallback in the operating system. If the firmware cannot handle the ANQP query response, it should pass up the request and the operating system handles it.
BackgroundDiscoverySupportedBackground discovery of Wi-Fi Direct devices and services. Specifies whether the adapter can periodically query for Wi-Fi Direct devices and service names so any new devices show up within 5 minutes of becoming visible. Valid values are 0 (not supported) and 1 (supported).
ClientDiscoverabilitySupportedSpecifies whether Client Discoverability is supported. Valid values are 0 (not supported) and 1 (supported).
InfrastructureManagementSupportedSpecifies whether infrastructure management is supported. Valid values are 0 (not supported) and 1 (supported).
DeviceAddress[6]The device address in network byte order.
DiscoveryFilterListSizeThe discovery filter list size.
GOClientTableSizeThe GO client table size.
MaxVendorSpecificExtensionIESizeThe maximum size, in bytes, of vendor specific extension IEs that can be added to WFD management frames.
PassiveAvailabilityListenStateSupportedSpecifies whether the ability to listen for P2P Services in the background is supported. Valid values are 0 (not supported) and 1 (supported).
OperatingChannelUpdatesSupportedSpecifies whether the adapter supports indicating updates to the GO operating channel(s). Valid values are 0 (not supported) and 1 (supported).
GOon5GHzBandSupportedSpecifies whether the adapter supports operating a GO on the 5GHz band. Valid values are 0 (not supported) and 1 (supported).
ScanSSIDListSizeThe scan SSID list size.
DesiredSSIDListSizeThe desired SSID list size.
PrivacyExemptionListSizeThe privacy exemption list size.
AssociationTableSizeThe association table size.
DefaultKeyTableSizeThe default key table size.
WEPKeyValueMaxLengthThe maximum length of the WEP key value.
NumSupportedUnicastAlgorithmsThe number of unicast algorithms supported.
UnicastAlgorithmsA pointer to an array of unicast cipher algorithms formatted as DOT11_AUTH_CIPHER_PAIR structures. The length of this array is specified by the NumSupportedUnicastAlgorithms member.
NumSupportedMulticastDataAlgorithmsThe number of multicast data cipher algorithms supported.
MulticastDataAlgorithmsA pointer to an array of multicast data cipher algorithms formatted as DOT11_AUTH_CIPHER_PAIR structures. The length of this array is specified by the NumSupportedMulticastDataAlgorithms member.
NumInterfaceAddressesThe number of interface addresses supported.
InterfaceAddressListA pointer to an array of interface addresses formatted as WDI_MAC_ADDRESS structures. The length of this array is specified by the NumInterfaceAddresses member.
GOon6GHzBandSupportedA BOOLEAN value that specifies whether the adapter supports operating a GO on 6GHz band. Valid values are 0 (not supported) and 1 (supported).
Call WIFI_WIFIDIRECT_CAPABILITIES_INIT to initialize this structure and fill in its Size field. Then call WifiDeviceSetWiFiDirectCapabilities to report Wi-Fi Direct capabilities to WiFiCx.
WIFI_WIFIDIRECT_CAPABILITIES_INIT
WifiDeviceSetWiFiDirectCapabilities