GpgFrontend Project A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.

ArchiveFileOperator.h
1
29 #ifndef GPGFRONTEND_ARCHIVEFILEOPERATOR_H
30 #define GPGFRONTEND_ARCHIVEFILEOPERATOR_H
31
32 #include "core/GpgFrontendCore.h"
33 #include "core/function/FileOperator.h"
34
35 namespace GpgFrontend {
36
37 struct ArchiveStruct {
38 struct archive *archive;
39 struct archive_entry *entry;
40 int fd;
41 bool is_open;
42 std::string name;
43 };
44
45 class GPGFRONTEND_CORE_EXPORT ArchiveFileOperator {
46 public:
47 static void ListArchive(const std::filesystem::path &archive_path);
48
49 static void CreateArchive(
50 const std::filesystem::path &base_path,
51 const std::filesystem::path &archive_path,
52 int compress,
53 const std::vector<std::filesystem::path> &files);
54
55 static void ExtractArchive(
56 const std::filesystem::path &archive_path,
57 const std::filesystem::path &base_path);
58 };
59 } // namespace GpgFrontend
60
61 #endif // GPGFRONTEND_ARCHIVEFILEOPERATOR_H
GpgFrontend::FileOperator::ReadFile
static bool ReadFile(const QString &file_name, QByteArray &data)
read file content
Definition: FileOperator.cpp:31
GpgFrontend::ArchiveStruct
Definition: ArchiveFileOperator.h:37
GpgFrontend::RawAPI::aes_256_cbc_decrypt
uint8_t * aes_256_cbc_decrypt(EVP_CIPHER_CTX *e, uint8_t *ciphertext, int *len)
Decrypt *len bytes of ciphertext.
Definition: aes_ssl_cbc.cpp:86
GpgFrontend
Definition: CoreCommonUtil.cpp:29
GpgFrontend::RawAPI
Definition: aes_ssl.h:37
GpgFrontend::RawAPI::aes_256_cbc_encrypt
uint8_t * aes_256_cbc_encrypt(EVP_CIPHER_CTX *e, uint8_t *plaintext, int *len)
Encrypt *len bytes of data All data going in & out is considered binary (uint8_t[])
Definition: aes_ssl_cbc.cpp:58
GpgFrontend::ArchiveFileOperator
Definition: ArchiveFileOperator.h:45
GpgFrontend::RawAPI::aes_256_cbc_init
int aes_256_cbc_init(uint8_t *key_data, int key_data_len, uint8_t *salt, EVP_CIPHER_CTX *e_ctx, EVP_CIPHER_CTX *d_ctx)
Create a 256 bit key and IV using the supplied key_data. salt can be added for taste....
Definition: aes_ssl_cbc.cpp:24