GpgFrontend Project
A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.
GpgFrontend::GpgKeyOpera Class Reference
Inheritance diagram for GpgFrontend::GpgKeyOpera:
Inheritance graph
Collaboration diagram for GpgFrontend::GpgKeyOpera:
Collaboration graph

Public Member Functions

 GpgKeyOpera (int channel=SingletonFunctionObject::GetDefaultChannel())
 Construct a new Gpg Key Opera object. More...
 
void DeleteKeys (KeyIdArgsListPtr key_ids)
 
void DeleteKey (const KeyId &key_id)
 
GpgError SetExpire (const GpgKey &key, const SubkeyId &subkey_fpr, std::unique_ptr< boost::posix_time::ptime > &expires)
 Set the Expire object. More...
 
void GenerateRevokeCert (const GpgKey &key, const std::string &output_file_name)
 
GpgFrontend::GpgError ModifyPassword (const GpgKey &key)
 
GpgFrontend::GpgError ModifyTOFUPolicy (const GpgKey &key, gpgme_tofu_policy_t tofu_policy)
 
GpgFrontend::GpgError GenerateKey (const std::unique_ptr< GenKeyInfo > &params, GpgGenKeyResult &result)
 
GpgFrontend::GpgError GenerateSubkey (const GpgKey &key, const std::unique_ptr< GenKeyInfo > &params)
 
- Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgKeyOpera >
 SingletonFunctionObject (const SingletonFunctionObject< GpgKeyOpera > &)=delete
 prohibit copy
 
 SingletonFunctionObject (GpgKeyOpera &&)=delete
 Construct a new Singleton Function Object object.
 
 SingletonFunctionObject (const GpgKeyOpera &)=delete
 Construct a new Singleton Function Object object.
 
SingletonFunctionObjectoperator= (const SingletonFunctionObject< GpgKeyOpera > &)=delete
 prohibit copy More...
 
void operator= (const GpgKeyOpera &)=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...
 

Private Attributes

GpgContextctx_
 

Additional Inherited Members

- Static Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgKeyOpera >
static GpgKeyOperaGetInstance (int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
 Get the Instance object. More...
 
static GpgKeyOperaCreateInstance (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...
 
- Protected Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgKeyOpera >
 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.
 

Constructor & Destructor Documentation

◆ GpgKeyOpera()

GpgFrontend::GpgKeyOpera::GpgKeyOpera ( int  channel = SingletonFunctionObject::GetDefaultChannel())
explicit

Construct a new Gpg Key Opera object.

Parameters
channelCopyright (C) 2021 Saturneric

This file is part of GpgFrontend.

GpgFrontend is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

GpgFrontend is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with GpgFrontend. If not, see https://www.gnu.org/licenses/.

The initial version of the source code is inherited from the gpg4usb project, which is under GPL-3.0-or-later.

All the source code of GpgFrontend was modified and released by Saturnericeric@.nosp@m.bktu.nosp@m.s.com starting on May 12, 2021.

SPDX-License-Identifier: GPL-3.0-or-later

Member Function Documentation

◆ DeleteKey()

void GpgFrontend::GpgKeyOpera::DeleteKey ( const KeyId &  key_id)
Parameters
key_id

◆ DeleteKeys()

void GpgFrontend::GpgKeyOpera::DeleteKeys ( GpgFrontend::KeyIdArgsListPtr  key_ids)

◆ GenerateKey()

GpgFrontend::GpgError GpgFrontend::GpgKeyOpera::GenerateKey ( const std::unique_ptr< GenKeyInfo > &  params,
GpgGenKeyResult &  result 
)
Parameters
params
result
Returns
GpgFrontend::GpgError

Generate a new key pair

Parameters
paramskey generation args
Returns
error information

References GpgFrontend::_new_result(), GpgFrontend::check_gpg_error(), and GpgFrontend::check_gpg_error_2_err_code().

Referenced by GpgFrontend::UI::KeyGenDialog::slot_key_gen_accept().

◆ GenerateRevokeCert()

void GpgFrontend::GpgKeyOpera::GenerateRevokeCert ( const GpgKey key,
const std::string &  output_file_path 
)
Parameters
key
output_file_nameGenerate revoke cert of a key pair
keytarget key pair
outputFileNameout file name(path)
Returns
the process doing this job

References GpgFrontend::GpgCommandExecutor::Execute(), and GpgFrontend::SingletonFunctionObject< GpgCommandExecutor >::GetInstance().

◆ GenerateSubkey()

GpgFrontend::GpgError GpgFrontend::GpgKeyOpera::GenerateSubkey ( const GpgKey key,
const std::unique_ptr< GenKeyInfo > &  params 
)
Parameters
key
params
Returns
GpgFrontend::GpgError

Generate a new subkey of a certain key pair

Parameters
keytarget key pair
paramsopera args
Returns
error info

References GpgFrontend::check_gpg_error(), and GpgFrontend::GpgKey::GetId().

Referenced by GpgFrontend::UI::SubkeyGenerateDialog::slot_key_gen_accept().

◆ ModifyPassword()

GpgFrontend::GpgError GpgFrontend::GpgKeyOpera::ModifyPassword ( const GpgKey key)
Parameters
key
Returns
GpgFrontend::GpgError

References GpgFrontend::check_gpg_error().

◆ ModifyTOFUPolicy()

GpgFrontend::GpgError GpgFrontend::GpgKeyOpera::ModifyTOFUPolicy ( const GpgKey key,
gpgme_tofu_policy_t  tofu_policy 
)
Parameters
key
tofu_policy
Returns
GpgFrontend::GpgError

References GpgFrontend::check_gpg_error().

◆ SetExpire()

GpgFrontend::GpgError GpgFrontend::GpgKeyOpera::SetExpire ( const GpgKey key,
const SubkeyId &  subkey_fpr,
std::unique_ptr< boost::posix_time::ptime > &  expires 
)

Set the Expire object.

Parameters
key
subkey_fpr
expires
Returns
GpgError

Set the expire date and time of a key pair(actually the primary key) or subkey

Parameters
keytarget key pair
subkeynull if primary key
expiresdate and time
Returns
if successful

References GpgFrontend::GpgKey::GetFingerprint(), and GpgFrontend::GpgKey::GetId().

Member Data Documentation

◆ ctx_

GpgContext& GpgFrontend::GpgKeyOpera::ctx_
private
Initial value:
=
static GpgContext & GetInstance(int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
Get the Instance object.
Definition: GpgFunctionObject.h:172
int GetChannel() const
Get the Channel object.
Definition: GpgFunctionObject.h:258

The documentation for this class was generated from the following files: