feat: improve gpg utils
This commit is contained in:
parent
c187645fb3
commit
2875648cc4
@ -28,6 +28,7 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include "core/model/DataObject.h"
|
||||||
namespace GpgFrontend {
|
namespace GpgFrontend {
|
||||||
|
|
||||||
class GpgKey; ///< forward declaration
|
class GpgKey; ///< forward declaration
|
||||||
@ -35,7 +36,9 @@ class GpgSubKey;
|
|||||||
class GpgSignature;
|
class GpgSignature;
|
||||||
class GpgTOFUInfo;
|
class GpgTOFUInfo;
|
||||||
|
|
||||||
using GpgError = gpgme_error_t; ///< gpgme error code
|
using GpgError = gpgme_error_t; ///< gpgme error
|
||||||
|
using GpgErrorCode = gpg_err_code_t;
|
||||||
|
using GpgErrorDesc = std::pair<std::string, std::string>;
|
||||||
|
|
||||||
using KeyId = std::string; ///<
|
using KeyId = std::string; ///<
|
||||||
using SubkeyId = std::string; ///<
|
using SubkeyId = std::string; ///<
|
||||||
@ -52,5 +55,7 @@ using GpgKeyLinkList = std::list<GpgKey>; ///<
|
|||||||
using KeyLinkListPtr = std::unique_ptr<GpgKeyLinkList>; ///<
|
using KeyLinkListPtr = std::unique_ptr<GpgKeyLinkList>; ///<
|
||||||
using KeyPtr = std::unique_ptr<GpgKey>; ///<
|
using KeyPtr = std::unique_ptr<GpgKey>; ///<
|
||||||
using KeyPtrArgsList = const std::initializer_list<KeyPtr>; ///<
|
using KeyPtrArgsList = const std::initializer_list<KeyPtr>; ///<
|
||||||
///
|
|
||||||
|
using GpgOperaRunnable = std::function<GpgError(DataObjectPtr)>;
|
||||||
|
using GpgOperationCallback = std::function<void(GpgError, DataObjectPtr)>;
|
||||||
} // namespace GpgFrontend
|
} // namespace GpgFrontend
|
@ -53,7 +53,7 @@ static inline auto Trim(std::string& s) -> std::string {
|
|||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto CheckGpgError(gpgme_error_t err) -> gpgme_error_t {
|
auto CheckGpgError(GpgError err) -> GpgError {
|
||||||
if (gpg_err_code(err) != GPG_ERR_NO_ERROR) {
|
if (gpg_err_code(err) != GPG_ERR_NO_ERROR) {
|
||||||
SPDLOG_ERROR("[error: {}] source: {} description: {}", gpg_err_code(err),
|
SPDLOG_ERROR("[error: {}] source: {} description: {}", gpg_err_code(err),
|
||||||
gpgme_strsource(err), gpgme_strerror(err));
|
gpgme_strsource(err), gpgme_strerror(err));
|
||||||
@ -61,8 +61,7 @@ auto CheckGpgError(gpgme_error_t err) -> gpgme_error_t {
|
|||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto CheckGpgError2ErrCode(gpgme_error_t err, gpgme_error_t predict)
|
auto CheckGpgError2ErrCode(GpgError err, GpgError predict) -> GpgErrorCode {
|
||||||
-> gpg_err_code_t {
|
|
||||||
auto err_code = gpg_err_code(err);
|
auto err_code = gpg_err_code(err);
|
||||||
if (err_code != gpg_err_code(predict)) {
|
if (err_code != gpg_err_code(predict)) {
|
||||||
if (err_code == GPG_ERR_NO_ERROR)
|
if (err_code == GPG_ERR_NO_ERROR)
|
||||||
@ -77,8 +76,11 @@ auto CheckGpgError2ErrCode(gpgme_error_t err, gpgme_error_t predict)
|
|||||||
return err_code;
|
return err_code;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto CheckGpgError(gpgme_error_t err, const std::string& comment)
|
auto DescribeGpgErrCode(GpgError err) -> GpgErrorDesc {
|
||||||
-> gpgme_error_t {
|
return {gpgme_strsource(err), gpgme_strerror(err)};
|
||||||
|
}
|
||||||
|
|
||||||
|
auto CheckGpgError(GpgError err, const std::string& /*comment*/) -> GpgError {
|
||||||
if (gpg_err_code(err) != GPG_ERR_NO_ERROR) {
|
if (gpg_err_code(err) != GPG_ERR_NO_ERROR) {
|
||||||
SPDLOG_WARN("[Error {}] Source: {} description: {} predict: {}",
|
SPDLOG_WARN("[Error {}] Source: {} description: {} predict: {}",
|
||||||
gpg_err_code(err), gpgme_strsource(err), gpgme_strerror(err),
|
gpg_err_code(err), gpgme_strsource(err), gpgme_strerror(err),
|
||||||
|
@ -121,6 +121,14 @@ auto GPGFRONTEND_CORE_EXPORT CheckGpgError2ErrCode(
|
|||||||
gpgme_error_t err, gpgme_error_t predict = GPG_ERR_NO_ERROR)
|
gpgme_error_t err, gpgme_error_t predict = GPG_ERR_NO_ERROR)
|
||||||
-> gpg_err_code_t;
|
-> gpg_err_code_t;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief
|
||||||
|
*
|
||||||
|
* @param err
|
||||||
|
* @return GpgErrorDesc
|
||||||
|
*/
|
||||||
|
auto GPGFRONTEND_CORE_EXPORT DescribeGpgErrCode(GpgError err) -> GpgErrorDesc;
|
||||||
|
|
||||||
// Check
|
// Check
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user