shadow_crypt_shell/encryption/
file.rs1use std::path::PathBuf;
2
3use shadow_crypt_core::profile::SecurityProfile;
4
5use crate::memory::SecureString;
6
7#[derive(Debug, Clone, PartialEq, Eq)]
8pub struct EncryptionInputFile {
9 pub path: PathBuf,
10 pub filename: String,
11 pub size: u64,
12}
13
14pub struct EncryptionInput {
15 pub files: Vec<EncryptionInputFile>,
16 pub password: SecureString,
17 pub security_profile: SecurityProfile,
18 pub output_dir: PathBuf,
19}
20impl EncryptionInput {
21 pub fn new(
22 files: Vec<EncryptionInputFile>,
23 password: SecureString,
24 security_profile: SecurityProfile,
25 output_dir: PathBuf,
26 ) -> Self {
27 Self {
28 files,
29 password,
30 security_profile,
31 output_dir,
32 }
33 }
34}
35
36pub struct EncryptionOutputFile {
37 pub path: PathBuf,
38 pub filename: String,
39}