aboutsummaryrefslogtreecommitdiffstats
path: root/src/gpg/function/BasicOperator.cpp
diff options
context:
space:
mode:
authorSaturn&Eric <[email protected]>2021-12-13 14:50:57 +0000
committerGitHub <[email protected]>2021-12-13 14:50:57 +0000
commitee4752ed756e3114f740efddf63ce987ac154d03 (patch)
tree27653d56c88849c99c70b8fc7223f8ae98090f0b /src/gpg/function/BasicOperator.cpp
parentUpdate CI for Release and Debug. (diff)
parentAdded & Fixed (diff)
downloadGpgFrontend-ee4752ed756e3114f740efddf63ce987ac154d03.tar.gz
GpgFrontend-ee4752ed756e3114f740efddf63ce987ac154d03.zip
Merge pull request #31 from saturneric/develop-ui
v2.0.2-beta.1
Diffstat (limited to 'src/gpg/function/BasicOperator.cpp')
-rw-r--r--src/gpg/function/BasicOperator.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/gpg/function/BasicOperator.cpp b/src/gpg/function/BasicOperator.cpp
index 912119e2..5f6ffb85 100644
--- a/src/gpg/function/BasicOperator.cpp
+++ b/src/gpg/function/BasicOperator.cpp
@@ -76,13 +76,15 @@ GpgFrontend::GpgError GpgFrontend::BasicOperator::Verify(
GpgVerifyResult& result) const {
gpgme_error_t err;
+ LOG(INFO) << "in buffer size" << in_buffer.size();
GpgData data_in(in_buffer.data(), in_buffer.size());
+ GpgData data_out;
if (sig_buffer != nullptr) {
GpgData sig_data(sig_buffer->data(), sig_buffer->size());
err = check_gpg_error(gpgme_op_verify(ctx, sig_data, data_in, nullptr));
} else
- err = check_gpg_error(gpgme_op_verify(ctx, data_in, nullptr, data_in));
+ err = check_gpg_error(gpgme_op_verify(ctx, data_in, nullptr, data_out));
auto temp_result = GpgVerifyResult(gpgme_op_verify_result(ctx));
std::swap(result, temp_result);
@@ -204,3 +206,19 @@ GpgFrontend::BasicOperator::GetSigners() {
}
return signers;
}
+gpg_error_t GpgFrontend::BasicOperator::EncryptSymmetric(
+ GpgFrontend::ByteArray& in_buffer, GpgFrontend::ByteArrayPtr& out_buffer,
+ GpgFrontend::GpgEncrResult& result) {
+ GpgData data_in(in_buffer.data(), in_buffer.size()), data_out;
+
+ gpgme_error_t err = check_gpg_error(gpgme_op_encrypt(
+ ctx, nullptr, GPGME_ENCRYPT_SYMMETRIC, data_in, data_out));
+
+ auto temp_data_out = data_out.Read2Buffer();
+ std::swap(temp_data_out, out_buffer);
+
+ auto temp_result = GpgEncrResult(gpgme_op_encrypt_result(ctx));
+ std::swap(result, temp_result);
+
+ return err;
+}