12 #ifndef ZYPP_PRIVATE_KEYRINGIMPL_H 13 #define ZYPP_PRIVATE_KEYRINGIMPL_H 17 #include <zypp-core/fs/WatchFile> 80 const std::list<PublicKeyData> &
getData(
const Pathname & keyring_r )
const;
116 void importKeys(
const std::list<PublicKey> & keys,
const Ring ring );
152 if ( not ringKeyData ) {
bool verifyFile(const Pathname &file, const Pathname &signature, const Ring ring)
filesystem::TmpDir _trusted_tmp_dir
filesystem::TmpDir _general_tmp_dir
PublicKeyData publicKeyData(const PublicKey &key, const Ring ring) const
bool isKeyTrusted(const std::string &id) const
const PublicKeyData & keyData() const
The public keys data (.
Functor returning the keyrings data (cached).
KeyRing implementation, shared between zyppng and zypp.
Manip(CachedPublicKeyData &cache_r, Pathname keyring_r)
Class representing one GPG Public Keys data.
void preloadCachedKeys()
Load key files cached on the system into the generalKeyRing.
String related utilities and Regular expression matching.
void importKeys(const std::list< PublicKey > &keys, const Ring ring)
Manip manip(Pathname keyring_r)
Helper providing on demand a KeyManagerCtx to manip the cached keyring.
Provide a new empty temporary file and delete it when no longer needed.
PublicKey exportKey(const PublicKey &key, const Ring ring) const
std::list< PublicKey > publicKeys(const Ring ring) const
zyppng::Signal< void(const PublicKey &)> _sigTrustedKeyAdded
std::string readSignatureKeyId(const Pathname &signature)
PublicKeyData publicKeyData(const PublicKeyData &keyData, const Ring ring) const
std::map< Pathname, Cache > CacheMap
Provide a new empty temporary directory and recursively delete it when no longer needed.
zyppng::Signal< void(const PublicKey &)> _sigTrustedKeyRemoved
zyppng::SignalProxy< void(const PublicKey &)> sigTrustedKeyAdded()
CachedPublicKeyData & _cache
KeyRingImpl(const Pathname &baseTmpDir)
scoped_ptr< WatchFile > _keyringK
MustUpdate mustUpdateData(const PublicKeyData &keyData, const Ring ring) const
Helper computing PublicKeyData's status in a Ring.
old version of Key is in Ring
bool isUpdateFor(const PublicKeyData &rhs) const
Whether this could replace rhs in a keyring.
const std::list< PublicKeyData > & getData(const Pathname &keyring_r) const
KeyManagerCtx & keyManagerCtx()
const Pathname keyRingPath(const Ring ring) const
void multiKeyImport(const Pathname &keyfile_r, const Ring ring)
Used by RpmDB to import the trusted keys.
filesystem::TmpFile dumpPublicKeyToTmp(const std::string &id, const Pathname &keyring) const
PublicKeyData publicKeyData(const std::string &id, const Ring ring) const
zyppng::SignalProxy< void(const PublicKey &)> sigTrustedKeyRemoved()
void allowPreload(bool yesno_r)
void assertCache(const Pathname &keyring_r)
Class representing one GPG Public Key (PublicKeyData + ASCII armored in a tempfile).
const std::list< PublicKeyData > & publicKeyData(const Pathname &keyring) const
std::string id() const
Key ID.
void deleteKey(const std::string &id, const Ring ring)
CachedPublicKeyData cachedPublicKeyData
Functor returning the keyrings data (cached).
const std::list< PublicKeyData > & operator()(const Pathname &keyring_r) const
std::list< PublicKeyData > _data
void setDirty(const Pathname &keyring_r)
std::optional< KeyManagerCtx > _context
CachedPublicKeyData::Manip keyRingManip(const Pathname &keyring)
Impl helper providing on demand a KeyManagerCtx to manip a cached keyring.
scoped_ptr< WatchFile > _keyringP
std::ostream & operator<<(std::ostream &str, const Capabilities &obj)
relates: Capabilities Stream output
PublicKey exportKey(const PublicKeyData &keyData, const Ring ring) const
Easy-to use interface to the ZYPP dependency resolver.
const std::list< PublicKeyData > & publicKeyData(const Ring ring) const
bool isKeyKnown(const std::string &id) const
PublicKey exportKey(const std::string &id, const Ring ring) const
void importKey(const PublicKey &key, const Ring ring)
Import PublicKeys into a Ring.
NON_COPYABLE_BUT_MOVE(Manip)
Helper providing on demand a KeyManagerCtx to manip the cached keyring.
boost::noncopyable NonCopyable
Ensure derived classes cannot be copied.
void dumpPublicKey(const std::string &id, const Ring ring, std::ostream &stream)