12 #ifndef ZYPP_PUBLICKEY_H
13 #define ZYPP_PUBLICKEY_H
21 #include <zypp/base/Iterable.h>
22 #include <zypp/base/PtrTypes.h>
23 #include <zypp/base/Exception.h>
25 #include <zypp/Pathname.h>
27 #include <zypp/Date.h>
87 explicit operator bool()
const;
91 std::string
id()
const;
148 explicit operator bool()
const;
152 std::string
id()
const;
155 std::string
name()
const;
226 bool providesKey(
const std::string & id_r )
const;
232 {
return id_r.size() >= 16; }
270 {
return !( lhs == rhs ); }
325 std::string
id()
const;
326 std::string
name()
const;
365 const std::list<PublicKeyData> &
hiddenKeys()
const;
376 bool operator==(
const std::string & sid )
const;
Exception thrown when the supplied key is not a valid gpg key.
BadKeyException(const std::string &msg_r, const Pathname &keyfile=Pathname())
Ctor taking message.
virtual ~BadKeyException()
Dtor.
BadKeyException()
Ctor taking message.
Store and operate on date (time_t).
Edition represents [epoch:]version[-release]
Base class for Exception.
Class representing one GPG Public Keys data.
Date created() const
Creation / last modification date (latest selfsig).
bool expired() const
Whether the key has expired.
std::string name() const
Key name.
Iterable< SubkeyIterator > subkeys() const
Iterate any subkeys.
int daysToLive() const
Number of days (24h) until the key expires (or since it exired).
bool operator!=(const PublicKeyData &lhs, const PublicKeyData &rhs)
NotEqual.
std::string rpmName() const
Gpg-pubkey name as computed by rpm.
bool hasSubkeys() const
Whether subkeys is not empty.
PublicKeyData()
Default constructed: empty data.
Date expires() const
Expiry date, or Date() if the key never expires.
std::string algoName() const
Key algorithm string like RSA 2048
static bool isSafeKeyId(const std::string &id_r)
Whether this is a long id (64bit/16byte) or even better a fingerprint.
RWCOW_pointer< Impl > _pimpl
const PublicSubkeyData * SubkeyIterator
bool providesKey(const std::string &id_r) const
Whether id_r is the id or fingerprint of the primary key or of a subkey.
std::string id() const
Key ID.
std::string fingerprint() const
Key fingerprint.
std::string gpgPubkeyRelease() const
Gpg-pubkey release as computed by rpm (hexencoded created)
std::string gpgPubkeyVersion() const
Gpg-pubkey version as computed by rpm (trailing 8 byte id)
static PublicKeyData fromGpgmeKey(_gpgme_key *data)
std::string expiresAsString() const
base::DrunkenBishop AsciiArt
Random art fingerprint visualization type (base::DrunkenBishop).
AsciiArt asciiArt() const
Random art fingerprint visualization (base::DrunkenBishop).
std::string asString() const
Simple string representation.
friend std::ostream & dumpOn(std::ostream &str, const PublicKeyData &obj)
Edition gpgPubkeyEdition() const
Gpg-pubkey Edition built from version and release.
std::ostream & operator<<(std::ostream &str, const PublicKeyData &obj)
Stream output.
Class representing one GPG Public Key (PublicKeyData + ASCII armored in a tempfile).
Pathname path() const
File containing the ASCII armored key.
Edition gpgPubkeyEdition() const
!<
PublicKeyData::SubkeyIterator SubkeyIterator
std::string expiresAsString() const
bool fileProvidesKey(const std::string &id_r) const
Extends providesKey to look at the hidden keys too.
bool operator==(const PublicKey &rhs) const
AsciiArt asciiArt() const
!<
RWCOW_pointer< Impl > _pimpl
Pointer to implementation.
PublicKeyData::AsciiArt AsciiArt
const std::list< PublicKeyData > & hiddenKeys() const
Additional keys data in case the ASCII armored blob contains multiple keys.
static bool isSafeKeyId(const std::string &id_r)
!<
std::string rpmName() const
const PublicKeyData & keyData() const
The public keys data (.
std::string gpgPubkeyRelease() const
std::string asString() const
std::string fingerprint() const
std::ostream & operator<<(std::ostream &str, const PublicKey &obj)
Stream output.
std::string algoName() const
std::string gpgPubkeyVersion() const
bool operator!=(const std::string &sid) const
bool operator!=(const PublicKey &rhs) const
Iterable< SubkeyIterator > subkeys() const
!<
static PublicKey noThrow(const Pathname &keyFile_r)
Static ctor returning an empty PublicKey rather than throwing.
bool hasSubkeys() const
!<
bool providesKey(const std::string &id_r) const
!<
Class representing a GPG Public Keys subkeys.
RWCOW_pointer< Impl > _pimpl
std::string id() const
Subkey ID.
PublicSubkeyData()
Default constructed: empty data.
std::ostream & operator<<(std::ostream &str, const PublicSubkeyData &obj)
Stream output.
int daysToLive() const
Number of days (24h) until the key expires (or since it exired).
Date expires() const
Expiry date, or Date() if the key never expires.
friend std::ostream & dumpOn(std::ostream &str, const PublicKeyData &obj)
std::string asString() const
Simple string representation.
Date created() const
Creation date.
bool expired() const
Whether the key has expired.
Random art fingerprint visualization Visualize fingerprint data on a [17x9] (SSH) or [19x11] (GPG) or...
Provide a new empty temporary file and delete it when no longer needed.
String related utilities and Regular expression matching.
Easy-to use interface to the ZYPP dependency resolver.
bool operator==(const SetRelation::Enum &lhs, const SetCompare &rhs)
This is an overloaded member function, provided for convenience. It differs from the above function o...
std::ostream & dumpOn(std::ostream &str, const Capability &obj)
PublicKeyData implementation.
PublicKey implementation.
PublicSubkeyData implementation.