1#[cfg(any(feature = "signing", feature = "encryption"))]
54pub(crate) mod internal;
55
56pub mod error;
58pub mod hardening;
59pub mod memory;
60
61pub use error::{Error, Result};
62pub use hardening::harden_process;
63pub use memory::{
64 coffer_view, init_pool, pool_acquire, pool_release, zeroize_all_registered_at_shutdown,
65 LockedBuffer, MemoryEnclave, PoolSlot, SecureBuffer, TieredPool, TieredPoolConfig,
66};
67pub use zeroize::Zeroizing;
68
69#[cfg(any(feature = "signing", feature = "encryption"))]
71pub mod auth;
72#[cfg(any(feature = "signing", feature = "encryption"))]
73pub mod capabilities;
74#[cfg(any(feature = "signing", feature = "encryption"))]
75pub mod config;
76#[cfg(any(feature = "signing", feature = "encryption"))]
77pub mod credential;
78#[cfg(any(feature = "signing", feature = "encryption"))]
79pub mod encryption;
80#[cfg(any(feature = "signing", feature = "encryption"))]
81pub mod exec;
82#[cfg(any(feature = "signing", feature = "encryption"))]
83pub mod factory;
84#[cfg(any(feature = "signing", feature = "encryption"))]
85pub mod fs;
86#[cfg(any(feature = "signing", feature = "encryption"))]
87pub mod integrity;
88#[cfg(any(feature = "signing", feature = "encryption"))]
89pub mod process;
90#[cfg(any(feature = "signing", feature = "encryption"))]
91pub mod security_key;
92#[cfg(any(feature = "signing", feature = "encryption"))]
93pub mod shell;
94#[cfg(any(feature = "signing", feature = "encryption"))]
95pub mod signing;
96#[cfg(any(feature = "signing", feature = "encryption"))]
97pub mod types;
98#[cfg(any(feature = "signing", feature = "encryption"))]
99pub mod wsl;
100
101#[cfg(any(feature = "signing", feature = "encryption"))]
102pub use auth::{platform_auth_capabilities, AuthCapabilities, AuthHandle};
103#[cfg(any(feature = "signing", feature = "encryption"))]
104pub use capabilities::{
105 has_keychain_entitlement, is_binary_signed, security_capabilities, SecurityCapabilities,
106};
107#[cfg(any(feature = "signing", feature = "encryption"))]
108pub use config::{
109 EnclaveConfig, LinuxConfig, MacOsConfig, PlatformConfig, WindowsConfig, WindowsSoftwareFallback,
110};
111#[cfg(any(feature = "signing", feature = "encryption"))]
112pub use credential::{classify_credential, CredentialState, LifecyclePolicy};
113#[cfg(feature = "encryption")]
114pub use encryption::EncryptorHandle;
115#[cfg(any(feature = "signing", feature = "encryption"))]
117pub use exec::{IntegrationType, SecureProcess, TempSecretFile};
118#[cfg(any(feature = "signing", feature = "encryption"))]
119pub use factory::{
120 create_auth, create_encryptor, create_security_key, create_signer, create_tamper_evident,
121 create_tamper_evident_ephemeral,
122};
123#[cfg(any(feature = "signing", feature = "encryption"))]
124pub use integrity::{IntegrityMode, TamperEvidentHandle, VerifyOutcome};
125#[cfg(any(feature = "signing", feature = "encryption"))]
126pub use security_key::{SecurityKeyHandle, SecurityKeyInfo, SecurityKeySignature};
127#[cfg(feature = "signing")]
128pub use signing::SignerHandle;
129#[cfg(any(feature = "signing", feature = "encryption"))]
130pub use types::{AccessPolicy, BackendKind, KeyInfo, KeyType, PresenceMode, PresenceOptions};