GpgFileOpera.h
#ifndef GPGFRONTEND_GPGFILEOPERA_H
#define GPGFRONTEND_GPGFILEOPERA_H
#include "core/GpgConstants.h"
#include "core/GpgContext.h"
#include "core/GpgModel.h"
namespace GpgFrontend {
class GPGFRONTEND_CORE_EXPORT GpgFileOpera
: public SingletonFunctionObject<GpgFileOpera> {
public:
explicit GpgFileOpera(
int channel = SingletonFunctionObject::GetDefaultChannel());
static unsigned int EncryptFile(KeyListPtr keys, const std::string& in_path,
const std::string& out_path,
GpgEncrResult& result,
int _channel = GPGFRONTEND_DEFAULT_CHANNEL);
static unsigned int EncryptFileSymmetric(
const std::string& in_path, const std::string& out_path,
GpgEncrResult& result, int _channel = GPGFRONTEND_DEFAULT_CHANNEL);
static GpgError DecryptFile(const std::string& in_path,
const std::string& out_path,
GpgDecrResult& result);
static GpgError SignFile(KeyListPtr keys, const std::string& in_path,
const std::string& out_path, GpgSignResult& result,
int _channel = GPGFRONTEND_DEFAULT_CHANNEL);
static GpgError VerifyFile(const std::string& data_path,
const std::string& sign_path,
GpgVerifyResult& result,
int _channel = GPGFRONTEND_DEFAULT_CHANNEL);
static GpgError EncryptSignFile(KeyListPtr keys, KeyListPtr signer_keys,
const std::string& in_path,
const std::string& out_path,
GpgEncrResult& encr_res,
GpgSignResult& sign_res,
int _channel = GPGFRONTEND_DEFAULT_CHANNEL);
static GpgError DecryptVerifyFile(const std::string& in_path,
const std::string& out_path,
GpgDecrResult& decr_res,
GpgVerifyResult& verify_res);
};
} // namespace GpgFrontend
#endif // GPGFRONTEND_GPGFILEOPERA_H
GpgFrontend::GpgFileOpera::SignFile
static GpgError SignFile(KeyListPtr keys, const std::string &in_path, const std::string &out_path, GpgSignResult &result, int _channel=GPGFRONTEND_DEFAULT_CHANNEL)
Definition: GpgFileOpera.cpp:103
GpgFrontend::SingletonFunctionObject
Definition: GpgFunctionObject.h:148
GpgFrontend::FileOperator::WriteFileStd
static bool WriteFileStd(const std::filesystem::path &file_name, const std::string &data)
write file content using std struct
Definition: FileOperator.cpp:69
GpgFrontend::GpgBasicOperator::Decrypt
gpgme_error_t Decrypt(BypeArrayRef in_buffer, ByteArrayPtr &out_buffer, GpgDecrResult &result)
Call the interface provided by gpgme for decryption operation.
Definition: GpgBasicOperator.cpp:64
GpgFrontend
Definition: CoreCommonUtil.cpp:29
GpgFrontend::SingletonFunctionObject< GpgBasicOperator >::GetInstance
static GpgBasicOperator & GetInstance(int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
Get the Instance object.
Definition: GpgFunctionObject.h:170
GpgFrontend::GpgBasicOperator::DecryptVerify
gpgme_error_t DecryptVerify(BypeArrayRef in_buffer, ByteArrayPtr &out_buffer, GpgDecrResult &decrypt_result, GpgVerifyResult &verify_result)
Call the interface provided by gpgme to perform decryption and verification operations at the same ti...
Definition: GpgBasicOperator.cpp:123
GpgFrontend::GpgFileOpera::EncryptFile
static unsigned int EncryptFile(KeyListPtr keys, const std::string &in_path, const std::string &out_path, GpgEncrResult &result, int _channel=GPGFRONTEND_DEFAULT_CHANNEL)
Encrypted file.
Definition: GpgFileOpera.cpp:40
GpgFrontend::GpgFileOpera
Definition: GpgFileOpera.h:43
GpgFrontend::GpgBasicOperator::Verify
gpgme_error_t Verify(BypeArrayRef in_buffer, ByteArrayPtr &sig_buffer, GpgVerifyResult &result) const
Call the interface provided by gpgme for verification operation.
Definition: GpgBasicOperator.cpp:81
GpgFrontend::GpgBasicOperator::Sign
gpg_error_t Sign(KeyListPtr signers, BypeArrayRef in_buffer, ByteArrayPtr &out_buffer, gpgme_sig_mode_t mode, GpgSignResult &result)
Call the interface provided by gpgme for signing operation.
Definition: GpgBasicOperator.cpp:101
GpgFrontend::GpgBasicOperator::EncryptSymmetric
gpg_error_t EncryptSymmetric(BypeArrayRef in_buffer, ByteArrayPtr &out_buffer, GpgEncrResult &result)
Call the interface provided by GPGME to symmetrical encryption.
Definition: GpgBasicOperator.cpp:203
GpgFrontend::GpgBasicOperator::EncryptSign
gpgme_error_t EncryptSign(KeyListPtr keys, KeyListPtr signers, BypeArrayRef in_buffer, ByteArrayPtr &out_buffer, GpgEncrResult &encr_result, GpgSignResult &sign_result)
Call the interface provided by gpgme to perform encryption and signature operations at the same time.
Definition: GpgBasicOperator.cpp:144
GpgFrontend::GpgFileOpera::GpgFileOpera
GpgFileOpera(int channel=SingletonFunctionObject::GetDefaultChannel())
Definition: GpgFileOpera.cpp:37
GpgFrontend::SingletonFunctionObject::GetDefaultChannel
static int GetDefaultChannel()
Get the Default Channel object.
Definition: GpgFunctionObject.h:232
GpgFrontend::FileOperator::ReadFileStd
static bool ReadFileStd(const std::filesystem::path &file_name, std::string &data)
read file content using std struct
Definition: FileOperator.cpp:55
GpgFrontend::check_gpg_error_2_err_code
GPGFRONTEND_CORE_EXPORT gpg_err_code_t check_gpg_error_2_err_code(gpgme_error_t err, gpgme_error_t predict=GPG_ERR_NO_ERROR)
Definition: GpgConstants.cpp:63
GpgFrontend::GpgFileOpera::DecryptVerifyFile
static GpgError DecryptVerifyFile(const std::string &in_path, const std::string &out_path, GpgDecrResult &decr_res, GpgVerifyResult &verify_res)
Definition: GpgFileOpera.cpp:197
GpgFrontend::GpgFileOpera::VerifyFile
static GpgError VerifyFile(const std::string &data_path, const std::string &sign_path, GpgVerifyResult &result, int _channel=GPGFRONTEND_DEFAULT_CHANNEL)
Definition: GpgFileOpera.cpp:135
GpgFrontend::GpgFileOpera::EncryptSignFile
static GpgError EncryptSignFile(KeyListPtr keys, KeyListPtr signer_keys, const std::string &in_path, const std::string &out_path, GpgEncrResult &encr_res, GpgSignResult &sign_res, int _channel=GPGFRONTEND_DEFAULT_CHANNEL)
Definition: GpgFileOpera.cpp:165
GpgFrontend::GpgFileOpera::DecryptFile
static GpgError DecryptFile(const std::string &in_path, const std::string &out_path, GpgDecrResult &result)
Definition: GpgFileOpera.cpp:71
GpgFrontend::GpgFileOpera::EncryptFileSymmetric
static unsigned int EncryptFileSymmetric(const std::string &in_path, const std::string &out_path, GpgEncrResult &result, int _channel=GPGFRONTEND_DEFAULT_CHANNEL)
运用对称加密算法加密文件
Definition: GpgFileOpera.cpp:226
GpgFrontend::GpgBasicOperator::Encrypt
gpg_error_t Encrypt(KeyListPtr keys, BypeArrayRef in_buffer, ByteArrayPtr &out_buffer, GpgEncrResult &result)
Call the interface provided by gpgme for encryption operation.
Definition: GpgBasicOperator.cpp:38