QCA::KeyStore

#include <QtCrypto>

Inheritance diagram for QCA::KeyStore:

Public Types

enum  Type {
  System, User, Application, SmartCard,
  PGPKeyring
}
 

Signals

void entryRemoved (bool success)
 
void entryWritten (const QString &entryId)
 
void unavailable ()
 
void updated ()
 

Public Member Functions

 KeyStore (const QString &id, KeyStoreManager *keyStoreManager)
 
QList< KeyStoreEntryentryList () const
 
bool holdsIdentities () const
 
bool holdsPGPPublicKeys () const
 
bool holdsTrustedCertificates () const
 
QString id () const
 
bool isReadOnly () const
 
bool isValid () const
 
QString name () const
 
bool removeEntry (const QString &id)
 
void startAsynchronousMode ()
 
Type type () const
 
QString writeEntry (const KeyBundle &kb)
 
QString writeEntry (const Certificate &cert)
 
QString writeEntry (const CRL &crl)
 
QString writeEntry (const PGPKey &key)
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
bool blockSignals (bool block)
 
const QObjectListchildren () const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectInfo ()
 
void dumpObjectInfo () const const
 
void dumpObjectTree ()
 
void dumpObjectTree () const const
 
QList< QByteArraydynamicPropertyNames () const const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
bool inherits (const char *className) const const
 
void installEventFilter (QObject *filterObj)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const const
 
void moveToThread (QThread *targetThread)
 
QString objectName () const const
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
QVariant property (const char *name) const const
 
 Q_CLASSINFO (Name, Value)
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUM_NS (...)
 
 Q_ENUMS (...)
 
 Q_FLAG (...)
 
 Q_FLAG_NS (...)
 
 Q_FLAGS (...)
 
 Q_GADGET Q_GADGET
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
qobject_cast (QObject *object)
 
qobject_cast (const QObject *object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
void removeEventFilter (QObject *obj)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const const
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
QThreadthread () const const
 
- Public Member Functions inherited from QCA::Algorithm
 Algorithm (const Algorithm &from)
 
void change (Provider::Context *c)
 
void change (const QString &type, const QString &provider)
 
Provider::Contextcontext ()
 
const Provider::Contextcontext () const
 
Algorithmoperator= (const Algorithm &from)
 
Providerprovider () const
 
Provider::ContexttakeContext ()
 
QString type () const
 

Additional Inherited Members

- Properties inherited from QObject
 objectName
 
- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
QObjectsender () const const
 
int senderSignalIndex () const const
 
virtual void timerEvent (QTimerEvent *event)
 
- Protected Member Functions inherited from QCA::Algorithm
 Algorithm ()
 
 Algorithm (const QString &type, const QString &provider)
 

Detailed Description

General purpose key storage object.

Examples of use of this are:

  • systemstore: System TrustedCertificates
  • accepted self-signed: Application TrustedCertificates
  • apple keychain: User Identities
  • smartcard: SmartCard Identities
  • gnupg: PGPKeyring Identities,PGPPublicKeys
Note
  • there can be multiple KeyStore objects referring to the same id
  • when a KeyStore is constructed, it refers to a given id (deviceId) and internal contextId. if the context goes away, the KeyStore becomes invalid (isValid() == false), and unavailable() is emitted. even if the device later reappears, the KeyStore remains invalid. a new KeyStore will have to be created to use the device again.

Definition at line 416 of file qca_keystore.h.

Member Enumeration Documentation

The type of keystore.

Enumerator
System 

objects such as root certificates

User 

objects such as Apple Keychain, KDE Wallet

Application 

for caching accepted self-signed certificates

SmartCard 

for smartcards

PGPKeyring 

for a PGP keyring

Definition at line 423 of file qca_keystore.h.

Constructor & Destructor Documentation

QCA::KeyStore::KeyStore ( const QString id,
KeyStoreManager keyStoreManager 
)

Obtain a specific KeyStore.

Parameters
idthe identification for the key store
keyStoreManagerthe parent manager for this keystore

Member Function Documentation

QList<KeyStoreEntry> QCA::KeyStore::entryList ( ) const

A list of the KeyStoreEntry objects in this store.

Note
This synchronous operation may require event handling, and so it must not be called from the same thread as an EventHandler (this is not a concern if asynchronous mode is enabled).
See also
startAsynchronousMode
void QCA::KeyStore::entryRemoved ( bool  success)
signal

Emitted when an entry has been removed, in asynchronous mode.

Parameters
successindicates if the removal succeeded (true) or not (false).
void QCA::KeyStore::entryWritten ( const QString entryId)
signal

Emitted when an entry has been written, in asynchronous mode.

Parameters
entryIdis the newly written entry id on success, or an empty string if the write failed.
bool QCA::KeyStore::holdsIdentities ( ) const

test if the KeyStore holds identities (eg KeyBundle or PGPSecretKey)

bool QCA::KeyStore::holdsPGPPublicKeys ( ) const

test if the KeyStore holds PGPPublicKey objects

bool QCA::KeyStore::holdsTrustedCertificates ( ) const

test if the KeyStore holds trusted certificates (and CRLs)

QString QCA::KeyStore::id ( ) const

The ID associated with the KeyStore.

bool QCA::KeyStore::isReadOnly ( ) const

Test if the KeyStore is writeable or not.

Returns
true if the KeyStore is read-only
bool QCA::KeyStore::isValid ( ) const

Check if this KeyStore is valid.

Returns
true if the KeyStore is valid
QString QCA::KeyStore::name ( ) const

The name associated with the KeyStore.

bool QCA::KeyStore::removeEntry ( const QString id)

Delete the a specified KeyStoreEntry from this KeyStore.

Parameters
idthe ID for the entry to be deleted
Note
This synchronous operation may require event handling, and so it must not be called from the same thread as an EventHandler (this is not a concern if asynchronous mode is enabled).
See also
startAsynchronousMode
void QCA::KeyStore::startAsynchronousMode ( )

Turns on asynchronous mode for this KeyStore instance.

Normally, entryList() and writeEntry() are blocking calls. However, if startAsynchronousMode() is called, then these functions will return immediately. entryList() will return with the latest known entries, or an empty list if none are known yet (in this mode, updated() will be emitted once the initial entries are known, even if the store has not actually been altered). writeEntry() will always return an empty string, and the entryWritten() signal indicates the result of a write.

Type QCA::KeyStore::type ( ) const

The KeyStore Type.

void QCA::KeyStore::unavailable ( )
signal

Emitted when the KeyStore becomes unavailable.

void QCA::KeyStore::updated ( )
signal

Emitted when the KeyStore is changed.

This occurs if entries are added, removed, or changed in this KeyStore, including changes in entry availability.

QString QCA::KeyStore::writeEntry ( const KeyBundle kb)

Add a entry to the KeyStore.

Returns the entryId of the written entry or an empty string on failure.

Parameters
kbthe KeyBundle to add to the KeyStore
Note
This synchronous operation may require event handling, and so it must not be called from the same thread as an EventHandler (this is not a concern if asynchronous mode is enabled).
See also
startAsynchronousMode
QString QCA::KeyStore::writeEntry ( const Certificate cert)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters
certthe Certificate to add to the KeyStore
QString QCA::KeyStore::writeEntry ( const CRL crl)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters
crlthe CRL to add to the KeyStore
QString QCA::KeyStore::writeEntry ( const PGPKey key)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters
keythe PGPKey to add to the KeyStore
Returns
a ref to the key in the keyring

The documentation for this class was generated from the following file:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Thu Aug 6 2020 23:02:39 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.