summaryrefslogtreecommitdiffstats
path: root/vendor/windows-sys/src/Windows/Security
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/windows-sys/src/Windows/Security')
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authentication/Identity/Core/mod.rs78
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authentication/Identity/Provider/mod.rs243
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authentication/Identity/mod.rs6
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authentication/OnlineId/mod.rs37
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authentication/Web/Core/mod.rs52
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authentication/Web/Provider/mod.rs75
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authentication/Web/mod.rs49
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authentication/mod.rs6
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authorization/AppCapabilityAccess/mod.rs18
-rw-r--r--vendor/windows-sys/src/Windows/Security/Authorization/mod.rs2
-rw-r--r--vendor/windows-sys/src/Windows/Security/Credentials/UI/mod.rs68
-rw-r--r--vendor/windows-sys/src/Windows/Security/Credentials/mod.rs87
-rw-r--r--vendor/windows-sys/src/Windows/Security/Cryptography/Certificates/mod.rs144
-rw-r--r--vendor/windows-sys/src/Windows/Security/Cryptography/Core/mod.rs69
-rw-r--r--vendor/windows-sys/src/Windows/Security/Cryptography/DataProtection/mod.rs1
-rw-r--r--vendor/windows-sys/src/Windows/Security/Cryptography/mod.rs20
-rw-r--r--vendor/windows-sys/src/Windows/Security/DataProtection/mod.rs45
-rw-r--r--vendor/windows-sys/src/Windows/Security/EnterpriseData/mod.rs129
-rw-r--r--vendor/windows-sys/src/Windows/Security/ExchangeActiveSyncProvisioning/mod.rs182
-rw-r--r--vendor/windows-sys/src/Windows/Security/Isolation/mod.rs241
-rw-r--r--vendor/windows-sys/src/Windows/Security/mod.rs16
21 files changed, 1568 insertions, 0 deletions
diff --git a/vendor/windows-sys/src/Windows/Security/Authentication/Identity/Core/mod.rs b/vendor/windows-sys/src/Windows/Security/Authentication/Identity/Core/mod.rs
new file mode 100644
index 000000000..016e40744
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authentication/Identity/Core/mod.rs
@@ -0,0 +1,78 @@
+pub type MicrosoftAccountMultiFactorAuthenticationManager = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Identity_Core\"`*"]
+#[repr(transparent)]
+pub struct MicrosoftAccountMultiFactorAuthenticationType(pub i32);
+impl MicrosoftAccountMultiFactorAuthenticationType {
+ pub const User: Self = Self(0i32);
+ pub const Device: Self = Self(1i32);
+}
+impl ::core::marker::Copy for MicrosoftAccountMultiFactorAuthenticationType {}
+impl ::core::clone::Clone for MicrosoftAccountMultiFactorAuthenticationType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type MicrosoftAccountMultiFactorGetSessionsResult = *mut ::core::ffi::c_void;
+pub type MicrosoftAccountMultiFactorOneTimeCodedInfo = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Identity_Core\"`*"]
+#[repr(transparent)]
+pub struct MicrosoftAccountMultiFactorServiceResponse(pub i32);
+impl MicrosoftAccountMultiFactorServiceResponse {
+ pub const Success: Self = Self(0i32);
+ pub const Error: Self = Self(1i32);
+ pub const NoNetworkConnection: Self = Self(2i32);
+ pub const ServiceUnavailable: Self = Self(3i32);
+ pub const TotpSetupDenied: Self = Self(4i32);
+ pub const NgcNotSetup: Self = Self(5i32);
+ pub const SessionAlreadyDenied: Self = Self(6i32);
+ pub const SessionAlreadyApproved: Self = Self(7i32);
+ pub const SessionExpired: Self = Self(8i32);
+ pub const NgcNonceExpired: Self = Self(9i32);
+ pub const InvalidSessionId: Self = Self(10i32);
+ pub const InvalidSessionType: Self = Self(11i32);
+ pub const InvalidOperation: Self = Self(12i32);
+ pub const InvalidStateTransition: Self = Self(13i32);
+ pub const DeviceNotFound: Self = Self(14i32);
+ pub const FlowDisabled: Self = Self(15i32);
+ pub const SessionNotApproved: Self = Self(16i32);
+ pub const OperationCanceledByUser: Self = Self(17i32);
+ pub const NgcDisabledByServer: Self = Self(18i32);
+ pub const NgcKeyNotFoundOnServer: Self = Self(19i32);
+ pub const UIRequired: Self = Self(20i32);
+ pub const DeviceIdChanged: Self = Self(21i32);
+}
+impl ::core::marker::Copy for MicrosoftAccountMultiFactorServiceResponse {}
+impl ::core::clone::Clone for MicrosoftAccountMultiFactorServiceResponse {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Core\"`*"]
+#[repr(transparent)]
+pub struct MicrosoftAccountMultiFactorSessionApprovalStatus(pub i32);
+impl MicrosoftAccountMultiFactorSessionApprovalStatus {
+ pub const Pending: Self = Self(0i32);
+ pub const Approved: Self = Self(1i32);
+ pub const Denied: Self = Self(2i32);
+}
+impl ::core::marker::Copy for MicrosoftAccountMultiFactorSessionApprovalStatus {}
+impl ::core::clone::Clone for MicrosoftAccountMultiFactorSessionApprovalStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Core\"`*"]
+#[repr(transparent)]
+pub struct MicrosoftAccountMultiFactorSessionAuthenticationStatus(pub i32);
+impl MicrosoftAccountMultiFactorSessionAuthenticationStatus {
+ pub const Authenticated: Self = Self(0i32);
+ pub const Unauthenticated: Self = Self(1i32);
+}
+impl ::core::marker::Copy for MicrosoftAccountMultiFactorSessionAuthenticationStatus {}
+impl ::core::clone::Clone for MicrosoftAccountMultiFactorSessionAuthenticationStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type MicrosoftAccountMultiFactorSessionInfo = *mut ::core::ffi::c_void;
+pub type MicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/Authentication/Identity/Provider/mod.rs b/vendor/windows-sys/src/Windows/Security/Authentication/Identity/Provider/mod.rs
new file mode 100644
index 000000000..118285e16
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authentication/Identity/Provider/mod.rs
@@ -0,0 +1,243 @@
+pub type SecondaryAuthenticationFactorAuthentication = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorAuthenticationMessage(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorAuthenticationMessage {
+ pub const Invalid: Self = Self(0i32);
+ pub const SwipeUpWelcome: Self = Self(1i32);
+ pub const TapWelcome: Self = Self(2i32);
+ pub const DeviceNeedsAttention: Self = Self(3i32);
+ pub const LookingForDevice: Self = Self(4i32);
+ pub const LookingForDevicePluggedin: Self = Self(5i32);
+ pub const BluetoothIsDisabled: Self = Self(6i32);
+ pub const NfcIsDisabled: Self = Self(7i32);
+ pub const WiFiIsDisabled: Self = Self(8i32);
+ pub const ExtraTapIsRequired: Self = Self(9i32);
+ pub const DisabledByPolicy: Self = Self(10i32);
+ pub const TapOnDeviceRequired: Self = Self(11i32);
+ pub const HoldFinger: Self = Self(12i32);
+ pub const ScanFinger: Self = Self(13i32);
+ pub const UnauthorizedUser: Self = Self(14i32);
+ pub const ReregisterRequired: Self = Self(15i32);
+ pub const TryAgain: Self = Self(16i32);
+ pub const SayPassphrase: Self = Self(17i32);
+ pub const ReadyToSignIn: Self = Self(18i32);
+ pub const UseAnotherSignInOption: Self = Self(19i32);
+ pub const ConnectionRequired: Self = Self(20i32);
+ pub const TimeLimitExceeded: Self = Self(21i32);
+ pub const CanceledByUser: Self = Self(22i32);
+ pub const CenterHand: Self = Self(23i32);
+ pub const MoveHandCloser: Self = Self(24i32);
+ pub const MoveHandFarther: Self = Self(25i32);
+ pub const PlaceHandAbove: Self = Self(26i32);
+ pub const RecognitionFailed: Self = Self(27i32);
+ pub const DeviceUnavailable: Self = Self(28i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorAuthenticationMessage {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorAuthenticationMessage {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type SecondaryAuthenticationFactorAuthenticationResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorAuthenticationScenario(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorAuthenticationScenario {
+ pub const SignIn: Self = Self(0i32);
+ pub const CredentialPrompt: Self = Self(1i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorAuthenticationScenario {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorAuthenticationScenario {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorAuthenticationStage(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorAuthenticationStage {
+ pub const NotStarted: Self = Self(0i32);
+ pub const WaitingForUserConfirmation: Self = Self(1i32);
+ pub const CollectingCredential: Self = Self(2i32);
+ pub const SuspendingAuthentication: Self = Self(3i32);
+ pub const CredentialCollected: Self = Self(4i32);
+ pub const CredentialAuthenticated: Self = Self(5i32);
+ pub const StoppingAuthentication: Self = Self(6i32);
+ pub const ReadyForLock: Self = Self(7i32);
+ pub const CheckingDevicePresence: Self = Self(8i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorAuthenticationStage {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorAuthenticationStage {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type SecondaryAuthenticationFactorAuthenticationStageChangedEventArgs = *mut ::core::ffi::c_void;
+pub type SecondaryAuthenticationFactorAuthenticationStageInfo = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorAuthenticationStatus(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorAuthenticationStatus {
+ pub const Failed: Self = Self(0i32);
+ pub const Started: Self = Self(1i32);
+ pub const UnknownDevice: Self = Self(2i32);
+ pub const DisabledByPolicy: Self = Self(3i32);
+ pub const InvalidAuthenticationStage: Self = Self(4i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorAuthenticationStatus {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorAuthenticationStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorDeviceCapabilities(pub u32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorDeviceCapabilities {
+ pub const None: Self = Self(0u32);
+ pub const SecureStorage: Self = Self(1u32);
+ pub const StoreKeys: Self = Self(2u32);
+ pub const ConfirmUserIntentToAuthenticate: Self = Self(4u32);
+ pub const SupportSecureUserPresenceCheck: Self = Self(8u32);
+ pub const TransmittedDataIsEncrypted: Self = Self(16u32);
+ pub const HMacSha256: Self = Self(32u32);
+ pub const CloseRangeDataTransmission: Self = Self(64u32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorDeviceCapabilities {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorDeviceCapabilities {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorDeviceFindScope(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorDeviceFindScope {
+ pub const User: Self = Self(0i32);
+ pub const AllUsers: Self = Self(1i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorDeviceFindScope {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorDeviceFindScope {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorDevicePresence(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorDevicePresence {
+ pub const Absent: Self = Self(0i32);
+ pub const Present: Self = Self(1i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorDevicePresence {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorDevicePresence {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorDevicePresenceMonitoringMode(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorDevicePresenceMonitoringMode {
+ pub const Unsupported: Self = Self(0i32);
+ pub const AppManaged: Self = Self(1i32);
+ pub const SystemManaged: Self = Self(2i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorDevicePresenceMonitoringMode {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorDevicePresenceMonitoringMode {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorDevicePresenceMonitoringRegistrationStatus(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorDevicePresenceMonitoringRegistrationStatus {
+ pub const Unsupported: Self = Self(0i32);
+ pub const Succeeded: Self = Self(1i32);
+ pub const DisabledByPolicy: Self = Self(2i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorDevicePresenceMonitoringRegistrationStatus {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorDevicePresenceMonitoringRegistrationStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorFinishAuthenticationStatus(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorFinishAuthenticationStatus {
+ pub const Failed: Self = Self(0i32);
+ pub const Completed: Self = Self(1i32);
+ pub const NonceExpired: Self = Self(2i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorFinishAuthenticationStatus {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorFinishAuthenticationStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type SecondaryAuthenticationFactorInfo = *mut ::core::ffi::c_void;
+pub type SecondaryAuthenticationFactorRegistration = *mut ::core::ffi::c_void;
+pub type SecondaryAuthenticationFactorRegistrationResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Identity_Provider\"`, `\"deprecated\"`*"]
+#[cfg(feature = "deprecated")]
+#[repr(transparent)]
+pub struct SecondaryAuthenticationFactorRegistrationStatus(pub i32);
+#[cfg(feature = "deprecated")]
+impl SecondaryAuthenticationFactorRegistrationStatus {
+ pub const Failed: Self = Self(0i32);
+ pub const Started: Self = Self(1i32);
+ pub const CanceledByUser: Self = Self(2i32);
+ pub const PinSetupRequired: Self = Self(3i32);
+ pub const DisabledByPolicy: Self = Self(4i32);
+}
+#[cfg(feature = "deprecated")]
+impl ::core::marker::Copy for SecondaryAuthenticationFactorRegistrationStatus {}
+#[cfg(feature = "deprecated")]
+impl ::core::clone::Clone for SecondaryAuthenticationFactorRegistrationStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Security/Authentication/Identity/mod.rs b/vendor/windows-sys/src/Windows/Security/Authentication/Identity/mod.rs
new file mode 100644
index 000000000..2a7cd9e61
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authentication/Identity/mod.rs
@@ -0,0 +1,6 @@
+#[cfg(feature = "Security_Authentication_Identity_Core")]
+pub mod Core;
+#[cfg(feature = "Security_Authentication_Identity_Provider")]
+pub mod Provider;
+pub type EnterpriseKeyCredentialRegistrationInfo = *mut ::core::ffi::c_void;
+pub type EnterpriseKeyCredentialRegistrationManager = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/Authentication/OnlineId/mod.rs b/vendor/windows-sys/src/Windows/Security/Authentication/OnlineId/mod.rs
new file mode 100644
index 000000000..6893e58b3
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authentication/OnlineId/mod.rs
@@ -0,0 +1,37 @@
+#[doc = "*Required features: `\"Security_Authentication_OnlineId\"`*"]
+#[repr(transparent)]
+pub struct CredentialPromptType(pub i32);
+impl CredentialPromptType {
+ pub const PromptIfNeeded: Self = Self(0i32);
+ pub const RetypeCredentials: Self = Self(1i32);
+ pub const DoNotPrompt: Self = Self(2i32);
+}
+impl ::core::marker::Copy for CredentialPromptType {}
+impl ::core::clone::Clone for CredentialPromptType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type OnlineIdAuthenticator = *mut ::core::ffi::c_void;
+pub type OnlineIdServiceTicket = *mut ::core::ffi::c_void;
+pub type OnlineIdServiceTicketRequest = *mut ::core::ffi::c_void;
+pub type OnlineIdSystemAuthenticatorForUser = *mut ::core::ffi::c_void;
+pub type OnlineIdSystemIdentity = *mut ::core::ffi::c_void;
+pub type OnlineIdSystemTicketResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_OnlineId\"`*"]
+#[repr(transparent)]
+pub struct OnlineIdSystemTicketStatus(pub i32);
+impl OnlineIdSystemTicketStatus {
+ pub const Success: Self = Self(0i32);
+ pub const Error: Self = Self(1i32);
+ pub const ServiceConnectionError: Self = Self(2i32);
+}
+impl ::core::marker::Copy for OnlineIdSystemTicketStatus {}
+impl ::core::clone::Clone for OnlineIdSystemTicketStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type SignOutUserOperation = *mut ::core::ffi::c_void;
+pub type UserAuthenticationOperation = *mut ::core::ffi::c_void;
+pub type UserIdentity = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/Authentication/Web/Core/mod.rs b/vendor/windows-sys/src/Windows/Security/Authentication/Web/Core/mod.rs
new file mode 100644
index 000000000..9e5bf215f
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authentication/Web/Core/mod.rs
@@ -0,0 +1,52 @@
+pub type FindAllAccountsResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Web_Core\"`*"]
+#[repr(transparent)]
+pub struct FindAllWebAccountsStatus(pub i32);
+impl FindAllWebAccountsStatus {
+ pub const Success: Self = Self(0i32);
+ pub const NotAllowedByProvider: Self = Self(1i32);
+ pub const NotSupportedByProvider: Self = Self(2i32);
+ pub const ProviderError: Self = Self(3i32);
+}
+impl ::core::marker::Copy for FindAllWebAccountsStatus {}
+impl ::core::clone::Clone for FindAllWebAccountsStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type WebAccountEventArgs = *mut ::core::ffi::c_void;
+pub type WebAccountMonitor = *mut ::core::ffi::c_void;
+pub type WebProviderError = *mut ::core::ffi::c_void;
+pub type WebTokenRequest = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Web_Core\"`*"]
+#[repr(transparent)]
+pub struct WebTokenRequestPromptType(pub i32);
+impl WebTokenRequestPromptType {
+ pub const Default: Self = Self(0i32);
+ pub const ForceAuthentication: Self = Self(1i32);
+}
+impl ::core::marker::Copy for WebTokenRequestPromptType {}
+impl ::core::clone::Clone for WebTokenRequestPromptType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type WebTokenRequestResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Web_Core\"`*"]
+#[repr(transparent)]
+pub struct WebTokenRequestStatus(pub i32);
+impl WebTokenRequestStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UserCancel: Self = Self(1i32);
+ pub const AccountSwitch: Self = Self(2i32);
+ pub const UserInteractionRequired: Self = Self(3i32);
+ pub const AccountProviderNotAvailable: Self = Self(4i32);
+ pub const ProviderError: Self = Self(5i32);
+}
+impl ::core::marker::Copy for WebTokenRequestStatus {}
+impl ::core::clone::Clone for WebTokenRequestStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type WebTokenResponse = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/Authentication/Web/Provider/mod.rs b/vendor/windows-sys/src/Windows/Security/Authentication/Web/Provider/mod.rs
new file mode 100644
index 000000000..5e4d2908f
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authentication/Web/Provider/mod.rs
@@ -0,0 +1,75 @@
+pub type IWebAccountProviderBaseReportOperation = *mut ::core::ffi::c_void;
+pub type IWebAccountProviderOperation = *mut ::core::ffi::c_void;
+pub type IWebAccountProviderSilentReportOperation = *mut ::core::ffi::c_void;
+pub type IWebAccountProviderTokenObjects = *mut ::core::ffi::c_void;
+pub type IWebAccountProviderTokenObjects2 = *mut ::core::ffi::c_void;
+pub type IWebAccountProviderTokenOperation = *mut ::core::ffi::c_void;
+pub type IWebAccountProviderUIReportOperation = *mut ::core::ffi::c_void;
+pub type WebAccountClientView = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Web_Provider\"`*"]
+#[repr(transparent)]
+pub struct WebAccountClientViewType(pub i32);
+impl WebAccountClientViewType {
+ pub const IdOnly: Self = Self(0i32);
+ pub const IdAndProperties: Self = Self(1i32);
+}
+impl ::core::marker::Copy for WebAccountClientViewType {}
+impl ::core::clone::Clone for WebAccountClientViewType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type WebAccountProviderAddAccountOperation = *mut ::core::ffi::c_void;
+pub type WebAccountProviderDeleteAccountOperation = *mut ::core::ffi::c_void;
+pub type WebAccountProviderGetTokenSilentOperation = *mut ::core::ffi::c_void;
+pub type WebAccountProviderManageAccountOperation = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Web_Provider\"`*"]
+#[repr(transparent)]
+pub struct WebAccountProviderOperationKind(pub i32);
+impl WebAccountProviderOperationKind {
+ pub const RequestToken: Self = Self(0i32);
+ pub const GetTokenSilently: Self = Self(1i32);
+ pub const AddAccount: Self = Self(2i32);
+ pub const ManageAccount: Self = Self(3i32);
+ pub const DeleteAccount: Self = Self(4i32);
+ pub const RetrieveCookies: Self = Self(5i32);
+ pub const SignOutAccount: Self = Self(6i32);
+}
+impl ::core::marker::Copy for WebAccountProviderOperationKind {}
+impl ::core::clone::Clone for WebAccountProviderOperationKind {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type WebAccountProviderRequestTokenOperation = *mut ::core::ffi::c_void;
+pub type WebAccountProviderRetrieveCookiesOperation = *mut ::core::ffi::c_void;
+pub type WebAccountProviderSignOutAccountOperation = *mut ::core::ffi::c_void;
+pub type WebAccountProviderTriggerDetails = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Web_Provider\"`*"]
+#[repr(transparent)]
+pub struct WebAccountScope(pub i32);
+impl WebAccountScope {
+ pub const PerUser: Self = Self(0i32);
+ pub const PerApplication: Self = Self(1i32);
+}
+impl ::core::marker::Copy for WebAccountScope {}
+impl ::core::clone::Clone for WebAccountScope {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Web_Provider\"`*"]
+#[repr(transparent)]
+pub struct WebAccountSelectionOptions(pub u32);
+impl WebAccountSelectionOptions {
+ pub const Default: Self = Self(0u32);
+ pub const New: Self = Self(1u32);
+}
+impl ::core::marker::Copy for WebAccountSelectionOptions {}
+impl ::core::clone::Clone for WebAccountSelectionOptions {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type WebProviderTokenRequest = *mut ::core::ffi::c_void;
+pub type WebProviderTokenResponse = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/Authentication/Web/mod.rs b/vendor/windows-sys/src/Windows/Security/Authentication/Web/mod.rs
new file mode 100644
index 000000000..b7a436c40
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authentication/Web/mod.rs
@@ -0,0 +1,49 @@
+#[cfg(feature = "Security_Authentication_Web_Core")]
+pub mod Core;
+#[cfg(feature = "Security_Authentication_Web_Provider")]
+pub mod Provider;
+#[doc = "*Required features: `\"Security_Authentication_Web\"`*"]
+#[repr(transparent)]
+pub struct TokenBindingKeyType(pub i32);
+impl TokenBindingKeyType {
+ pub const Rsa2048: Self = Self(0i32);
+ pub const EcdsaP256: Self = Self(1i32);
+ pub const AnyExisting: Self = Self(2i32);
+}
+impl ::core::marker::Copy for TokenBindingKeyType {}
+impl ::core::clone::Clone for TokenBindingKeyType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Authentication_Web\"`*"]
+#[repr(transparent)]
+pub struct WebAuthenticationOptions(pub u32);
+impl WebAuthenticationOptions {
+ pub const None: Self = Self(0u32);
+ pub const SilentMode: Self = Self(1u32);
+ pub const UseTitle: Self = Self(2u32);
+ pub const UseHttpPost: Self = Self(4u32);
+ pub const UseCorporateNetwork: Self = Self(8u32);
+}
+impl ::core::marker::Copy for WebAuthenticationOptions {}
+impl ::core::clone::Clone for WebAuthenticationOptions {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type WebAuthenticationResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authentication_Web\"`*"]
+#[repr(transparent)]
+pub struct WebAuthenticationStatus(pub i32);
+impl WebAuthenticationStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UserCancel: Self = Self(1i32);
+ pub const ErrorHttp: Self = Self(2i32);
+}
+impl ::core::marker::Copy for WebAuthenticationStatus {}
+impl ::core::clone::Clone for WebAuthenticationStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Security/Authentication/mod.rs b/vendor/windows-sys/src/Windows/Security/Authentication/mod.rs
new file mode 100644
index 000000000..d7d3c4a72
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authentication/mod.rs
@@ -0,0 +1,6 @@
+#[cfg(feature = "Security_Authentication_Identity")]
+pub mod Identity;
+#[cfg(feature = "Security_Authentication_OnlineId")]
+pub mod OnlineId;
+#[cfg(feature = "Security_Authentication_Web")]
+pub mod Web;
diff --git a/vendor/windows-sys/src/Windows/Security/Authorization/AppCapabilityAccess/mod.rs b/vendor/windows-sys/src/Windows/Security/Authorization/AppCapabilityAccess/mod.rs
new file mode 100644
index 000000000..b0e6dd6bd
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authorization/AppCapabilityAccess/mod.rs
@@ -0,0 +1,18 @@
+pub type AppCapability = *mut ::core::ffi::c_void;
+pub type AppCapabilityAccessChangedEventArgs = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Authorization_AppCapabilityAccess\"`*"]
+#[repr(transparent)]
+pub struct AppCapabilityAccessStatus(pub i32);
+impl AppCapabilityAccessStatus {
+ pub const DeniedBySystem: Self = Self(0i32);
+ pub const NotDeclaredByApp: Self = Self(1i32);
+ pub const DeniedByUser: Self = Self(2i32);
+ pub const UserPromptRequired: Self = Self(3i32);
+ pub const Allowed: Self = Self(4i32);
+}
+impl ::core::marker::Copy for AppCapabilityAccessStatus {}
+impl ::core::clone::Clone for AppCapabilityAccessStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Security/Authorization/mod.rs b/vendor/windows-sys/src/Windows/Security/Authorization/mod.rs
new file mode 100644
index 000000000..34a89bdd1
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Authorization/mod.rs
@@ -0,0 +1,2 @@
+#[cfg(feature = "Security_Authorization_AppCapabilityAccess")]
+pub mod AppCapabilityAccess;
diff --git a/vendor/windows-sys/src/Windows/Security/Credentials/UI/mod.rs b/vendor/windows-sys/src/Windows/Security/Credentials/UI/mod.rs
new file mode 100644
index 000000000..2b18c4085
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Credentials/UI/mod.rs
@@ -0,0 +1,68 @@
+#[doc = "*Required features: `\"Security_Credentials_UI\"`*"]
+#[repr(transparent)]
+pub struct AuthenticationProtocol(pub i32);
+impl AuthenticationProtocol {
+ pub const Basic: Self = Self(0i32);
+ pub const Digest: Self = Self(1i32);
+ pub const Ntlm: Self = Self(2i32);
+ pub const Kerberos: Self = Self(3i32);
+ pub const Negotiate: Self = Self(4i32);
+ pub const CredSsp: Self = Self(5i32);
+ pub const Custom: Self = Self(6i32);
+}
+impl ::core::marker::Copy for AuthenticationProtocol {}
+impl ::core::clone::Clone for AuthenticationProtocol {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type CredentialPickerOptions = *mut ::core::ffi::c_void;
+pub type CredentialPickerResults = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Credentials_UI\"`*"]
+#[repr(transparent)]
+pub struct CredentialSaveOption(pub i32);
+impl CredentialSaveOption {
+ pub const Unselected: Self = Self(0i32);
+ pub const Selected: Self = Self(1i32);
+ pub const Hidden: Self = Self(2i32);
+}
+impl ::core::marker::Copy for CredentialSaveOption {}
+impl ::core::clone::Clone for CredentialSaveOption {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Credentials_UI\"`*"]
+#[repr(transparent)]
+pub struct UserConsentVerificationResult(pub i32);
+impl UserConsentVerificationResult {
+ pub const Verified: Self = Self(0i32);
+ pub const DeviceNotPresent: Self = Self(1i32);
+ pub const NotConfiguredForUser: Self = Self(2i32);
+ pub const DisabledByPolicy: Self = Self(3i32);
+ pub const DeviceBusy: Self = Self(4i32);
+ pub const RetriesExhausted: Self = Self(5i32);
+ pub const Canceled: Self = Self(6i32);
+}
+impl ::core::marker::Copy for UserConsentVerificationResult {}
+impl ::core::clone::Clone for UserConsentVerificationResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Credentials_UI\"`*"]
+#[repr(transparent)]
+pub struct UserConsentVerifierAvailability(pub i32);
+impl UserConsentVerifierAvailability {
+ pub const Available: Self = Self(0i32);
+ pub const DeviceNotPresent: Self = Self(1i32);
+ pub const NotConfiguredForUser: Self = Self(2i32);
+ pub const DisabledByPolicy: Self = Self(3i32);
+ pub const DeviceBusy: Self = Self(4i32);
+}
+impl ::core::marker::Copy for UserConsentVerifierAvailability {}
+impl ::core::clone::Clone for UserConsentVerifierAvailability {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Security/Credentials/mod.rs b/vendor/windows-sys/src/Windows/Security/Credentials/mod.rs
new file mode 100644
index 000000000..00ef91060
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Credentials/mod.rs
@@ -0,0 +1,87 @@
+#[cfg(feature = "Security_Credentials_UI")]
+pub mod UI;
+pub type IWebAccount = *mut ::core::ffi::c_void;
+pub type KeyCredential = *mut ::core::ffi::c_void;
+pub type KeyCredentialAttestationResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Credentials\"`*"]
+#[repr(transparent)]
+pub struct KeyCredentialAttestationStatus(pub i32);
+impl KeyCredentialAttestationStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UnknownError: Self = Self(1i32);
+ pub const NotSupported: Self = Self(2i32);
+ pub const TemporaryFailure: Self = Self(3i32);
+}
+impl ::core::marker::Copy for KeyCredentialAttestationStatus {}
+impl ::core::clone::Clone for KeyCredentialAttestationStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Credentials\"`*"]
+#[repr(transparent)]
+pub struct KeyCredentialCreationOption(pub i32);
+impl KeyCredentialCreationOption {
+ pub const ReplaceExisting: Self = Self(0i32);
+ pub const FailIfExists: Self = Self(1i32);
+}
+impl ::core::marker::Copy for KeyCredentialCreationOption {}
+impl ::core::clone::Clone for KeyCredentialCreationOption {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type KeyCredentialOperationResult = *mut ::core::ffi::c_void;
+pub type KeyCredentialRetrievalResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Credentials\"`*"]
+#[repr(transparent)]
+pub struct KeyCredentialStatus(pub i32);
+impl KeyCredentialStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UnknownError: Self = Self(1i32);
+ pub const NotFound: Self = Self(2i32);
+ pub const UserCanceled: Self = Self(3i32);
+ pub const UserPrefersPassword: Self = Self(4i32);
+ pub const CredentialAlreadyExists: Self = Self(5i32);
+ pub const SecurityDeviceLocked: Self = Self(6i32);
+}
+impl ::core::marker::Copy for KeyCredentialStatus {}
+impl ::core::clone::Clone for KeyCredentialStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type PasswordCredential = *mut ::core::ffi::c_void;
+pub type PasswordCredentialPropertyStore = *mut ::core::ffi::c_void;
+pub type PasswordVault = *mut ::core::ffi::c_void;
+pub type WebAccount = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Credentials\"`*"]
+#[repr(transparent)]
+pub struct WebAccountPictureSize(pub i32);
+impl WebAccountPictureSize {
+ pub const Size64x64: Self = Self(64i32);
+ pub const Size208x208: Self = Self(208i32);
+ pub const Size424x424: Self = Self(424i32);
+ pub const Size1080x1080: Self = Self(1080i32);
+}
+impl ::core::marker::Copy for WebAccountPictureSize {}
+impl ::core::clone::Clone for WebAccountPictureSize {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type WebAccountProvider = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Credentials\"`*"]
+#[repr(transparent)]
+pub struct WebAccountState(pub i32);
+impl WebAccountState {
+ pub const None: Self = Self(0i32);
+ pub const Connected: Self = Self(1i32);
+ pub const Error: Self = Self(2i32);
+}
+impl ::core::marker::Copy for WebAccountState {}
+impl ::core::clone::Clone for WebAccountState {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Security/Cryptography/Certificates/mod.rs b/vendor/windows-sys/src/Windows/Security/Cryptography/Certificates/mod.rs
new file mode 100644
index 000000000..a09525474
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Cryptography/Certificates/mod.rs
@@ -0,0 +1,144 @@
+pub type Certificate = *mut ::core::ffi::c_void;
+pub type CertificateChain = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Cryptography_Certificates\"`*"]
+#[repr(transparent)]
+pub struct CertificateChainPolicy(pub i32);
+impl CertificateChainPolicy {
+ pub const Base: Self = Self(0i32);
+ pub const Ssl: Self = Self(1i32);
+ pub const NTAuthentication: Self = Self(2i32);
+ pub const MicrosoftRoot: Self = Self(3i32);
+}
+impl ::core::marker::Copy for CertificateChainPolicy {}
+impl ::core::clone::Clone for CertificateChainPolicy {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type CertificateExtension = *mut ::core::ffi::c_void;
+pub type CertificateKeyUsages = *mut ::core::ffi::c_void;
+pub type CertificateQuery = *mut ::core::ffi::c_void;
+pub type CertificateRequestProperties = *mut ::core::ffi::c_void;
+pub type CertificateStore = *mut ::core::ffi::c_void;
+pub type ChainBuildingParameters = *mut ::core::ffi::c_void;
+pub type ChainValidationParameters = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Cryptography_Certificates\"`*"]
+#[repr(transparent)]
+pub struct ChainValidationResult(pub i32);
+impl ChainValidationResult {
+ pub const Success: Self = Self(0i32);
+ pub const Untrusted: Self = Self(1i32);
+ pub const Revoked: Self = Self(2i32);
+ pub const Expired: Self = Self(3i32);
+ pub const IncompleteChain: Self = Self(4i32);
+ pub const InvalidSignature: Self = Self(5i32);
+ pub const WrongUsage: Self = Self(6i32);
+ pub const InvalidName: Self = Self(7i32);
+ pub const InvalidCertificateAuthorityPolicy: Self = Self(8i32);
+ pub const BasicConstraintsError: Self = Self(9i32);
+ pub const UnknownCriticalExtension: Self = Self(10i32);
+ pub const RevocationInformationMissing: Self = Self(11i32);
+ pub const RevocationFailure: Self = Self(12i32);
+ pub const OtherErrors: Self = Self(13i32);
+}
+impl ::core::marker::Copy for ChainValidationResult {}
+impl ::core::clone::Clone for ChainValidationResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type CmsAttachedSignature = *mut ::core::ffi::c_void;
+pub type CmsDetachedSignature = *mut ::core::ffi::c_void;
+pub type CmsSignerInfo = *mut ::core::ffi::c_void;
+pub type CmsTimestampInfo = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Cryptography_Certificates\"`*"]
+#[repr(transparent)]
+pub struct EnrollKeyUsages(pub u32);
+impl EnrollKeyUsages {
+ pub const None: Self = Self(0u32);
+ pub const Decryption: Self = Self(1u32);
+ pub const Signing: Self = Self(2u32);
+ pub const KeyAgreement: Self = Self(4u32);
+ pub const All: Self = Self(16777215u32);
+}
+impl ::core::marker::Copy for EnrollKeyUsages {}
+impl ::core::clone::Clone for EnrollKeyUsages {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Cryptography_Certificates\"`*"]
+#[repr(transparent)]
+pub struct ExportOption(pub i32);
+impl ExportOption {
+ pub const NotExportable: Self = Self(0i32);
+ pub const Exportable: Self = Self(1i32);
+}
+impl ::core::marker::Copy for ExportOption {}
+impl ::core::clone::Clone for ExportOption {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Cryptography_Certificates\"`*"]
+#[repr(transparent)]
+pub struct InstallOptions(pub u32);
+impl InstallOptions {
+ pub const None: Self = Self(0u32);
+ pub const DeleteExpired: Self = Self(1u32);
+}
+impl ::core::marker::Copy for InstallOptions {}
+impl ::core::clone::Clone for InstallOptions {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Cryptography_Certificates\"`*"]
+#[repr(transparent)]
+pub struct KeyProtectionLevel(pub i32);
+impl KeyProtectionLevel {
+ pub const NoConsent: Self = Self(0i32);
+ pub const ConsentOnly: Self = Self(1i32);
+ pub const ConsentWithPassword: Self = Self(2i32);
+ pub const ConsentWithFingerprint: Self = Self(3i32);
+}
+impl ::core::marker::Copy for KeyProtectionLevel {}
+impl ::core::clone::Clone for KeyProtectionLevel {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Cryptography_Certificates\"`*"]
+#[repr(transparent)]
+pub struct KeySize(pub i32);
+impl KeySize {
+ pub const Invalid: Self = Self(0i32);
+ pub const Rsa2048: Self = Self(2048i32);
+ pub const Rsa4096: Self = Self(4096i32);
+}
+impl ::core::marker::Copy for KeySize {}
+impl ::core::clone::Clone for KeySize {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type PfxImportParameters = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Cryptography_Certificates\"`*"]
+#[repr(transparent)]
+pub struct SignatureValidationResult(pub i32);
+impl SignatureValidationResult {
+ pub const Success: Self = Self(0i32);
+ pub const InvalidParameter: Self = Self(1i32);
+ pub const BadMessage: Self = Self(2i32);
+ pub const InvalidSignature: Self = Self(3i32);
+ pub const OtherErrors: Self = Self(4i32);
+}
+impl ::core::marker::Copy for SignatureValidationResult {}
+impl ::core::clone::Clone for SignatureValidationResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type SubjectAlternativeNameInfo = *mut ::core::ffi::c_void;
+pub type UserCertificateEnrollmentManager = *mut ::core::ffi::c_void;
+pub type UserCertificateStore = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/Cryptography/Core/mod.rs b/vendor/windows-sys/src/Windows/Security/Cryptography/Core/mod.rs
new file mode 100644
index 000000000..84e30e7c8
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Cryptography/Core/mod.rs
@@ -0,0 +1,69 @@
+pub type AsymmetricKeyAlgorithmProvider = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Cryptography_Core\"`*"]
+#[repr(transparent)]
+pub struct Capi1KdfTargetAlgorithm(pub i32);
+impl Capi1KdfTargetAlgorithm {
+ pub const NotAes: Self = Self(0i32);
+ pub const Aes: Self = Self(1i32);
+}
+impl ::core::marker::Copy for Capi1KdfTargetAlgorithm {}
+impl ::core::clone::Clone for Capi1KdfTargetAlgorithm {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type CryptographicHash = *mut ::core::ffi::c_void;
+pub type CryptographicKey = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Cryptography_Core\"`*"]
+#[repr(transparent)]
+pub struct CryptographicPadding(pub i32);
+impl CryptographicPadding {
+ pub const None: Self = Self(0i32);
+ pub const RsaOaep: Self = Self(1i32);
+ pub const RsaPkcs1V15: Self = Self(2i32);
+ pub const RsaPss: Self = Self(3i32);
+}
+impl ::core::marker::Copy for CryptographicPadding {}
+impl ::core::clone::Clone for CryptographicPadding {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Cryptography_Core\"`*"]
+#[repr(transparent)]
+pub struct CryptographicPrivateKeyBlobType(pub i32);
+impl CryptographicPrivateKeyBlobType {
+ pub const Pkcs8RawPrivateKeyInfo: Self = Self(0i32);
+ pub const Pkcs1RsaPrivateKey: Self = Self(1i32);
+ pub const BCryptPrivateKey: Self = Self(2i32);
+ pub const Capi1PrivateKey: Self = Self(3i32);
+ pub const BCryptEccFullPrivateKey: Self = Self(4i32);
+}
+impl ::core::marker::Copy for CryptographicPrivateKeyBlobType {}
+impl ::core::clone::Clone for CryptographicPrivateKeyBlobType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Cryptography_Core\"`*"]
+#[repr(transparent)]
+pub struct CryptographicPublicKeyBlobType(pub i32);
+impl CryptographicPublicKeyBlobType {
+ pub const X509SubjectPublicKeyInfo: Self = Self(0i32);
+ pub const Pkcs1RsaPublicKey: Self = Self(1i32);
+ pub const BCryptPublicKey: Self = Self(2i32);
+ pub const Capi1PublicKey: Self = Self(3i32);
+ pub const BCryptEccFullPublicKey: Self = Self(4i32);
+}
+impl ::core::marker::Copy for CryptographicPublicKeyBlobType {}
+impl ::core::clone::Clone for CryptographicPublicKeyBlobType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type EncryptedAndAuthenticatedData = *mut ::core::ffi::c_void;
+pub type HashAlgorithmProvider = *mut ::core::ffi::c_void;
+pub type KeyDerivationAlgorithmProvider = *mut ::core::ffi::c_void;
+pub type KeyDerivationParameters = *mut ::core::ffi::c_void;
+pub type MacAlgorithmProvider = *mut ::core::ffi::c_void;
+pub type SymmetricKeyAlgorithmProvider = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/Cryptography/DataProtection/mod.rs b/vendor/windows-sys/src/Windows/Security/Cryptography/DataProtection/mod.rs
new file mode 100644
index 000000000..ad1bce84e
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Cryptography/DataProtection/mod.rs
@@ -0,0 +1 @@
+pub type DataProtectionProvider = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/Cryptography/mod.rs b/vendor/windows-sys/src/Windows/Security/Cryptography/mod.rs
new file mode 100644
index 000000000..e0b6866c1
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Cryptography/mod.rs
@@ -0,0 +1,20 @@
+#[cfg(feature = "Security_Cryptography_Certificates")]
+pub mod Certificates;
+#[cfg(feature = "Security_Cryptography_Core")]
+pub mod Core;
+#[cfg(feature = "Security_Cryptography_DataProtection")]
+pub mod DataProtection;
+#[doc = "*Required features: `\"Security_Cryptography\"`*"]
+#[repr(transparent)]
+pub struct BinaryStringEncoding(pub i32);
+impl BinaryStringEncoding {
+ pub const Utf8: Self = Self(0i32);
+ pub const Utf16LE: Self = Self(1i32);
+ pub const Utf16BE: Self = Self(2i32);
+}
+impl ::core::marker::Copy for BinaryStringEncoding {}
+impl ::core::clone::Clone for BinaryStringEncoding {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Security/DataProtection/mod.rs b/vendor/windows-sys/src/Windows/Security/DataProtection/mod.rs
new file mode 100644
index 000000000..42ed61155
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/DataProtection/mod.rs
@@ -0,0 +1,45 @@
+#[doc = "*Required features: `\"Security_DataProtection\"`*"]
+#[repr(transparent)]
+pub struct UserDataAvailability(pub i32);
+impl UserDataAvailability {
+ pub const Always: Self = Self(0i32);
+ pub const AfterFirstUnlock: Self = Self(1i32);
+ pub const WhileUnlocked: Self = Self(2i32);
+}
+impl ::core::marker::Copy for UserDataAvailability {}
+impl ::core::clone::Clone for UserDataAvailability {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type UserDataAvailabilityStateChangedEventArgs = *mut ::core::ffi::c_void;
+pub type UserDataBufferUnprotectResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_DataProtection\"`*"]
+#[repr(transparent)]
+pub struct UserDataBufferUnprotectStatus(pub i32);
+impl UserDataBufferUnprotectStatus {
+ pub const Succeeded: Self = Self(0i32);
+ pub const Unavailable: Self = Self(1i32);
+}
+impl ::core::marker::Copy for UserDataBufferUnprotectStatus {}
+impl ::core::clone::Clone for UserDataBufferUnprotectStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type UserDataProtectionManager = *mut ::core::ffi::c_void;
+pub type UserDataStorageItemProtectionInfo = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_DataProtection\"`*"]
+#[repr(transparent)]
+pub struct UserDataStorageItemProtectionStatus(pub i32);
+impl UserDataStorageItemProtectionStatus {
+ pub const Succeeded: Self = Self(0i32);
+ pub const NotProtectable: Self = Self(1i32);
+ pub const DataUnavailable: Self = Self(2i32);
+}
+impl ::core::marker::Copy for UserDataStorageItemProtectionStatus {}
+impl ::core::clone::Clone for UserDataStorageItemProtectionStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Security/EnterpriseData/mod.rs b/vendor/windows-sys/src/Windows/Security/EnterpriseData/mod.rs
new file mode 100644
index 000000000..0d7a243e5
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/EnterpriseData/mod.rs
@@ -0,0 +1,129 @@
+pub type BufferProtectUnprotectResult = *mut ::core::ffi::c_void;
+pub type DataProtectionInfo = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
+#[repr(transparent)]
+pub struct DataProtectionStatus(pub i32);
+impl DataProtectionStatus {
+ pub const ProtectedToOtherIdentity: Self = Self(0i32);
+ pub const Protected: Self = Self(1i32);
+ pub const Revoked: Self = Self(2i32);
+ pub const Unprotected: Self = Self(3i32);
+ pub const LicenseExpired: Self = Self(4i32);
+ pub const AccessSuspended: Self = Self(5i32);
+}
+impl ::core::marker::Copy for DataProtectionStatus {}
+impl ::core::clone::Clone for DataProtectionStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
+#[repr(transparent)]
+pub struct EnforcementLevel(pub i32);
+impl EnforcementLevel {
+ pub const NoProtection: Self = Self(0i32);
+ pub const Silent: Self = Self(1i32);
+ pub const Override: Self = Self(2i32);
+ pub const Block: Self = Self(3i32);
+}
+impl ::core::marker::Copy for EnforcementLevel {}
+impl ::core::clone::Clone for EnforcementLevel {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type FileProtectionInfo = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
+#[repr(transparent)]
+pub struct FileProtectionStatus(pub i32);
+impl FileProtectionStatus {
+ pub const Undetermined: Self = Self(0i32);
+ pub const Unknown: Self = Self(0i32);
+ pub const Unprotected: Self = Self(1i32);
+ pub const Revoked: Self = Self(2i32);
+ pub const Protected: Self = Self(3i32);
+ pub const ProtectedByOtherUser: Self = Self(4i32);
+ pub const ProtectedToOtherEnterprise: Self = Self(5i32);
+ pub const NotProtectable: Self = Self(6i32);
+ pub const ProtectedToOtherIdentity: Self = Self(7i32);
+ pub const LicenseExpired: Self = Self(8i32);
+ pub const AccessSuspended: Self = Self(9i32);
+ pub const FileInUse: Self = Self(10i32);
+}
+impl ::core::marker::Copy for FileProtectionStatus {}
+impl ::core::clone::Clone for FileProtectionStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type FileUnprotectOptions = *mut ::core::ffi::c_void;
+pub type ProtectedAccessResumedEventArgs = *mut ::core::ffi::c_void;
+pub type ProtectedAccessSuspendingEventArgs = *mut ::core::ffi::c_void;
+pub type ProtectedContainerExportResult = *mut ::core::ffi::c_void;
+pub type ProtectedContainerImportResult = *mut ::core::ffi::c_void;
+pub type ProtectedContentRevokedEventArgs = *mut ::core::ffi::c_void;
+pub type ProtectedFileCreateResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
+#[repr(transparent)]
+pub struct ProtectedImportExportStatus(pub i32);
+impl ProtectedImportExportStatus {
+ pub const Ok: Self = Self(0i32);
+ pub const Undetermined: Self = Self(1i32);
+ pub const Unprotected: Self = Self(2i32);
+ pub const Revoked: Self = Self(3i32);
+ pub const NotRoamable: Self = Self(4i32);
+ pub const ProtectedToOtherIdentity: Self = Self(5i32);
+ pub const LicenseExpired: Self = Self(6i32);
+ pub const AccessSuspended: Self = Self(7i32);
+}
+impl ::core::marker::Copy for ProtectedImportExportStatus {}
+impl ::core::clone::Clone for ProtectedImportExportStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
+#[repr(transparent)]
+pub struct ProtectionPolicyAuditAction(pub i32);
+impl ProtectionPolicyAuditAction {
+ pub const Decrypt: Self = Self(0i32);
+ pub const CopyToLocation: Self = Self(1i32);
+ pub const SendToRecipient: Self = Self(2i32);
+ pub const Other: Self = Self(3i32);
+}
+impl ::core::marker::Copy for ProtectionPolicyAuditAction {}
+impl ::core::clone::Clone for ProtectionPolicyAuditAction {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type ProtectionPolicyAuditInfo = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
+#[repr(transparent)]
+pub struct ProtectionPolicyEvaluationResult(pub i32);
+impl ProtectionPolicyEvaluationResult {
+ pub const Allowed: Self = Self(0i32);
+ pub const Blocked: Self = Self(1i32);
+ pub const ConsentRequired: Self = Self(2i32);
+}
+impl ::core::marker::Copy for ProtectionPolicyEvaluationResult {}
+impl ::core::clone::Clone for ProtectionPolicyEvaluationResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type ProtectionPolicyManager = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
+#[repr(transparent)]
+pub struct ProtectionPolicyRequestAccessBehavior(pub i32);
+impl ProtectionPolicyRequestAccessBehavior {
+ pub const Decrypt: Self = Self(0i32);
+ pub const TreatOverridePolicyAsBlock: Self = Self(1i32);
+}
+impl ::core::marker::Copy for ProtectionPolicyRequestAccessBehavior {}
+impl ::core::clone::Clone for ProtectionPolicyRequestAccessBehavior {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type ThreadNetworkContext = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/ExchangeActiveSyncProvisioning/mod.rs b/vendor/windows-sys/src/Windows/Security/ExchangeActiveSyncProvisioning/mod.rs
new file mode 100644
index 000000000..04b1cb955
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/ExchangeActiveSyncProvisioning/mod.rs
@@ -0,0 +1,182 @@
+pub type EasClientDeviceInformation = *mut ::core::ffi::c_void;
+pub type EasClientSecurityPolicy = *mut ::core::ffi::c_void;
+pub type EasComplianceResults = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasDisallowConvenienceLogonResult(pub i32);
+impl EasDisallowConvenienceLogonResult {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const Compliant: Self = Self(1i32);
+ pub const CanBeCompliant: Self = Self(2i32);
+ pub const RequestedPolicyIsStricter: Self = Self(3i32);
+}
+impl ::core::marker::Copy for EasDisallowConvenienceLogonResult {}
+impl ::core::clone::Clone for EasDisallowConvenienceLogonResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasEncryptionProviderType(pub i32);
+impl EasEncryptionProviderType {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const WindowsEncryption: Self = Self(1i32);
+ pub const OtherEncryption: Self = Self(2i32);
+}
+impl ::core::marker::Copy for EasEncryptionProviderType {}
+impl ::core::clone::Clone for EasEncryptionProviderType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasMaxInactivityTimeLockResult(pub i32);
+impl EasMaxInactivityTimeLockResult {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const Compliant: Self = Self(1i32);
+ pub const CanBeCompliant: Self = Self(2i32);
+ pub const RequestedPolicyIsStricter: Self = Self(3i32);
+ pub const InvalidParameter: Self = Self(4i32);
+}
+impl ::core::marker::Copy for EasMaxInactivityTimeLockResult {}
+impl ::core::clone::Clone for EasMaxInactivityTimeLockResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasMaxPasswordFailedAttemptsResult(pub i32);
+impl EasMaxPasswordFailedAttemptsResult {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const Compliant: Self = Self(1i32);
+ pub const CanBeCompliant: Self = Self(2i32);
+ pub const RequestedPolicyIsStricter: Self = Self(3i32);
+ pub const InvalidParameter: Self = Self(4i32);
+}
+impl ::core::marker::Copy for EasMaxPasswordFailedAttemptsResult {}
+impl ::core::clone::Clone for EasMaxPasswordFailedAttemptsResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasMinPasswordComplexCharactersResult(pub i32);
+impl EasMinPasswordComplexCharactersResult {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const Compliant: Self = Self(1i32);
+ pub const CanBeCompliant: Self = Self(2i32);
+ pub const RequestedPolicyIsStricter: Self = Self(3i32);
+ pub const RequestedPolicyNotEnforceable: Self = Self(4i32);
+ pub const InvalidParameter: Self = Self(5i32);
+ pub const CurrentUserHasBlankPassword: Self = Self(6i32);
+ pub const AdminsHaveBlankPassword: Self = Self(7i32);
+ pub const UserCannotChangePassword: Self = Self(8i32);
+ pub const AdminsCannotChangePassword: Self = Self(9i32);
+ pub const LocalControlledUsersCannotChangePassword: Self = Self(10i32);
+ pub const ConnectedAdminsProviderPolicyIsWeak: Self = Self(11i32);
+ pub const ConnectedUserProviderPolicyIsWeak: Self = Self(12i32);
+ pub const ChangeConnectedAdminsPassword: Self = Self(13i32);
+ pub const ChangeConnectedUserPassword: Self = Self(14i32);
+}
+impl ::core::marker::Copy for EasMinPasswordComplexCharactersResult {}
+impl ::core::clone::Clone for EasMinPasswordComplexCharactersResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasMinPasswordLengthResult(pub i32);
+impl EasMinPasswordLengthResult {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const Compliant: Self = Self(1i32);
+ pub const CanBeCompliant: Self = Self(2i32);
+ pub const RequestedPolicyIsStricter: Self = Self(3i32);
+ pub const RequestedPolicyNotEnforceable: Self = Self(4i32);
+ pub const InvalidParameter: Self = Self(5i32);
+ pub const CurrentUserHasBlankPassword: Self = Self(6i32);
+ pub const AdminsHaveBlankPassword: Self = Self(7i32);
+ pub const UserCannotChangePassword: Self = Self(8i32);
+ pub const AdminsCannotChangePassword: Self = Self(9i32);
+ pub const LocalControlledUsersCannotChangePassword: Self = Self(10i32);
+ pub const ConnectedAdminsProviderPolicyIsWeak: Self = Self(11i32);
+ pub const ConnectedUserProviderPolicyIsWeak: Self = Self(12i32);
+ pub const ChangeConnectedAdminsPassword: Self = Self(13i32);
+ pub const ChangeConnectedUserPassword: Self = Self(14i32);
+}
+impl ::core::marker::Copy for EasMinPasswordLengthResult {}
+impl ::core::clone::Clone for EasMinPasswordLengthResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasPasswordExpirationResult(pub i32);
+impl EasPasswordExpirationResult {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const Compliant: Self = Self(1i32);
+ pub const CanBeCompliant: Self = Self(2i32);
+ pub const RequestedPolicyIsStricter: Self = Self(3i32);
+ pub const RequestedExpirationIncompatible: Self = Self(4i32);
+ pub const InvalidParameter: Self = Self(5i32);
+ pub const UserCannotChangePassword: Self = Self(6i32);
+ pub const AdminsCannotChangePassword: Self = Self(7i32);
+ pub const LocalControlledUsersCannotChangePassword: Self = Self(8i32);
+}
+impl ::core::marker::Copy for EasPasswordExpirationResult {}
+impl ::core::clone::Clone for EasPasswordExpirationResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasPasswordHistoryResult(pub i32);
+impl EasPasswordHistoryResult {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const Compliant: Self = Self(1i32);
+ pub const CanBeCompliant: Self = Self(2i32);
+ pub const RequestedPolicyIsStricter: Self = Self(3i32);
+ pub const InvalidParameter: Self = Self(4i32);
+}
+impl ::core::marker::Copy for EasPasswordHistoryResult {}
+impl ::core::clone::Clone for EasPasswordHistoryResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_ExchangeActiveSyncProvisioning\"`*"]
+#[repr(transparent)]
+pub struct EasRequireEncryptionResult(pub i32);
+impl EasRequireEncryptionResult {
+ pub const NotEvaluated: Self = Self(0i32);
+ pub const Compliant: Self = Self(1i32);
+ pub const CanBeCompliant: Self = Self(2i32);
+ pub const NotProvisionedOnAllVolumes: Self = Self(3i32);
+ pub const DeFixedDataNotSupported: Self = Self(4i32);
+ pub const FixedDataNotSupported: Self = Self(4i32);
+ pub const DeHardwareNotCompliant: Self = Self(5i32);
+ pub const HardwareNotCompliant: Self = Self(5i32);
+ pub const DeWinReNotConfigured: Self = Self(6i32);
+ pub const LockNotConfigured: Self = Self(6i32);
+ pub const DeProtectionSuspended: Self = Self(7i32);
+ pub const ProtectionSuspended: Self = Self(7i32);
+ pub const DeOsVolumeNotProtected: Self = Self(8i32);
+ pub const OsVolumeNotProtected: Self = Self(8i32);
+ pub const DeProtectionNotYetEnabled: Self = Self(9i32);
+ pub const ProtectionNotYetEnabled: Self = Self(9i32);
+ pub const NoFeatureLicense: Self = Self(10i32);
+ pub const OsNotProtected: Self = Self(11i32);
+ pub const UnexpectedFailure: Self = Self(12i32);
+}
+impl ::core::marker::Copy for EasRequireEncryptionResult {}
+impl ::core::clone::Clone for EasRequireEncryptionResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Security/Isolation/mod.rs b/vendor/windows-sys/src/Windows/Security/Isolation/mod.rs
new file mode 100644
index 000000000..7846478d1
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/Isolation/mod.rs
@@ -0,0 +1,241 @@
+pub type HostMessageReceivedCallback = *mut ::core::ffi::c_void;
+pub type IsolatedWindowsEnvironment = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentActivator(pub i32);
+impl IsolatedWindowsEnvironmentActivator {
+ pub const System: Self = Self(0i32);
+ pub const User: Self = Self(1i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentActivator {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentActivator {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentAllowedClipboardFormats(pub u32);
+impl IsolatedWindowsEnvironmentAllowedClipboardFormats {
+ pub const None: Self = Self(0u32);
+ pub const Text: Self = Self(1u32);
+ pub const Image: Self = Self(2u32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentAllowedClipboardFormats {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentAllowedClipboardFormats {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentAvailablePrinters(pub u32);
+impl IsolatedWindowsEnvironmentAvailablePrinters {
+ pub const None: Self = Self(0u32);
+ pub const Local: Self = Self(1u32);
+ pub const Network: Self = Self(2u32);
+ pub const SystemPrintToPdf: Self = Self(4u32);
+ pub const SystemPrintToXps: Self = Self(8u32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentAvailablePrinters {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentAvailablePrinters {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentClipboardCopyPasteDirections(pub u32);
+impl IsolatedWindowsEnvironmentClipboardCopyPasteDirections {
+ pub const None: Self = Self(0u32);
+ pub const HostToIsolatedWindowsEnvironment: Self = Self(1u32);
+ pub const IsolatedWindowsEnvironmentToHost: Self = Self(2u32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentClipboardCopyPasteDirections {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentClipboardCopyPasteDirections {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+pub struct IsolatedWindowsEnvironmentCreateProgress {
+ pub State: IsolatedWindowsEnvironmentProgressState,
+ pub PercentComplete: u32,
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentCreateProgress {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentCreateProgress {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentCreateResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentCreateStatus(pub i32);
+impl IsolatedWindowsEnvironmentCreateStatus {
+ pub const Success: Self = Self(0i32);
+ pub const FailureByPolicy: Self = Self(1i32);
+ pub const UnknownFailure: Self = Self(2i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentCreateStatus {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentCreateStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentFile = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentHostError(pub i32);
+impl IsolatedWindowsEnvironmentHostError {
+ pub const AdminPolicyIsDisabledOrNotPresent: Self = Self(0i32);
+ pub const FeatureNotInstalled: Self = Self(1i32);
+ pub const HardwareRequirementsNotMet: Self = Self(2i32);
+ pub const RebootRequired: Self = Self(3i32);
+ pub const UnknownError: Self = Self(4i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentHostError {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentHostError {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentLaunchFileResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentLaunchFileStatus(pub i32);
+impl IsolatedWindowsEnvironmentLaunchFileStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UnknownFailure: Self = Self(1i32);
+ pub const EnvironmentUnavailable: Self = Self(2i32);
+ pub const FileNotFound: Self = Self(3i32);
+ pub const TimedOut: Self = Self(4i32);
+ pub const AlreadySharedWithConflictingOptions: Self = Self(5i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentLaunchFileStatus {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentLaunchFileStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentOptions = *mut ::core::ffi::c_void;
+pub type IsolatedWindowsEnvironmentOwnerRegistrationData = *mut ::core::ffi::c_void;
+pub type IsolatedWindowsEnvironmentOwnerRegistrationResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentOwnerRegistrationStatus(pub i32);
+impl IsolatedWindowsEnvironmentOwnerRegistrationStatus {
+ pub const Success: Self = Self(0i32);
+ pub const InvalidArgument: Self = Self(1i32);
+ pub const AccessDenied: Self = Self(2i32);
+ pub const InsufficientMemory: Self = Self(3i32);
+ pub const UnknownFailure: Self = Self(4i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentOwnerRegistrationStatus {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentOwnerRegistrationStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentPostMessageResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentPostMessageStatus(pub i32);
+impl IsolatedWindowsEnvironmentPostMessageStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UnknownFailure: Self = Self(1i32);
+ pub const EnvironmentUnavailable: Self = Self(2i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentPostMessageStatus {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentPostMessageStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentProcess = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentProcessState(pub i32);
+impl IsolatedWindowsEnvironmentProcessState {
+ pub const Running: Self = Self(1i32);
+ pub const Aborted: Self = Self(2i32);
+ pub const Completed: Self = Self(3i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentProcessState {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentProcessState {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentProgressState(pub i32);
+impl IsolatedWindowsEnvironmentProgressState {
+ pub const Queued: Self = Self(0i32);
+ pub const Processing: Self = Self(1i32);
+ pub const Completed: Self = Self(2i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentProgressState {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentProgressState {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentShareFileRequestOptions = *mut ::core::ffi::c_void;
+pub type IsolatedWindowsEnvironmentShareFileResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentShareFileStatus(pub i32);
+impl IsolatedWindowsEnvironmentShareFileStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UnknownFailure: Self = Self(1i32);
+ pub const EnvironmentUnavailable: Self = Self(2i32);
+ pub const AlreadySharedWithConflictingOptions: Self = Self(3i32);
+ pub const FileNotFound: Self = Self(4i32);
+ pub const AccessDenied: Self = Self(5i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentShareFileStatus {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentShareFileStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentShareFolderRequestOptions = *mut ::core::ffi::c_void;
+pub type IsolatedWindowsEnvironmentShareFolderResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentShareFolderStatus(pub i32);
+impl IsolatedWindowsEnvironmentShareFolderStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UnknownFailure: Self = Self(1i32);
+ pub const EnvironmentUnavailable: Self = Self(2i32);
+ pub const FolderNotFound: Self = Self(3i32);
+ pub const AccessDenied: Self = Self(4i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentShareFolderStatus {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentShareFolderStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentStartProcessResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Security_Isolation\"`*"]
+#[repr(transparent)]
+pub struct IsolatedWindowsEnvironmentStartProcessStatus(pub i32);
+impl IsolatedWindowsEnvironmentStartProcessStatus {
+ pub const Success: Self = Self(0i32);
+ pub const UnknownFailure: Self = Self(1i32);
+ pub const EnvironmentUnavailable: Self = Self(2i32);
+ pub const FileNotFound: Self = Self(3i32);
+ pub const AppNotRegistered: Self = Self(4i32);
+}
+impl ::core::marker::Copy for IsolatedWindowsEnvironmentStartProcessStatus {}
+impl ::core::clone::Clone for IsolatedWindowsEnvironmentStartProcessStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type IsolatedWindowsEnvironmentTelemetryParameters = *mut ::core::ffi::c_void;
+pub type IsolatedWindowsEnvironmentUserInfo = *mut ::core::ffi::c_void;
+pub type MessageReceivedCallback = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Security/mod.rs b/vendor/windows-sys/src/Windows/Security/mod.rs
new file mode 100644
index 000000000..cabf65301
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Security/mod.rs
@@ -0,0 +1,16 @@
+#[cfg(feature = "Security_Authentication")]
+pub mod Authentication;
+#[cfg(feature = "Security_Authorization")]
+pub mod Authorization;
+#[cfg(feature = "Security_Credentials")]
+pub mod Credentials;
+#[cfg(feature = "Security_Cryptography")]
+pub mod Cryptography;
+#[cfg(feature = "Security_DataProtection")]
+pub mod DataProtection;
+#[cfg(feature = "Security_EnterpriseData")]
+pub mod EnterpriseData;
+#[cfg(feature = "Security_ExchangeActiveSyncProvisioning")]
+pub mod ExchangeActiveSyncProvisioning;
+#[cfg(feature = "Security_Isolation")]
+pub mod Isolation;