INTF_ENTRY structure

[INTF_ENTRY is no longer supported as of Windows Vista and Windows Server 2008. Instead, use the Native Wifi API, which provides similar functionality. For more information, see About the Native Wifi API.]

Contains detailed information about an interface that is required by an RPC client.

Syntax

typedef struct {
  LPWSTR   wszGuid;
  LPWSTR   wszDescr;
  DWORD    dwContext;
  ULONG    ulMediaState;
  ULONG    ulMediaType;
  ULONG    ulPhysicalMediaType;
  INT      nInfraMode;
  INT      nAuthMode;
  INT      nWepStatus;
  DWORD    dwCtlFlags;
  DWORD    dwDynFlags;
  DWORD    dwCapabilities;
  RAW_DATA rdNicCapabilities;
  RAW_DATA rdSSID;
  RAW_DATA rdBSSID;
  RAW_DATA rdBSSIDList;
  RAW_DATA rdStSSIDList;
  RAW_DATA rdCtrlData;
} INTF_ENTRY, *PINTF_ENTRY;

Members

wszGuid

A pointer to the interface GUID represented as a Unicode string in the following format: "{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}".

wszDescr

A pointer to a string that contains the interface description that is retrieved by the Wireless Zero Configuration service (WZCSVC).

dwContext

Reserved for internal use.

ulMediaState

The current NDIS media connect state for the interface. The following table shows the possible values.

Value Meaning
MEDIA_STATE_CONNECTED
1
The media is connected.
MEDIA_STATE_DISCONNECTED
0
The media is disconnected.
MEDIA_STATE_UNKNOWN
-1
The media state is unknown.

 

ulMediaType

The NDIS media types that the NIC currently uses. When queried, the value of this member is NdisMedium802_3 as defined in the Ndispnp.h header file.

ulPhysicalMediaType

The NDIS media type for the interface. When queried, the value of this member is NdisPhysicalMediumWirelessLan as defined in the Ndispnp.h header file.

nInfraMode

The current 802.11 Infrastructure Mode set on the interface.

nAuthMode

The current 802.11 Authentication Mode set on the interface.

The following table shows the possible values for the parameter based on the NDIS_802_11_AUTHENTICATION_MODE enumeration defined in the NtDDNdis.h header file.

Value Meaning
Ndis802_11AuthModeOpen
1
IEEE 802.11 Open System authentication.
Ndis802_11AuthModeShared
2
IEEE 802.11 shared authentication that uses a pre-shared wired equivalent privacy (WEP) key.
Ndis802_11AuthModeAutoSwitch
3
Auto-switch mode. When using auto-switch mode, the wireless network interface card (NIC) tries shared authentication mode first. If shared mode fails, the NIC attempts to use open authentication mode.
Ndis802_11AuthModeWPA
4
Wireless Protected Access(WPA) security. Authentication is performed between the supplicant, authenticator, and authentication server over IEEE 802.1X. Encryption keys are dynamic and are derived through the authentication process.
Ndis802_11AuthModeWPAPSK
5
WPA security using a pre-shared key. Authentication is performed between the supplicant and authenticator over IEEE 802.1X. Encryption keys are dynamic and are derived through the preshared key used by the supplicant and authenticator.
Ndis802_11AuthModeWPANone
6
WPA security. Authentication is performed using a preshared key without IEEE 802.1X authentication. Encryption keys are static and are derived through the preshared key. This mode is applicable only to ad hoc network types.
Ndis802_11AuthModeWPA2
7
WPA2 security. Authentication is performed between the supplicant, authenticator, and authentication server over IEEE 802.1X. Encryption keys are dynamic and are derived through the authentication process.
Ndis802_11AuthModeWPA2PSK
8
Specifies WPA2 security. Authentication is performed between the supplicant and authenticator over IEEE 802 1X. Encryption keys are dynamic and are derived through the preshared key used by the supplicant and authenticator.
Ndis802_11AuthModeMax
9
The maximum possible value for the NDIS_802_11_AUTHENTICATION_MODE enumeration value. This is not a legal value for the authentication mode.

 

nWepStatus

The current 802.11 Encryption Mode set on the interface.

dwCtlFlags

A bitmask value of control flags that indicate how WZCSVC is operating on the interface.

The following table shows the possible bit values.

Value Meaning
INTFCTL_CM_MASK
0x0007
A bitmask for the network filter mode. INTFCTL_CM_MASK & dwCtlFlags result in a value of the type NDIS_802_11_NETWORK_INFRASTRUCTURE. The resulting value indicates whether WZCSVC connects only to infrastructure networks, adhoc networks, or to both types of networks.
INTFCTL_ENABLED
0x8000
Indicates whether WZCSVC should configure the interface.
INTFCTL_FALLBACK
0x4000
If a preferred network is not available, this value indicates whether WZCSVC should automatically configure the NIC to associate to any available network.
INTFCTL_OIDSSUPP
0x2000
Indicates whether the NIC driver supports all the 802.11 OIDs required by WZCSVC to function.
INTFCTL_VOLATILE
0x1000
Indicates whether the service parameters for this interface should be retained in the registry.
If this value is set, then these parameters are volatile and should not be retained in the registry.
INTFCTL_POLICY
0x0800
Indicates whether the service parameters for this interface are pushed by a group policy.
If this value is set, then the service parameters are pushed to the local computer by group policy.
INTFCTL_8021XSUPP
0x1000
Indicates whether 802.1X support is enabled.

 

dwDynFlags

A bitmask of dynamic flags that control the dynamic (non-persistent and non-static) behavior on the interface.

These bits are useful to trigger dynamic, temporary changes in the way the WZCSVC acts on the interface. None of these bits are persisted in the registry, so the settings won't survive a system restart or a device disable and enable sequence.

The following table shows the possible bit values.

Value Meaning
INTFDYN_NOSCAN
0x00000001
Indicates that the WZCSVC should not request the interface conduct an active scan, but instead use the cached values in the NIC driver.

 

dwCapabilities

Specifies the driver capabilities.

Value Meaning
INTFCAP_MAX_CIPHER_MASK
0x000000ff
The lower order bits of this member are used to indicate the maximum encryption that is supported. The possible values are some of the enumeration values defined in the NDIS_802_11_WEP_STATUS structure in the NtDDNdis.h header file included in the Windows SDK.
The Ndis802_11Encryption1Enabled value (2) indicates that WEP is supported. TKIP and AES are not supported, and a transmit key may or may not be available.
The Ndis802_11Encryption2Enabled value (9) indicates that TKIP and WEP are supported. AES is not supported, and a transmit key is available.
The Ndis802_11Encryption3Enabled value (11) indicates that AES, TKIP, and WEP are supported, and a transmit key is available.
The Ndis802_11EncryptionNotSupported (8) indicates Indicates that the WEP key is not supported.
INTFCAP_SSN
0x00000100
Indicates support for Simple Secure Network (SSN) which is a subset of 802.11i.
SSN changes the encryption key periodically, as opposed to the WEP (Wired Equivalent Privacy) standard, which uses a static key. In order for SSN to work, the maximum supported cipher should be at least TKIP. SSN was developed by a consortium of vendors in 2002 as an interim approach to improve wireless LAN security while the IEEE 802.11i standard was being completed.
INTFCAP_80211I
0x00000200
Indicates support for the IEEE 802.11i standard.

 

rdNicCapabilities

A set of capabilities for 802.11i.

The WZCQueryInterface function returns rdNicCapabilities data when called with the INTF_CAPABILITIES flag passed in the dwInflags parameter. If the function call is successful, the pData member of the RAW_DATA structure contains an INTF_80211_CAPABILITY structure.

rdSSID

Binary data containing the 802.11 SSID currently configured on the interface.

The WZCQueryInterface function returns rdSSID data when called with the INTF_SSID flag passed in the dwInflags parameter. If the function call is successful, the dwDataLen member of the RAW_DATA structure contains the SsidLength member of a NDIS_802_11_SSID structure and the pData member of the RAW_DATA structure contains the Ssid member of a NDIS_802_11_SSID structure.

The NDIS_802_11_SSID structure is defined in the Ntddndis.h header file.

rdBSSID

Binary data containing the 802.11 BSSID configured on the interface.

The WZCQueryInterface function returns rdBSSID data when called with the INTF_BSSID flag passed in the dwInflags parameter. If the function call is successful, the dwDataLen member of the RAW_DATA structure contains the size of an NDIS_802_11_MAC_ADDRESS structure and the pData member of the RAW_DATA structure contains the NDIS_802_11_MAC_ADDRESS structure.

The NDIS_802_11_MAC_ADDRESS structure is defined in the Ntddndis.h header file.

rdBSSIDList

Binary data that contains the list of BSSIDs that was last retrieved by WZCSVC.

The WZCQueryInterface function returns rdBSSIDList data when called with the INTF_BSSIDLIST flag passed in the dwInflags parameter. If the function call is successful, the dwDataLen member of the RAW_DATA structure contains the length of the buffer with the returned data and the pData member of the RAW_DATA structure contains the WZC_802_11_CONFIG_LIST structure.

rdStSSIDList

Binary data that contains the list of preferred networks configured for this interface.

The WZCQueryInterface function returns rdStSSIDList data when called with the INTF_PREFLIST flag passed in the dwInflags parameter. If the function call is successful, the dwDataLen member of the RAW_DATA structure contains the length of the buffer with the returned data and the pData member of the RAW_DATA structure contains the WZC_802_11_CONFIG_LIST structure.

If one of the preferred networks is currently connected, the dwCtlFlags member of the WZC_WLAN_CONFIG structure for the network will have the WZCCTL_MEDIA_CONNECTED (0x0400) bit set.

rdCtrlData

Binary data used with other control flags, when setting additional parameters on the interface.

Remarks

The INTF_ENTRY structure is used by the WZCQueryInterface and WZCRefreshInterface functions.

The RAW_DATA structure is defined as follows:

typedef struct
{
    DWORD   dwDataLen;
    LPBYTE  pData;
} RAW_DATA, *PRAW_DATA;

The pData member points to binary data. The dwDataLen indicates the number of bytes pointed by pData.

Note

The Wzcsapi.h header file is not available in the Windows SDK.

 

Requirements

Requirement Value
Minimum supported client
Windows XP with SP2 [desktop apps only]
Minimum supported server
Windows Server 2003 [desktop apps only]
End of client support
Windows XP with SP3
End of server support
Windows Server 2003
Header
Wzcsapi.h

See also

WZCEnumInterfaces

WZCQueryInterface

WZCRefreshInterface