Pulled out dot1x.h structs and enums into Dot1x.cs

pull/250/head
dahall 2021-09-29 09:47:47 -06:00
parent 26bd7d8e04
commit f33d7e4c1c
3 changed files with 1626 additions and 1593 deletions

1626
PInvoke/WlanApi/Dot1x.cs Normal file

File diff suppressed because it is too large Load Diff

View File

@ -316,478 +316,6 @@ namespace Vanara.PInvoke
dot11_radio_state_off
}
/// <summary>
/// The <c>ONEX_AUTH_IDENTITY</c> enumerated type specifies the possible values of the identity used for 802.1X authentication status.
/// </summary>
/// <remarks>
/// <para>
/// The <c>ONEX_AUTH_IDENTITY</c> enumerated type is used by the 802.1X module, a new wireless configuration component supported on
/// Windows Vista and later.
/// </para>
/// <para>
/// The <c>ONEX_AUTH_IDENTITY</c> specifies the possible values of the identity used for 802.1X authentication. The
/// <c>ONEX_AUTH_IDENTITY</c> is a function of the 802.1X authentication mode selected and various system triggers (user logon and
/// logoff operations, for example).
/// </para>
/// <para>
/// The ONEX_RESULT_UPDATE_DATA contains information on a status change to 802.1X authentication. The <c>ONEX_RESULT_UPDATE_DATA</c>
/// structure is returned when the <c>NotificationSource</c> member of the WLAN_NOTIFICATION_DATA structure is
/// <c>WLAN_NOTIFICATION_SOURCE_ONEX</c> and the <c>NotificationCode</c> member of the <c>WLAN_NOTIFICATION_DATA</c> structure for
/// received notification is <c>OneXNotificationTypeResultUpdate</c>. For this notification, the <c>pData</c> member of the
/// <c>WLAN_NOTIFICATION_DATA</c> structure points to an <c>ONEX_RESULT_UPDATE_DATA</c> structure that contains information on the
/// 802.1X authentication status change.
/// </para>
/// <para>
/// If the <c>fOneXAuthParams</c> member in the ONEX_RESULT_UPDATE_DATA structure is set, then the <c>authParams</c> member of the
/// <c>ONEX_RESULT_UPDATE_DATA</c> structure contains an ONEX_VARIABLE_BLOB structure with an ONEX_AUTH_PARAMS structure embedded
/// starting at the <c>dwOffset</c> member of the <c>ONEX_VARIABLE_BLOB</c>. This <c>ONEX_AUTH_PARAMS</c> structure that contains a
/// value from the <c>ONEX_AUTH_IDENTITY</c> enumeration in the <c>authIdentity</c> member.
/// </para>
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/dot1x/ne-dot1x-onex_auth_identity typedef enum _ONEX_AUTH_IDENTITY {
// OneXAuthIdentityNone, OneXAuthIdentityMachine, OneXAuthIdentityUser, OneXAuthIdentityExplicitUser, OneXAuthIdentityGuest,
// OneXAuthIdentityInvalid } ONEX_AUTH_IDENTITY, PONEX_AUTH_IDENTITY;
[PInvokeData("dot1x.h", MSDNShortId = "c51ab620-7e44-4798-8206-8ae9bbcd6614")]
public enum ONEX_AUTH_IDENTITY
{
/// <summary>No identity is specified in the profile used for 802.1X authentication.</summary>
OneXAuthIdentityNone,
/// <summary>The identity of the local machine account is used for 802.1X authentication.</summary>
OneXAuthIdentityMachine,
/// <summary>The identity of the logged-on user is used for 802.1X authentication.</summary>
OneXAuthIdentityUser,
/// <summary>
/// The identity of an explicit user as specified in the profile is used for 802.1X authentication. This value is used when
/// performing single signon or when credentials are saved with the profile.
/// </summary>
OneXAuthIdentityExplicitUser,
/// <summary>The identity of the Guest account as specified in the profile is used for 802.1X authentication.</summary>
OneXAuthIdentityGuest,
/// <summary>The identity is not valid as specified in the profile used for 802.1X authentication.</summary>
OneXAuthIdentityInvalid,
}
/// <summary>
/// The authMode element in the 802.1X schema that specifies the type of credentials used for 802.1X authentication. For more
/// information, see the authMode (OneX) Element in the 802.1X scheme.
/// </summary>
[PInvokeData("", MSDNShortId = "ec494c74-bc79-445a-8889-a6f441e95ac5")]
public enum ONEX_AUTH_MODE
{
/// <summary>
/// Use machine or user credentials. When a user is logged on, the user's credentials are used for authentication. When no user
/// is logged on, machine credentials are used.
/// </summary>
OneXAuthModeMachineOrUser = 0,
/// <summary>Use machine credentials only.</summary>
OneXAuthModeMachineOnly = 1,
/// <summary>Use user credentials only.</summary>
OneXAuthModeUserOnly = 2,
/// <summary>Use guest (empty) credentials only.</summary>
OneXAuthModeGuest = 3,
/// <summary>Credentials to use are not specified.</summary>
OneXAuthModeUnspecified = 4,
}
/// <summary>
/// The <c>ONEX_AUTH_RESTART_REASON</c> enumerated type specifies the possible reasons that 802.1X authentication was restarted.
/// </summary>
/// <remarks>
/// <para>
/// The <c>ONEX_AUTH_RESTART_REASON</c> enumerated type is used by the 802.1X module, a new wireless configuration component
/// supported on Windows Vista and later.
/// </para>
/// <para>
/// The <c>ONEX_AUTH_RESTART_REASON</c> specifies the possible values for the reason that 802.1X authentication was restarted. A
/// value from this enumeration is returned when the <c>NotificationSource</c> member of the WLAN_NOTIFICATION_DATA structure is
/// <c>WLAN_NOTIFICATION_SOURCE_ONEX</c> and the <c>NotificationCode</c> member of the <c>WLAN_NOTIFICATION_DATA</c> structure for
/// received notifications is <c>OneXNotificationTypeAuthRestarted</c>. For this notification, the <c>pData</c> member of the
/// <c>WLAN_NOTIFICATION_DATA</c> structure points to an <c>ONEX_AUTH_RESTART_REASON</c> enumeration value that identifies the
/// reason the authentication was restarted.
/// </para>
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/dot1x/ne-dot1x-onex_auth_restart_reason typedef enum _ONEX_AUTH_RESTART_REASON
// { OneXRestartReasonPeerInitiated, OneXRestartReasonMsmInitiated, OneXRestartReasonOneXHeldStateTimeout,
// OneXRestartReasonOneXAuthTimeout, OneXRestartReasonOneXConfigurationChanged, OneXRestartReasonOneXUserChanged,
// OneXRestartReasonQuarantineStateChanged, OneXRestartReasonAltCredsTrial, OneXRestartReasonInvalid } ONEX_AUTH_RESTART_REASON, PONEX_AUTH_RESTART_REASON;
[PInvokeData("dot1x.h", MSDNShortId = "794231da-ef4e-4419-9ff8-9b23483853d1")]
public enum ONEX_AUTH_RESTART_REASON
{
/// <summary>
/// The EAPHost component (the peer) requested the 802.1x module to restart 802.1X authentication. This results from a
/// EapHostPeerProcessReceivedPacket function call that returns an EapHostPeerResponseAction enumeration value of
/// EapHostPeerResponseStartAuthentication in the pEapOutput parameter.
/// </summary>
OneXRestartReasonPeerInitiated,
/// <summary>The Media Specific Module (MSM) initiated the 802.1X authentication restart.</summary>
OneXRestartReasonMsmInitiated,
/// <summary>
/// The 802.1X authentication restart was the result of a state timeout. The timer expiring is the heldWhile timer of the 802.1X
/// supplicant state machine defined in IEEE 802.1X - 2004 standard for Port-Based Network Access Control. The heldWhile timer
/// is used by the supplicant state machine to define periods of time during which itwill not attempt to acquire an authenticator.
/// </summary>
OneXRestartReasonOneXHeldStateTimeout,
/// <summary>
/// The 802.1X authentication restart was the result of an state timeout. The timer expiring is the authWhile timer of the
/// 802.1X supplicant port access entity defined in IEEE 802.1X - 2004 standard for Port-Based Network Access Control. The
/// authWhile timer is used by the supplicant port access entity to determine how long to wait for a request fromthe
/// authenticator before timing it out.
/// </summary>
OneXRestartReasonOneXAuthTimeout,
/// <summary>The 802.1X authentication restart was the result of a configuration change to the current profile.</summary>
OneXRestartReasonOneXConfigurationChanged,
/// <summary>
/// The 802.1X authentication restart was the result of a change of user. This could occur if the current user logs off and new
/// user logs on to the local computer.
/// </summary>
OneXRestartReasonOneXUserChanged,
/// <summary>
/// The 802.1X authentication restart was the result of receiving a notification from the EAP quarantine enforcement client
/// (QEC) due to a network health change. If an EAPHost supplicant is participating in network access protection (NAP), the
/// supplicant will respond to changes in the state of its network health. If that state changes, the supplicant must then
/// initiate a re-authentication session. For more information, see the EapHostPeerBeginSession function.
/// </summary>
OneXRestartReasonQuarantineStateChanged,
/// <summary>
/// The 802.1X authentication restart was caused by a new authentication attempt with alternate user credentials. EAP methods
/// like MSCHAPv2 prefer to use logged-on user credentials for 802.1X authentication. If these user credentials do not work,
/// then a dialog will be displayed to the user that asks permission to use alternate credentials for 802.1X authentication. For
/// more information, see the EapHostPeerBeginSession function and EAP_FLAG_PREFER_ALT_CREDENTIALS flag in the dwflags parameter.
/// </summary>
OneXRestartReasonAltCredsTrial,
/// <summary>Indicates the end of the range that specifies the possible reasons that 802.1X authentication was restarted.</summary>
OneXRestartReasonInvalid,
}
/// <summary>The <c>ONEX_AUTH_STATUS</c> enumerated type specifies the possible values for the 802.1X authentication status.</summary>
/// <remarks>
/// <para>
/// The <c>ONEX_AUTH_STATUS</c> enumerated type is used by the 802.1X module, a new wireless configuration component supported on
/// Windows Vista and later.
/// </para>
/// <para>
/// The <c>ONEX_AUTH_STATUS</c> specifies the possible values for the 802.1X authentication status. A value from this enumeration is
/// returned when the <c>NotificationSource</c> member of the WLAN_NOTIFICATION_DATA structure is
/// <c>WLAN_NOTIFICATION_SOURCE_ONEX</c> and the <c>NotificationCode</c> member of the <c>WLAN_NOTIFICATION_DATA</c> structure for
/// received notifications is <c>OneXNotificationTypeResultUpdate</c>. For this notification, the <c>pData</c> member of the
/// <c>WLAN_NOTIFICATION_DATA</c> structure points to an ONEX_RESULT_UPDATE_DATA structure that contains a ONEX_STATUS structure
/// member in the <c>oneXStatus</c> structure member. The <c>ONEX_STATUS</c> structure contains a <c>ONEX_AUTH_STATUS</c>
/// enumeration value in the <c>authStatus</c> member.
/// </para>
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/dot1x/ne-dot1x-onex_auth_status typedef enum _ONEX_AUTH_STATUS {
// OneXAuthNotStarted, OneXAuthInProgress, OneXAuthNoAuthenticatorFound, OneXAuthSuccess, OneXAuthFailure, OneXAuthInvalid }
// ONEX_AUTH_STATUS, PONEX_AUTH_STATUS;
[PInvokeData("dot1x.h", MSDNShortId = "9a5c7876-2c6b-450e-95e4-2766d63b6e19")]
public enum ONEX_AUTH_STATUS
{
/// <summary>802.1X authentication was not started.</summary>
OneXAuthNotStarted,
/// <summary>802.1X authentication is in progress.</summary>
OneXAuthInProgress,
/// <summary>
/// No 802.1X authenticator was found. The 802.1X authentication was attempted, but no 802.1X peer was found. In this case,
/// either the network does not support or is not configured to support the 802.1X standard.
/// </summary>
OneXAuthNoAuthenticatorFound,
/// <summary>802.1X authentication was successful.</summary>
OneXAuthSuccess,
/// <summary>802.1X authentication was a failure.</summary>
OneXAuthFailure,
/// <summary>Indicates the end of the range that specifies the possible values for 802.1X authentication status.</summary>
OneXAuthInvalid,
}
/// <summary>
/// The <c>ONEX_EAP_METHOD_BACKEND_SUPPORT</c> enumerated type specifies the possible values for whether the EAP method configured
/// on the supplicant for 802.1X authentication is supported on the authentication server.
/// </summary>
/// <remarks>
/// <para>
/// The <c>ONEX_EAP_METHOD_BACKEND_SUPPORT</c> enumeration is used by the 802.1X module, a new wireless configuration component
/// supported on Windows Vista and later.
/// </para>
/// <para>
/// The ONEX_RESULT_UPDATE_DATA contains information on a status change to 802.1X authentication. The <c>ONEX_RESULT_UPDATE_DATA</c>
/// structure is returned when the <c>NotificationSource</c> member of the WLAN_NOTIFICATION_DATA structure is
/// <c>WLAN_NOTIFICATION_SOURCE_ONEX</c> and the <c>NotificationCode</c> member of the <c>WLAN_NOTIFICATION_DATA</c> structure for
/// received notification is <c>OneXNotificationTypeResultUpdate</c>. For this notification, the <c>pData</c> member of the
/// <c>WLAN_NOTIFICATION_DATA</c> structure points to an <c>ONEX_RESULT_UPDATE_DATA</c> structure that contains information on the
/// 802.1X authentication status change.
/// </para>
/// <para>
/// The <c>BackendSupport</c> member of the ONEX_RESULT_UPDATE_DATA struct contains a value from the
/// <c>ONEX_EAP_METHOD_BACKEND_SUPPORT</c> enumeration.
/// </para>
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/dot1x/ne-dot1x-onex_eap_method_backend_support typedef enum
// _ONEX_EAP_METHOD_BACKEND_SUPPORT { OneXEapMethodBackendSupportUnknown, OneXEapMethodBackendSupported,
// OneXEapMethodBackendUnsupported } ONEX_EAP_METHOD_BACKEND_SUPPORT;
[PInvokeData("dot1x.h", MSDNShortId = "ae0c30c3-331e-4b57-aa5f-f6b1f73dc69d")]
public enum ONEX_EAP_METHOD_BACKEND_SUPPORT
{
/// <summary>
/// It is not known whether the EAP method configured on the supplicant for 802.1X authentication is supported on the
/// authentication server. This value can be returned if the 802.1X authentication process is in the initial state.
/// </summary>
OneXEapMethodBackendSupportUnknown,
/// <summary>
/// The EAP method configured on the supplicant for 802.1X authentication is supported on the authentication server. The 802.1X
/// handshake is used to decide what is an acceptable EAP method to use.
/// </summary>
OneXEapMethodBackendSupported,
/// <summary>
/// The EAP method configured on the supplicant for 802.1X authentication is not supported on the authentication server.
/// </summary>
OneXEapMethodBackendUnsupported,
}
/// <summary>
/// The <c>ONEX_NOTIFICATION_TYPE</c> enumerated type specifies the possible values of the <c>NotificationCode</c> member of the
/// WLAN_NOTIFICATION_DATA structure for 802.1X module notifications.
/// </summary>
/// <remarks>
/// <para>
/// The <c>ONEX_NOTIFICATION_TYPE</c> enumerated type is used by the 802.1X module, a new wireless configuration component supported
/// on Windows Vista and later.
/// </para>
/// <para>
/// The <c>ONEX_NOTIFICATION_TYPE</c> specifies the possible values for the <c>NotificationCode</c> member of the
/// WLAN_NOTIFICATION_DATA structure for received notifications when the <c>NotificationSource</c> member of the
/// <c>WLAN_NOTIFICATION_DATA</c> structure is <c>WLAN_NOTIFICATION_SOURCE_ONEX</c>.
/// </para>
/// <para>
/// The WlanRegisterNotification function is used by an application to register and unregister notifications on all wireless
/// interfaces. When registering for notifications, an application must provide a callback function pointed to by the funcCallback
/// parameter passed to the <c>WlanRegisterNotification</c> function. The prototype for this callback function is the
/// WLAN_NOTIFICATION_CALLBACK. This callback function will receive notifications that have been registered in the dwNotifSource
/// parameter passed to the <c>WlanRegisterNotification</c> function.
/// </para>
/// <para>
/// The callback function is called with a pointer to a WLAN_NOTIFICATION_DATA structure as the first parameter that contains
/// detailed information on the notification. The callback function also receives a second parameter that contains a pointer to the
/// client context passed in the pCallbackContext parameter to the WlanRegisterNotification function. This client context can be a
/// <c>NULL</c> pointer if that is what was passed to the <c>WlanRegisterNotification</c> function.
/// </para>
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/dot1x/ne-dot1x-onex_notification_type typedef enum _ONEX_NOTIFICATION_TYPE {
// OneXPublicNotificationBase, OneXNotificationTypeResultUpdate, OneXNotificationTypeAuthRestarted,
// OneXNotificationTypeEventInvalid, OneXNumNotifications } ONEX_NOTIFICATION_TYPE, PONEX_NOTIFICATION_TYPE;
[PInvokeData("dot1x.h", MSDNShortId = "c5892938-9798-4c09-a766-4924cda4d090")]
public enum ONEX_NOTIFICATION_TYPE : uint
{
/// <summary>Indicates the beginning of the range that specifies the possible values for 802.1X notifications.</summary>
OneXPublicNotificationBase,
/// <summary>
/// Indicates that 802.1X authentication has a status change.The pData member of the WLAN_NOTIFICATION_DATA structure points to
/// a ONEX_RESULT_UPDATE_DATA structure that contains 802.1X update data.
/// </summary>
OneXNotificationTypeResultUpdate,
/// <summary>
/// Indicates that 802.1X authentication restarted.The pData member of the WLAN_NOTIFICATION_DATA structure points to an
/// ONEX_AUTH_RESTART_REASON enumeration value that identifies the reason the authentication was restarted.
/// </summary>
OneXNotificationTypeAuthRestarted,
/// <summary>Indicates the end of the range that specifies the possible values for 802.1X notifications.</summary>
OneXNotificationTypeEventInvalid,
/// <summary>Indicates the end of the range that specifies the possible values for 802.1X notifications.</summary>
OneXNumNotifications,
}
/// <summary>
/// The <c>ONEX_REASON_CODE</c> enumerated type specifies the possible values that indicate the reason that 802.1X authentication failed.
/// </summary>
/// <remarks>
/// <para>
/// The <c>ONEX_REASON_CODE</c> enumerated type is used by the 802.1X module, a new wireless configuration component supported on
/// Windows Vista and later.
/// </para>
/// <para>
/// The ONEX_RESULT_UPDATE_DATA contains information on a status change to 802.1X authentication. The <c>ONEX_RESULT_UPDATE_DATA</c>
/// structure is returned when the <c>NotificationSource</c> member of the WLAN_NOTIFICATION_DATA structure is
/// <c>WLAN_NOTIFICATION_SOURCE_ONEX</c> and the <c>NotificationCode</c> member of the <c>WLAN_NOTIFICATION_DATA</c> structure for
/// received notification is <c>OneXNotificationTypeResultUpdate</c>. For this notification, the <c>pData</c> member of the
/// <c>WLAN_NOTIFICATION_DATA</c> structure points to an <c>ONEX_RESULT_UPDATE_DATA</c> structure that contains information on the
/// 802.1X authentication status change.
/// </para>
/// <para>
/// The <c>oneXStatus</c> member of the ONEX_RESULT_UPDATE_DATA structure contains an ONEX_STATUS structure. If an error occurred
/// during 802.1X authentication, the dwReason menber of this <c>ONEX_STATUS</c> structure contains the reason for the error
/// specified as a value from the <c>ONEX_REASON_CODE</c> enumeration.
/// </para>
/// </remarks>
// https://docs.microsoft.com/en-us/windows/win32/api/dot1x/ne-dot1x-onex_reason_code typedef enum _ONEX_REASON_CODE {
// ONEX_REASON_CODE_SUCCESS, ONEX_REASON_START, ONEX_UNABLE_TO_IDENTIFY_USER, ONEX_IDENTITY_NOT_FOUND, ONEX_UI_DISABLED,
// ONEX_UI_FAILURE, ONEX_EAP_FAILURE_RECEIVED, ONEX_AUTHENTICATOR_NO_LONGER_PRESENT, ONEX_NO_RESPONSE_TO_IDENTITY,
// ONEX_PROFILE_VERSION_NOT_SUPPORTED, ONEX_PROFILE_INVALID_LENGTH, ONEX_PROFILE_DISALLOWED_EAP_TYPE,
// ONEX_PROFILE_INVALID_EAP_TYPE_OR_FLAG, ONEX_PROFILE_INVALID_ONEX_FLAGS, ONEX_PROFILE_INVALID_TIMER_VALUE,
// ONEX_PROFILE_INVALID_SUPPLICANT_MODE, ONEX_PROFILE_INVALID_AUTH_MODE, ONEX_PROFILE_INVALID_EAP_CONNECTION_PROPERTIES,
// ONEX_UI_CANCELLED, ONEX_PROFILE_INVALID_EXPLICIT_CREDENTIALS, ONEX_PROFILE_EXPIRED_EXPLICIT_CREDENTIALS, ONEX_UI_NOT_PERMITTED }
// ONEX_REASON_CODE, PONEX_REASON_CODE;
[PInvokeData("dot1x.h", MSDNShortId = "9ce6ff56-946c-4058-b9a6-33dab4124c24")]
public enum ONEX_REASON_CODE
{
/// <summary>Indicates the 802.1X authentication was a success.</summary>
ONEX_REASON_CODE_SUCCESS,
/// <summary>Indicates the start of the range that specifies the possible values for 802.1X reason code.</summary>
ONEX_REASON_START,
/// <summary>
/// The 802.1X module was unable to identify a set of credentials to be used. An example is when the authentication mode is set
/// to user, but no user is logged on.
/// </summary>
ONEX_UNABLE_TO_IDENTIFY_USER,
/// <summary>
/// The EAP module was unable to acquire an identity for the user. Thus value is not currently used. All EAP-specific errors are
/// returned as ONEX_EAP_FAILURE_RECEIVED.
/// </summary>
ONEX_IDENTITY_NOT_FOUND,
/// <summary>
/// To proceed with 802.1X authentication, the system needs to request user input, but the user interface is disabled. On
/// Windows Vista and on Windows Server 2008, this value can be returned if an EAP method requested user input for a profile for
/// Guest or local machine authentication. On Windows 7 and on Windows Server 2008 R2 with the Wireless LAN Service installed,
/// this value should not be returned.
/// </summary>
ONEX_UI_DISABLED,
/// <summary>
/// The 802.1X authentication module was unable to return the requested user input. On Windows 7 and on Windows Server 2008 R2
/// with the Wireless LAN Service installed, this value can be returned if an EAP method requested user input, but the UI could
/// not be displayed (the network icon was configured to not show in the taskbar, for example).
/// </summary>
ONEX_UI_FAILURE,
/// <summary>
/// The EAP module returned an error code. The ONEX_EAP_ERROR structure may contain additional information about the specific
/// EAP error (a certificate not found, for example).
/// </summary>
ONEX_EAP_FAILURE_RECEIVED,
/// <summary>
/// The peer with which the 802.1X module was negotiating is no longer present or is not responding (a laptop client moved out
/// of range of the wireless access point, for example).
/// </summary>
ONEX_AUTHENTICATOR_NO_LONGER_PRESENT,
/// <summary>
/// No response was received to an EAP identity response packet. This value indicates a problem with the infrastructure (a link
/// between the wireless access point and the authentication server is not functioning, for example).
/// </summary>
ONEX_NO_RESPONSE_TO_IDENTITY,
/// <summary>The 802.1X module does not support this version of the profile.</summary>
ONEX_PROFILE_VERSION_NOT_SUPPORTED,
/// <summary>The length member specified in the 802.1X profile is invalid.</summary>
ONEX_PROFILE_INVALID_LENGTH,
/// <summary>
/// The EAP type specified in the 802.1X profile is not allowed for this media. An example is when the keyed MD5 algorithm is
/// used for wireless transmission.
/// </summary>
ONEX_PROFILE_DISALLOWED_EAP_TYPE,
/// <summary>
/// The EAP type or EAP flags specified in the 802.1X profile are not valid. An example is when EAP type is not installed on the system.
/// </summary>
ONEX_PROFILE_INVALID_EAP_TYPE_OR_FLAG,
/// <summary>The 802.1X flags specified in the 802.1X profile are not valid.</summary>
ONEX_PROFILE_INVALID_ONEX_FLAGS,
/// <summary>One or more timer values specified in the 802.1X profile is out of its valid range.</summary>
ONEX_PROFILE_INVALID_TIMER_VALUE,
/// <summary>The supplicant mode specified in the 802.1X profile is not valid.</summary>
ONEX_PROFILE_INVALID_SUPPLICANT_MODE,
/// <summary>The authentication mode specified in the 802.1X profile is not valid.</summary>
ONEX_PROFILE_INVALID_AUTH_MODE,
/// <summary>The EAP connection properties specified in the 802.1X profile are not valid.</summary>
ONEX_PROFILE_INVALID_EAP_CONNECTION_PROPERTIES,
/// <summary>
/// User input was canceled. This value can be returned if an EAP method requested user input, but the user hit the Cancel
/// button or dismissed the user input dialog.This value is supported on Windows 7 and on Windows Server 2008 R2 with the
/// Wireless LAN Service installed.
/// </summary>
ONEX_UI_CANCELLED,
/// <summary>
/// The saved user credentials are not valid. This value can be returned if a profile was saved with bad credentials (an
/// incorrect password, for example), since the credentials are not tested until the profile is actually used to establish a
/// connection. This value is supported on Windows 7 and on Windows Server 2008 R2 with the Wireless LAN Service installed.
/// </summary>
ONEX_PROFILE_INVALID_EXPLICIT_CREDENTIALS,
/// <summary>
/// The saved user credentials have expired. This value can be returned if a profile was saved with credentials and the
/// credentials subsequently expired (password expirarion after some period of time, for example).This value is supported on
/// Windows 7 and on Windows Server 2008 R2 with the Wireless LAN Service installed.
/// </summary>
ONEX_PROFILE_EXPIRED_EXPLICIT_CREDENTIALS,
/// <summary>
/// User interface is not permitted. On Windows 7 and on Windows Server 2008 R2 with the Wireless LAN Service installed, this
/// value can be returned if an EAP method requested user input and the profile is configured with user credentials saved by
/// another user and not the currently logged in user.This value is supported on Windows 7 and on Windows Server 2008 R2 with
/// the Wireless LAN Service installed.
/// </summary>
ONEX_UI_NOT_PERMITTED,
}
/// <summary>
/// The supplicantMode element in the 802.1X schema that specifies the method of transmission used for EAPOL-Start messages. For
/// more information, see the supplicantMode (OneX) Element in the 802.1X scheme.
/// </summary>
[PInvokeData("", MSDNShortId = "ec494c74-bc79-445a-8889-a6f441e95ac5")]
public enum ONEX_SUPPLICANT_MODE
{
/// <summary>EAPOL-Start messages are not transmitted. Valid for wired LAN profiles only.</summary>
OneXSupplicantModeInhibitTransmission = 0,
/// <summary>
/// The client determines when to send EAPOL-Start packets based on network capability. EAPOL-Start messages are only sent when
/// required. Valid for wired LAN profiles only.
/// </summary>
OneXSupplicantModeLearn = 1,
/// <summary>EAPOL-Start messages are transmitted as specified by 802.1X. Valid for both wired and wireless LAN profiles.</summary>
OneXSupplicantModeCompliant = 2,
}
/// <summary>Specifies the active tab when the wireless profile user interface dialog box appears.</summary>
// https://docs.microsoft.com/en-us/windows/win32/api/wlanapi/ne-wlanapi-wl_display_pages typedef enum _WL_DISPLAY_PAGES {
// WLConnectionPage, WLSecurityPage, WLAdvPage } WL_DISPLAY_PAGES, *PWL_DISPLAY_PAGES;

File diff suppressed because it is too large Load Diff