pas_external/pas_port/mod.rs
1//! PAS network-boundary port and deep refresh core.
2//!
3//! See `0context/STANDARDS_SESSION_LIVENESS.md` for the consumer
4//! contract the port encodes.
5//!
6//! Module structure:
7//!
8//! - [`PasAuthPort`] / [`PasFailure`] — port + failure vocabulary, available
9//! under the `oauth` feature.
10//! - [`pas_refresh`] / [`PasRefreshOutcome`] / [`CipherFailure`] — the
11//! decrypt-and-classify deep core, gated under `session-liveness` because
12//! it depends on [`TokenCipher`](crate::session_liveness::TokenCipher).
13
14mod port;
15#[cfg(feature = "session-liveness")]
16mod core;
17#[cfg(any(test, feature = "test-support"))]
18mod memory;
19
20pub use port::{PasAuthPort, PasFailure};
21#[cfg(feature = "session-liveness")]
22pub use core::{CipherFailure, PasRefreshOutcome, pas_refresh};
23#[cfg(any(test, feature = "test-support"))]
24pub use memory::MemoryPasAuth;