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 bridge_server;
74#[cfg(any(feature = "signing", feature = "encryption"))]
75pub mod capabilities;
76#[cfg(any(feature = "signing", feature = "encryption"))]
77pub mod config;
78#[cfg(any(feature = "signing", feature = "encryption"))]
79pub mod credential;
80#[cfg(any(feature = "signing", feature = "encryption"))]
81pub mod diagnostics;
82#[cfg(any(feature = "signing", feature = "encryption"))]
83pub mod encryption;
84#[cfg(any(feature = "signing", feature = "encryption"))]
85pub mod exec;
86#[cfg(any(feature = "signing", feature = "encryption"))]
87pub mod factory;
88#[cfg(any(feature = "signing", feature = "encryption"))]
89pub mod fs;
90#[cfg(any(feature = "signing", feature = "encryption"))]
91pub mod integrity;
92#[cfg(any(feature = "signing", feature = "encryption"))]
93pub mod process;
94#[cfg(any(feature = "signing", feature = "encryption"))]
95pub mod security_key;
96#[cfg(any(feature = "signing", feature = "encryption"))]
97pub mod shell;
98#[cfg(any(feature = "signing", feature = "encryption"))]
99pub mod signing;
100#[cfg(any(feature = "signing", feature = "encryption"))]
101pub mod types;
102#[cfg(any(feature = "signing", feature = "encryption"))]
103pub mod wsl;
104
105#[cfg(any(feature = "signing", feature = "encryption"))]
106pub use auth::{platform_auth_capabilities, AuthCapabilities, AuthHandle};
107#[cfg(any(feature = "signing", feature = "encryption"))]
108pub use capabilities::{
109 has_keychain_entitlement, is_binary_signed, security_capabilities, SecurityCapabilities,
110};
111#[cfg(any(feature = "signing", feature = "encryption"))]
112pub use config::{
113 EnclaveConfig, LinuxConfig, MacOsConfig, PlatformConfig, WindowsConfig, WindowsSoftwareFallback,
114};
115#[cfg(any(feature = "signing", feature = "encryption"))]
116pub use credential::{classify_credential, CredentialState, LifecyclePolicy};
117#[cfg(feature = "encryption")]
118pub use encryption::EncryptorHandle;
119#[cfg(any(feature = "signing", feature = "encryption"))]
121pub use exec::{IntegrationType, SecureProcess, TempSecretFile};
122#[cfg(any(feature = "signing", feature = "encryption"))]
123pub use factory::{
124 create_auth, create_encryptor, create_security_key, create_signer, create_tamper_evident,
125 create_tamper_evident_ephemeral,
126};
127#[cfg(any(feature = "signing", feature = "encryption"))]
128pub use integrity::{IntegrityMode, TamperEvidentHandle, VerifyOutcome};
129#[cfg(any(feature = "signing", feature = "encryption"))]
130pub use security_key::{SecurityKeyHandle, SecurityKeyInfo, SecurityKeySignature};
131#[cfg(feature = "signing")]
132pub use signing::SignerHandle;
133#[cfg(any(feature = "signing", feature = "encryption"))]
134pub use types::{AccessPolicy, BackendKind, KeyInfo, KeyType, PresenceMode, PresenceOptions};