GpgFrontend Project
A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.
|
Classes | |
struct | _ctx_ref_deleter |
Signals | |
void | SignalNeedUserInputPassphrase () |
Public Member Functions | |
GpgContext (const GpgContextInitArgs &args={}) | |
Construct a new Gpg Context object. More... | |
GpgContext (int channel) | |
Construct a new Gpg Context object. More... | |
~GpgContext () override=default | |
Destroy the Gpg Context object. | |
bool | good () const |
const GpgInfo & | GetInfo (bool refresh=false) |
Get the Info object. More... | |
operator gpgme_ctx_t () const | |
void | SetPassphraseCb (gpgme_passphrase_cb_t func) const |
Set the Passphrase Cb object. More... | |
Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgContext > | |
SingletonFunctionObject (const SingletonFunctionObject< GpgContext > &)=delete | |
prohibit copy | |
SingletonFunctionObject (GpgContext &&)=delete | |
Construct a new Singleton Function Object object. | |
SingletonFunctionObject (const GpgContext &)=delete | |
Construct a new Singleton Function Object object. | |
SingletonFunctionObject & | operator= (const SingletonFunctionObject< GpgContext > &)=delete |
prohibit copy More... | |
void | operator= (const GpgContext &)=delete |
int | GetChannel () const |
Get the Channel object. More... | |
Public Member Functions inherited from GpgFrontend::ChannelObject | |
ChannelObject () noexcept | |
Construct a new Default Channel Object object. | |
ChannelObject (int channel) | |
Construct a new Channel Object object. More... | |
int | GetChannel () const |
Get the Channel object. More... | |
void | SetChannel (int channel) |
Set the Channel object. More... | |
Static Public Member Functions | |
static gpgme_error_t | test_passphrase_cb (void *opaque, const char *uid_hint, const char *passphrase_info, int last_was_bad, int fd) |
static gpgme_error_t | custom_passphrase_cb (void *opaque, const char *uid_hint, const char *passphrase_info, int last_was_bad, int fd) |
static gpgme_error_t | test_status_cb (void *hook, const char *keyword, const char *args) |
Static Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgContext > | |
static GpgContext & | GetInstance (int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL) |
Get the Instance object. More... | |
static GpgContext & | CreateInstance (int channel, std::function< std::unique_ptr< ChannelObject >(void)> factory) |
Create a Instance object. More... | |
static void | ReleaseChannel (int channel) |
static int | GetDefaultChannel () |
Get the Default Channel object. More... | |
static std::vector< int > | GetAllChannelId () |
Get all the channel ids. More... | |
Static Public Member Functions inherited from GpgFrontend::ChannelObject | |
static int | GetDefaultChannel () |
Get the Default Channel object. More... | |
Private Types | |
using | CtxRefHandler = std::unique_ptr< struct gpgme_context, _ctx_ref_deleter > |
Private Member Functions | |
void | post_init_ctx () |
std::string | need_user_input_passphrase () |
std::optional< std::string > | check_binary_chacksum (std::filesystem::path) |
Construct a new std::check component existence object. | |
Private Attributes | |
GpgInfo | info_ {} |
GpgContextInitArgs | args_ {} |
bool | extend_info_loaded_ = false |
std::shared_mutex | preload_lock_ {} |
CtxRefHandler | _ctx_ref = nullptr |
bool | good_ = true |
Additional Inherited Members | |
Protected Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgContext > | |
SingletonFunctionObject ()=default | |
Construct a new Singleton Function Object object. | |
SingletonFunctionObject (int channel) | |
Construct a new Singleton Function Object object. More... | |
virtual | ~SingletonFunctionObject ()=default |
Destroy the Singleton Function Object object. | |
|
explicit |
Construct a new Gpg Context object.
args | Constructor Set up gpgme-context, set paths to app-run path |
References GpgFrontend::GpgInfo::AppPath, GpgFrontend::GpgInfo::AssuanPath, GpgFrontend::check_gpg_error(), GpgFrontend::check_gpg_error_2_err_code(), GpgFrontend::GpgInfo::CMSPath, GpgFrontend::GpgInfo::DatabasePath, GpgFrontend::SingletonFunctionObject< TaskRunnerGetter >::GetInstance(), GpgFrontend::GpgInfo::GnupgVersion, GpgFrontend::GpgInfo::GpgConfPath, and post_init_ctx().
|
explicit |
Construct a new Gpg Context object.
channel |
|
static |
opaque | |
uid_hint | |
passphrase_info | |
last_was_bad | |
fd |
References GpgFrontend::CoreCommonUtil::GetInstance(), GpgFrontend::SingletonFunctionObject< GpgContext >::GetInstance(), GpgFrontend::CoreCommonUtil::GetTempCacheValue(), and need_user_input_passphrase().
Referenced by post_init_ctx().
const GpgInfo & GpgFrontend::GpgContext::GetInfo | ( | bool | refresh = false | ) |
Get the Info object.
References check_binary_chacksum(), GpgFrontend::GpgInfo::DirmngrPath, GpgFrontend::GpgCommandExecutor::Execute(), GpgFrontend::SingletonFunctionObject< GpgCommandExecutor >::GetInstance(), GpgFrontend::GpgInfo::GnuPGHomePath, GpgFrontend::GpgInfo::GnupgVersion, GpgFrontend::GpgInfo::GpgAgentPath, GpgFrontend::GpgInfo::GpgConfPath, and GpgFrontend::GpgInfo::KeyboxdPath.
Referenced by post_init_ctx(), and GpgFrontend::UI::CommonUtils::SlotExecuteGpgCommand().
bool GpgFrontend::GpgContext::good | ( | ) | const |
|
private |
References GpgFrontend::CoreSignalStation::GetInstance().
Referenced by custom_passphrase_cb().
|
inline |
|
private |
Setting the output type must be done at the beginning
think this means ascii-armor --> ?
Setting the output type must be done at the beginning
think this means ascii-armor --> ?
References GpgFrontend::GpgInfo::AppPath, GpgFrontend::check_gpg_error_2_err_code(), custom_passphrase_cb(), GpgFrontend::GpgInfo::DatabasePath, GetInfo(), GpgFrontend::CoreSignalStation::GetInstance(), GpgFrontend::GpgInfo::GnupgVersion, SetPassphraseCb(), test_passphrase_cb(), and test_status_cb().
Referenced by GpgContext().
void GpgFrontend::GpgContext::SetPassphraseCb | ( | gpgme_passphrase_cb_t | func | ) | const |
Set the Passphrase Cb object.
func |
References GpgFrontend::GpgInfo::GnupgVersion.
Referenced by post_init_ctx().
|
static |
opaque | |
uid_hint | |
passphrase_info | |
last_was_bad | |
fd |
Referenced by post_init_ctx().
|
static |