1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
10#![allow(
11 clippy::missing_const_for_fn,
12 clippy::missing_errors_doc,
13 clippy::missing_panics_doc,
14 clippy::module_name_repetitions,
15 clippy::must_use_candidate,
16 clippy::needless_pass_by_value,
17 clippy::option_if_let_else,
18 clippy::redundant_pub_crate,
19 clippy::unnecessary_lazy_evaluations
20)]
21
22pub mod authorization;
23mod bridge;
24pub mod certificate;
25pub mod cms;
26pub mod code;
27pub mod code_signing;
28pub mod error;
29#[cfg(feature = "raw-ffi")]
30#[cfg_attr(docsrs, doc(cfg(feature = "raw-ffi")))]
31pub mod ffi;
32pub mod identity;
33pub mod key;
34pub mod key_agreement;
35pub mod key_derivation;
36pub mod keychain;
37pub mod policy;
38pub mod random;
39pub mod random_bytes;
40pub mod secure_transport;
41pub mod transform;
42pub mod trust;
43
44pub use authorization::{Authorization, AuthorizationOptions};
45pub use certificate::{Certificate, PublicKey};
46pub use cms::Cms;
47pub use code::{Code, SigningInformation, SigningValue, StaticCode, Task};
48pub use error::{OsStatus, Result, SecurityError, StatusError};
49pub use identity::Identity;
50pub use key::{ExternalFormat, ExternalItemType, KeyType, PrivateKey, SignatureAlgorithm};
51pub use key_agreement::{AgreementPrivateKey, AgreementPublicKey};
52pub use key_derivation::{DerivedKey, KeyDerivation};
53pub use keychain::{
54 AccessControl, AccessControlFlags, AccessControlProtection, Keychain, KeychainEntry,
55};
56pub use policy::{Policy, PolicyIdentifier, PolicyName, PolicyProperties, RevocationFlags};
57pub use random_bytes::SecureRandom;
58pub use secure_transport::{ProtocolVersion, SecureTransportContext, SecureTransportState};
59pub use transform::Transform;
60pub use trust::Trust;
61
62pub mod prelude {
64 pub use crate::authorization::{Authorization, AuthorizationOptions};
65 pub use crate::certificate::{Certificate, PublicKey};
66 pub use crate::cms::Cms;
67 pub use crate::code::{Code, SigningInformation, SigningValue, StaticCode, Task};
68 pub use crate::error::{OsStatus, Result, SecurityError, StatusError};
69 pub use crate::identity::Identity;
70 pub use crate::key::{
71 ExternalFormat, ExternalItemType, KeyType, PrivateKey, SignatureAlgorithm,
72 };
73 pub use crate::key_agreement::{AgreementPrivateKey, AgreementPublicKey};
74 pub use crate::key_derivation::{DerivedKey, KeyDerivation};
75 pub use crate::keychain::{
76 AccessControl, AccessControlFlags, AccessControlProtection, Keychain, KeychainEntry,
77 };
78 pub use crate::policy::{
79 Policy, PolicyIdentifier, PolicyName, PolicyProperties, RevocationFlags,
80 };
81 pub use crate::random_bytes::SecureRandom;
82 pub use crate::secure_transport::{
83 ProtocolVersion, SecureTransportContext, SecureTransportState,
84 };
85 pub use crate::transform::Transform;
86 pub use crate::trust::Trust;
87}