Skip to main content

keyroost_import/
lib.rs

1//! Import helpers for Molto2 programming: otpauth:// URI parsing and
2//! (with the `bulk` feature) Aegis / 2FAS plaintext JSON parsers.
3//! The `encrypted` feature additionally pulls in scrypt + AES-GCM for
4//! decrypting password-protected Aegis vaults.
5
6pub mod otpauth;
7
8pub use otpauth::{parse as parse_otpauth, OtpAuth, OtpAuthError};
9
10#[cfg(feature = "bulk")]
11pub mod bulk;
12#[cfg(feature = "bulk")]
13pub use bulk::{
14    aegis, parse_any as parse_bulk_any, parse_otpauth_list, twofas, BulkEntry, BulkError,
15};
16
17/// Google Authenticator `otpauth-migration://` export parsing. Lives under
18/// the `bulk` feature because its output is `BulkEntry` batches; the
19/// protobuf wire reader is vendored (~60 lines), no new dependencies.
20#[cfg(feature = "bulk")]
21pub mod migration;
22
23#[cfg(feature = "encrypted")]
24mod encrypted;