GpgFrontend Project A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.

Classes | Public Member Functions | Private Types | Static Private Member Functions | Private Attributes | List of all members
GpgFrontend::GpgKeyManager Class Reference
Inheritance diagram for GpgFrontend::GpgKeyManager:
Collaboration diagram for GpgFrontend::GpgKeyManager:

## Classes
struct | AutomatonHandelStruct

## Public Member Functions
| GpgKeyManager (int channel=SingletonFunctionObject::GetDefaultChannel())
| Construct a new Gpg Key Manager object. More...
bool | SignKey (const GpgKey &target, KeyArgsList &keys, const std::string &uid, const std::unique_ptr< boost::posix_time::ptime > &expires)
| Sign a key pair(actually a certain uid) More...
bool | RevSign (const GpgFrontend::GpgKey &key, const GpgFrontend::SignIdArgsListPtr &signature_id)
bool | SetExpire (const GpgKey &key, std::unique_ptr< GpgSubKey > &subkey, std::unique_ptr< boost::posix_time::ptime > &expires)
| Set the Expire object. More...
bool | SetOwnerTrustLevel (const GpgKey &key, int trust_level)
Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgKeyManager >
| SingletonFunctionObject (const SingletonFunctionObject< GpgKeyManager > &)=delete
| prohibit copy
| SingletonFunctionObject (GpgKeyManager &&)=delete
| Construct a new Singleton Function Object object.
| SingletonFunctionObject (const GpgKeyManager &)=delete
| Construct a new Singleton Function Object object.
SingletonFunctionObject & | operator= (const SingletonFunctionObject< GpgKeyManager > &)=delete
| prohibit copy More...
void | operator= (const GpgKeyManager &)=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 Types
using | Command = std::string
using | AutomatonState = enum { AS_START, AS_COMMAND, AS_VALUE, AS_REALLY_ULTIMATE, AS_SAVE, AS_ERROR, AS_QUIT, }
using | AutomatonActionHandler = std::function< Command(AutomatonHandelStruct &, AutomatonState)>
using | AutomatonNextStateHandler = std::function< AutomatonState(AutomatonState, std::string, std::string)>

## Static Private Member Functions
static gpgme_error_t | interactor_cb_fnc (void *handle, const char *status, const char *args, int fd)

## Private Attributes
GpgContext & | ctx_

## Additional Inherited Members
Static Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgKeyManager >
static GpgKeyManager & | GetInstance (int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
| Get the Instance object. More...
static GpgKeyManager & | 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...
Protected Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgKeyManager >
| 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

## ◆ GpgKeyManager()

GpgFrontend::GpgKeyManager::GpgKeyManager | ( | int | channel = `SingletonFunctionObject::GetDefaultChannel()` | ) |
| explicit

Construct a new Gpg Key Manager object.

Parameters

  channel | Copyright (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

## ◆ RevSign()

bool GpgFrontend::GpgKeyManager::RevSign | ( | const GpgFrontend::GpgKey & | key,
|  | const GpgFrontend::SignIdArgsListPtr & | signature_id
| ) |  |

Parameters

  key |
  signature_id |

Returns
  true
  false

References GpgFrontend::check_gpg_error(), GpgFrontend::check_gpg_error_2_err_code(), and GpgFrontend::SingletonFunctionObject< GpgKeyGetter >::GetInstance().

## ◆ SetExpire()

bool GpgFrontend::GpgKeyManager::SetExpire | ( | const GpgKey & | key,
|  | std::unique_ptr< GpgSubKey > & | subkey,
|  | std::unique_ptr< boost::posix_time::ptime > & | expires
| ) |  |

Set the Expire object.

Parameters

  key |
  subkey |
  expires |

Returns
  true
  false

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

## ◆ SetOwnerTrustLevel()

bool GpgFrontend::GpgKeyManager::SetOwnerTrustLevel | ( | const GpgKey & | key,
|  | int | trust_level
| ) |  |

Returns

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

## ◆ SignKey()

bool GpgFrontend::GpgKeyManager::SignKey | ( | const GpgKey & | target,
|  | GpgFrontend::KeyArgsList & | keys,
|  | const std::string & | uid,
|  | const std::unique_ptr< boost::posix_time::ptime > & | expires
| ) |  |

Sign a key pair(actually a certain uid)

Parameters

  target | target key pair
  uid | target
  expires | expire date and time of the signature

Returns
  if successful

References GpgFrontend::check_gpg_error(), GpgFrontend::check_gpg_error_2_err_code(), GpgFrontend::SingletonFunctionObject< GpgBasicOperator >::GetInstance(), and GpgFrontend::GpgBasicOperator::SetSigners().

## Member Data Documentation

## ◆ ctx_

GpgContext& GpgFrontend::GpgKeyManager::ctx_
| private

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

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

- src/core/function/gpg/GpgKeyManager.h
- src/core/function/gpg/GpgKeyManager.cpp