ffsend_api/pipe/crypto/
mod.rs1#[cfg(feature = "crypto-openssl")]
4use openssl::symm::Mode as OpenSslMode;
5
6#[cfg(feature = "send3")]
7pub mod ece;
8#[cfg(feature = "send2")]
9pub mod gcm;
10mod traits;
11
12#[cfg(feature = "send3")]
14pub use self::ece::{EceCrypt, EceReader, EceWriter};
15#[cfg(feature = "send2")]
16pub use gcm::{GcmCrypt, GcmReader, GcmWriter};
17pub use traits::Crypt;
18
19pub mod prelude {
21 pub use super::Crypt;
22}
23
24#[derive(Debug, Clone, Copy)]
26pub enum CryptMode {
27 Encrypt,
29
30 Decrypt,
32}
33
34#[cfg(feature = "crypto-openssl")]
35impl Into<OpenSslMode> for CryptMode {
36 fn into(self) -> OpenSslMode {
37 match self {
38 CryptMode::Encrypt => OpenSslMode::Encrypt,
39 CryptMode::Decrypt => OpenSslMode::Decrypt,
40 }
41 }
42}