summaryrefslogtreecommitdiffstats
path: root/vendor/winapi/src/um/eaptypes.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
commit698f8c2f01ea549d77d7dc3338a12e04c11057b9 (patch)
tree173a775858bd501c378080a10dca74132f05bc50 /vendor/winapi/src/um/eaptypes.rs
parentInitial commit. (diff)
downloadrustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.tar.xz
rustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.zip
Adding upstream version 1.64.0+dfsg1.upstream/1.64.0+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/winapi/src/um/eaptypes.rs')
-rw-r--r--vendor/winapi/src/um/eaptypes.rs403
1 files changed, 403 insertions, 0 deletions
diff --git a/vendor/winapi/src/um/eaptypes.rs b/vendor/winapi/src/um/eaptypes.rs
new file mode 100644
index 000000000..0a41e1a87
--- /dev/null
+++ b/vendor/winapi/src/um/eaptypes.rs
@@ -0,0 +1,403 @@
+// Licensed under the Apache License, Version 2.0
+// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
+// All files in the project carrying such notice may not be copied, modified, or distributed
+// except according to those terms.
+use shared::guiddef::GUID;
+use shared::minwindef::{BOOL, BYTE, DWORD};
+use um::winnt::LPWSTR;
+pub const eapPropCipherSuiteNegotiation: DWORD = 0x00000001;
+pub const eapPropMutualAuth: DWORD = 0x00000002;
+pub const eapPropIntegrity: DWORD = 0x00000004;
+pub const eapPropReplayProtection: DWORD = 0x00000008;
+pub const eapPropConfidentiality: DWORD = 0x00000010;
+pub const eapPropKeyDerivation: DWORD = 0x00000020;
+pub const eapPropKeyStrength64: DWORD = 0x00000040;
+pub const eapPropKeyStrength128: DWORD = 0x00000080;
+pub const eapPropKeyStrength256: DWORD = 0x00000100;
+pub const eapPropKeyStrength512: DWORD = 0x00000200;
+pub const eapPropKeyStrength1024: DWORD = 0x00000400;
+pub const eapPropDictionaryAttackResistance: DWORD = 0x00000800;
+pub const eapPropFastReconnect: DWORD = 0x00001000;
+pub const eapPropCryptoBinding: DWORD = 0x00002000;
+pub const eapPropSessionIndependence: DWORD = 0x00004000;
+pub const eapPropFragmentation: DWORD = 0x00008000;
+pub const eapPropChannelBinding: DWORD = 0x00010000;
+pub const eapPropNap: DWORD = 0x00020000;
+pub const eapPropStandalone: DWORD = 0x00040000;
+pub const eapPropMppeEncryption: DWORD = 0x00080000;
+pub const eapPropTunnelMethod: DWORD = 0x00100000;
+pub const eapPropSupportsConfig: DWORD = 0x00200000;
+pub const eapPropCertifiedMethod: DWORD = 0x00400000;
+pub const eapPropHiddenMethod: DWORD = 0x00800000;
+pub const eapPropMachineAuth: DWORD = 0x01000000;
+pub const eapPropUserAuth: DWORD = 0x02000000;
+pub const eapPropIdentityPrivacy: DWORD = 0x04000000;
+pub const eapPropMethodChaining: DWORD = 0x08000000;
+pub const eapPropSharedStateEquivalence: DWORD = 0x10000000;
+pub const eapPropReserved: DWORD = 0x80000000;
+pub const EAP_VALUENAME_PROPERTIES: &'static str = "Properties";
+pub type EAP_SESSIONID = DWORD;
+STRUCT!{struct EAP_TYPE {
+ type_: BYTE,
+ dwVendorId: DWORD,
+ dwVendorType: DWORD,
+}}
+STRUCT!{struct EAP_METHOD_TYPE {
+ eapType: EAP_TYPE,
+ dwAuthorId: DWORD,
+}}
+STRUCT!{struct EAP_METHOD_INFO {
+ eaptype: EAP_METHOD_TYPE,
+ pwszAuthorName: LPWSTR,
+ pwszFriendlyName: LPWSTR,
+ eapProperties: DWORD,
+ pInnerMethodInfo: *mut EAP_METHOD_INFO,
+}}
+STRUCT!{struct EAP_METHOD_INFO_EX {
+ eaptype: EAP_METHOD_TYPE,
+ pwszAuthorName: LPWSTR,
+ pwszFriendlyName: LPWSTR,
+ eapProperties: DWORD,
+ pInnerMethodInfoArray: *mut EAP_METHOD_INFO_ARRAY_EX,
+}}
+STRUCT!{struct EAP_METHOD_INFO_ARRAY {
+ dwNumberOfMethods: DWORD,
+ pEapMethods: *mut EAP_METHOD_INFO,
+}}
+STRUCT!{struct EAP_METHOD_INFO_ARRAY_EX {
+ dwNumberOfMethods: DWORD,
+ pEapMethods: *mut EAP_METHOD_INFO_EX,
+}}
+STRUCT!{struct EAP_ERROR {
+ dwWinError: DWORD,
+ type_: EAP_METHOD_TYPE,
+ dwReasonCode: DWORD,
+ rootCauseGuid: GUID,
+ repairGuid: GUID,
+ helpLinkGuid: GUID,
+ pRootCauseString: LPWSTR,
+ pRepairString: LPWSTR,
+}}
+ENUM!{enum EAP_ATTRIBUTE_TYPE {
+ eatMinimum = 0,
+ eatUserName = 1,
+ eatUserPassword = 2,
+ eatMD5CHAPPassword = 3,
+ eatNASIPAddress = 4,
+ eatNASPort = 5,
+ eatServiceType = 6,
+ eatFramedProtocol = 7,
+ eatFramedIPAddress = 8,
+ eatFramedIPNetmask = 9,
+ eatFramedRouting = 10,
+ eatFilterId = 11,
+ eatFramedMTU = 12,
+ eatFramedCompression = 13,
+ eatLoginIPHost = 14,
+ eatLoginService = 15,
+ eatLoginTCPPort = 16,
+ eatUnassigned17 = 17,
+ eatReplyMessage = 18,
+ eatCallbackNumber = 19,
+ eatCallbackId = 20,
+ eatUnassigned21 = 21,
+ eatFramedRoute = 22,
+ eatFramedIPXNetwork = 23,
+ eatState = 24,
+ eatClass = 25,
+ eatVendorSpecific = 26,
+ eatSessionTimeout = 27,
+ eatIdleTimeout = 28,
+ eatTerminationAction = 29,
+ eatCalledStationId = 30,
+ eatCallingStationId = 31,
+ eatNASIdentifier = 32,
+ eatProxyState = 33,
+ eatLoginLATService = 34,
+ eatLoginLATNode = 35,
+ eatLoginLATGroup = 36,
+ eatFramedAppleTalkLink = 37,
+ eatFramedAppleTalkNetwork = 38,
+ eatFramedAppleTalkZone = 39,
+ eatAcctStatusType = 40,
+ eatAcctDelayTime = 41,
+ eatAcctInputOctets = 42,
+ eatAcctOutputOctets = 43,
+ eatAcctSessionId = 44,
+ eatAcctAuthentic = 45,
+ eatAcctSessionTime = 46,
+ eatAcctInputPackets = 47,
+ eatAcctOutputPackets = 48,
+ eatAcctTerminateCause = 49,
+ eatAcctMultiSessionId = 50,
+ eatAcctLinkCount = 51,
+ eatAcctEventTimeStamp = 55,
+ eatMD5CHAPChallenge = 60,
+ eatNASPortType = 61,
+ eatPortLimit = 62,
+ eatLoginLATPort = 63,
+ eatTunnelType = 64,
+ eatTunnelMediumType = 65,
+ eatTunnelClientEndpoint = 66,
+ eatTunnelServerEndpoint = 67,
+ eatARAPPassword = 70,
+ eatARAPFeatures = 71,
+ eatARAPZoneAccess = 72,
+ eatARAPSecurity = 73,
+ eatARAPSecurityData = 74,
+ eatPasswordRetry = 75,
+ eatPrompt = 76,
+ eatConnectInfo = 77,
+ eatConfigurationToken = 78,
+ eatEAPMessage = 79,
+ eatSignature = 80,
+ eatARAPChallengeResponse = 84,
+ eatAcctInterimInterval = 85,
+ eatNASIPv6Address = 95,
+ eatFramedInterfaceId = 96,
+ eatFramedIPv6Prefix = 97,
+ eatLoginIPv6Host = 98,
+ eatFramedIPv6Route = 99,
+ eatFramedIPv6Pool = 100,
+ eatARAPGuestLogon = 8096,
+ eatCertificateOID = 8097,
+ eatEAPConfiguration = 8098,
+ eatPEAPEmbeddedEAPTypeId = 8099,
+ eatPEAPFastRoamedSession = 8100,
+ eatFastRoamedSession = 8100,
+ eatEAPTLV = 8102,
+ eatCredentialsChanged = 8103,
+ eatInnerEapMethodType = 8104,
+ eatClearTextPassword = 8107,
+ eatQuarantineSoH = 8150,
+ eatCertificateThumbprint = 8250,
+ eatPeerId = 9000,
+ eatServerId = 9001,
+ eatMethodId = 9002,
+ eatEMSK = 9003,
+ eatSessionId = 9004,
+ eatReserved = 0xFFFFFFFF,
+}}
+pub type EapAttributeType = EAP_ATTRIBUTE_TYPE;
+STRUCT!{struct EAP_ATTRIBUTE {
+ eaType: EAP_ATTRIBUTE_TYPE,
+ dwLength: DWORD,
+ pValue: *mut BYTE,
+}}
+pub type EapAttribute = EAP_ATTRIBUTE;
+STRUCT!{struct EAP_ATTRIBUTES {
+ dwNumberOfAttributes: DWORD,
+ pAttribs: *mut EAP_ATTRIBUTE,
+}}
+pub type EapAttributes = EAP_ATTRIBUTES;
+pub const EAP_FLAG_Reserved1: DWORD = 0x00000001;
+pub const EAP_FLAG_NON_INTERACTIVE: DWORD = 0x00000002;
+pub const EAP_FLAG_LOGON: DWORD = 0x00000004;
+pub const EAP_FLAG_PREVIEW: DWORD = 0x00000008;
+pub const EAP_FLAG_Reserved2: DWORD = 0x00000010;
+pub const EAP_FLAG_MACHINE_AUTH: DWORD = 0x00000020;
+pub const EAP_FLAG_GUEST_ACCESS: DWORD = 0x00000040;
+pub const EAP_FLAG_Reserved3: DWORD = 0x00000080;
+pub const EAP_FLAG_Reserved4: DWORD = 0x00000100;
+pub const EAP_FLAG_RESUME_FROM_HIBERNATE: DWORD = 0x00000200;
+pub const EAP_FLAG_Reserved5: DWORD = 0x00000400;
+pub const EAP_FLAG_Reserved6: DWORD = 0x00000800;
+pub const EAP_FLAG_FULL_AUTH: DWORD = 0x00001000;
+pub const EAP_FLAG_PREFER_ALT_CREDENTIALS: DWORD = 0x00002000;
+pub const EAP_FLAG_Reserved7: DWORD = 0x00004000;
+pub const EAP_PEER_FLAG_HEALTH_STATE_CHANGE: DWORD = 0x00008000;
+pub const EAP_FLAG_SUPRESS_UI: DWORD = 0x00010000;
+pub const EAP_FLAG_PRE_LOGON: DWORD = 0x00020000;
+pub const EAP_FLAG_USER_AUTH: DWORD = 0x00040000;
+pub const EAP_FLAG_CONFG_READONLY: DWORD = 0x00080000;
+pub const EAP_FLAG_Reserved8: DWORD = 0x00100000;
+pub const EAP_FLAG_Reserved9: DWORD = 0x00400000;
+pub const EAP_FLAG_VPN: DWORD = 0x00800000;
+pub const EAP_CONFIG_INPUT_FIELD_PROPS_DEFAULT: DWORD = 0x00000000;
+pub const EAP_CONFIG_INPUT_FIELD_PROPS_NON_DISPLAYABLE: DWORD = 0x00000001;
+pub const EAP_CONFIG_INPUT_FIELD_PROPS_NON_PERSIST: DWORD = 0x00000002;
+pub const EAP_UI_INPUT_FIELD_PROPS_DEFAULT: DWORD = EAP_CONFIG_INPUT_FIELD_PROPS_DEFAULT;
+pub const EAP_UI_INPUT_FIELD_PROPS_NON_DISPLAYABLE: DWORD =
+ EAP_CONFIG_INPUT_FIELD_PROPS_NON_DISPLAYABLE;
+pub const EAP_UI_INPUT_FIELD_PROPS_NON_PERSIST: DWORD = 0x00000002;
+pub const EAP_UI_INPUT_FIELD_PROPS_READ_ONLY: DWORD = 0x00000004;
+ENUM!{enum EAP_CONFIG_INPUT_FIELD_TYPE {
+ EapConfigInputUsername = 0,
+ EapConfigInputPassword = 1,
+ EapConfigInputNetworkUsername = 2,
+ EapConfigInputNetworkPassword = 3,
+ EapConfigInputPin = 4,
+ EapConfigInputPSK = 5,
+ EapConfigInputEdit = 6,
+ EapConfigSmartCardUsername = 7,
+ EapConfigSmartCardError = 8,
+}}
+pub type PEAP_CONFIG_INPUT_FIELD_TYPE = *mut EAP_CONFIG_INPUT_FIELD_TYPE;
+pub const EAP_CREDENTIAL_VERSION: i32 = 1;
+pub const EAP_INTERACTIVE_UI_DATA_VERSION: i32 = 1;
+pub const EAPHOST_PEER_API_VERSION: i32 = 1;
+pub const EAPHOST_METHOD_API_VERSION: i32 = 1;
+pub const MAX_EAP_CONFIG_INPUT_FIELD_LENGTH: i32 = 256;
+pub const MAX_EAP_CONFIG_INPUT_FIELD_VALUE_LENGTH: i32 = 1024;
+STRUCT!{struct EAP_CONFIG_INPUT_FIELD_DATA {
+ dwSize: DWORD,
+ Type: EAP_CONFIG_INPUT_FIELD_TYPE,
+ dwFlagProps: DWORD,
+ pwszLabel: LPWSTR,
+ pwszData: LPWSTR,
+ dwMinDataLength: DWORD,
+ dwMaxDataLength: DWORD,
+}}
+pub type PEAP_CONFIG_INPUT_FIELD_DATA = *mut EAP_CONFIG_INPUT_FIELD_DATA;
+STRUCT!{struct EAP_CONFIG_INPUT_FIELD_ARRAY {
+ dwVersion: DWORD,
+ dwNumberOfFields: DWORD,
+ pFields: *mut EAP_CONFIG_INPUT_FIELD_DATA,
+}}
+pub type PEAP_CONFIG_INPUT_FIELD_ARRAY = *mut EAP_CONFIG_INPUT_FIELD_ARRAY;
+ENUM!{enum EAP_INTERACTIVE_UI_DATA_TYPE {
+ EapCredReq = 0,
+ EapCredResp = 1,
+ EapCredExpiryReq = 2,
+ EapCredExpiryResp = 3,
+ EapCredLogonReq = 4,
+ EapCredLogonResp = 5,
+}}
+pub type EAP_CRED_REQ = EAP_CONFIG_INPUT_FIELD_ARRAY;
+pub type EAP_CRED_RESP = EAP_CONFIG_INPUT_FIELD_ARRAY;
+pub type EAP_CRED_LOGON_REQ = EAP_CONFIG_INPUT_FIELD_ARRAY;
+pub type EAP_CRED_LOGON_RESP = EAP_CONFIG_INPUT_FIELD_ARRAY;
+STRUCT!{struct EAP_CRED_EXPIRY_REQ {
+ curCreds: EAP_CONFIG_INPUT_FIELD_ARRAY,
+ newCreds: EAP_CONFIG_INPUT_FIELD_ARRAY,
+}}
+pub type EAP_CRED_EXPIRY_RESP = EAP_CRED_EXPIRY_REQ;
+UNION!{union EAP_UI_DATA_FORMAT {
+ [usize; 1],
+ credData credData_mut: *mut EAP_CRED_REQ,
+ credExpiryData credExpiryData_mut: *mut EAP_CRED_EXPIRY_REQ,
+ credLogonData credLogonData_mut: *mut EAP_CRED_LOGON_REQ,
+}}
+STRUCT!{struct EAP_INTERACTIVE_UI_DATA {
+ dwVersion: DWORD,
+ dwSize: DWORD,
+ dwDataType: EAP_INTERACTIVE_UI_DATA_TYPE,
+ cbUiData: DWORD,
+ pbUiData: EAP_UI_DATA_FORMAT,
+}}
+ENUM!{enum EAP_METHOD_PROPERTY_TYPE {
+ emptPropCipherSuiteNegotiation = 0,
+ emptPropMutualAuth = 1,
+ emptPropIntegrity = 2,
+ emptPropReplayProtection = 3,
+ emptPropConfidentiality = 4,
+ emptPropKeyDerivation = 5,
+ emptPropKeyStrength64 = 6,
+ emptPropKeyStrength128 = 7,
+ emptPropKeyStrength256 = 8,
+ emptPropKeyStrength512 = 9,
+ emptPropKeyStrength1024 = 10,
+ emptPropDictionaryAttackResistance = 11,
+ emptPropFastReconnect = 12,
+ emptPropCryptoBinding = 13,
+ emptPropSessionIndependence = 14,
+ emptPropFragmentation = 15,
+ emptPropChannelBinding = 16,
+ emptPropNap = 17,
+ emptPropStandalone = 18,
+ emptPropMppeEncryption = 19,
+ emptPropTunnelMethod = 20,
+ emptPropSupportsConfig = 21,
+ emptPropCertifiedMethod = 22,
+ emptPropHiddenMethod = 23,
+ emptPropMachineAuth = 24,
+ emptPropUserAuth = 25,
+ emptPropIdentityPrivacy = 26,
+ emptPropMethodChaining = 27,
+ emptPropSharedStateEquivalence = 28,
+ emptLegacyMethodPropertyFlag = 31,
+ emptPropVendorSpecific = 255,
+}}
+ENUM!{enum EAP_METHOD_PROPERTY_VALUE_TYPE {
+ empvtBool = 0,
+ empvtDword = 1,
+ empvtString = 2,
+}}
+STRUCT!{struct EAP_METHOD_PROPERTY_VALUE_BOOL {
+ length: DWORD,
+ value: BOOL,
+}}
+STRUCT!{struct EAP_METHOD_PROPERTY_VALUE_DWORD {
+ length: DWORD,
+ value: DWORD,
+}}
+STRUCT!{struct EAP_METHOD_PROPERTY_VALUE_STRING {
+ length: DWORD,
+ value: *mut BYTE,
+}}
+UNION!{union EAP_METHOD_PROPERTY_VALUE {
+ [usize; 2],
+ empvBool empvBool_mut: EAP_METHOD_PROPERTY_VALUE_BOOL,
+ empvDword empvDword_mut: EAP_METHOD_PROPERTY_VALUE_DWORD,
+ empvString empvString_mut: EAP_METHOD_PROPERTY_VALUE_STRING,
+}}
+STRUCT!{struct EAP_METHOD_PROPERTY {
+ eapMethodPropertyType: EAP_METHOD_PROPERTY_TYPE,
+ eapMethodPropertyValueType: EAP_METHOD_PROPERTY_VALUE_TYPE,
+ eapMethodPropertyValue: EAP_METHOD_PROPERTY_VALUE,
+}}
+STRUCT!{struct EAP_METHOD_PROPERTY_ARRAY {
+ dwNumberOfProperties: DWORD,
+ pMethodProperty: *mut EAP_METHOD_PROPERTY,
+}}
+STRUCT!{struct EAPHOST_IDENTITY_UI_PARAMS {
+ eapMethodType: EAP_METHOD_TYPE,
+ dwFlags: DWORD,
+ dwSizeofConnectionData: DWORD,
+ pConnectionData: *mut BYTE,
+ dwSizeofUserData: DWORD,
+ pUserData: *mut BYTE,
+ dwSizeofUserDataOut: DWORD,
+ pUserDataOut: *mut BYTE,
+ pwszIdentity: LPWSTR,
+ dwError: DWORD,
+ pEapError: *mut EAP_ERROR,
+}}
+STRUCT!{struct EAPHOST_INTERACTIVE_UI_PARAMS {
+ dwSizeofContextData: DWORD,
+ pContextData: *mut BYTE,
+ dwSizeofInteractiveUIData: DWORD,
+ pInteractiveUIData: *mut BYTE,
+ dwError: DWORD,
+ pEapError: *mut EAP_ERROR,
+}}
+ENUM!{enum EapCredentialType {
+ EAP_EMPTY_CREDENTIAL = 0,
+ EAP_USERNAME_PASSWORD_CREDENTIAL = 1,
+ EAP_WINLOGON_CREDENTIAL = 2,
+ EAP_CERTIFICATE_CREDENTIAL = 3,
+ EAP_SIM_CREDENTIAL = 4,
+}}
+STRUCT!{struct EapUsernamePasswordCredential {
+ username: LPWSTR,
+ password: LPWSTR,
+}}
+pub const CERTIFICATE_HASH_LENGTH: usize = 20;
+STRUCT!{struct EapCertificateCredential {
+ certHash: [BYTE; CERTIFICATE_HASH_LENGTH],
+ password: LPWSTR,
+}}
+STRUCT!{struct EapSimCredential {
+ iccID: LPWSTR,
+}}
+UNION!{union EapCredentialTypeData {
+ [u32; 6] [u64; 4],
+ username_password username_password_mut: EapUsernamePasswordCredential,
+ certificate certificate_mut: EapCertificateCredential,
+ sim sim_mut: EapSimCredential,
+}}
+STRUCT!{struct EapCredential {
+ credType: EapCredentialType,
+ credData: EapCredentialTypeData,
+}}