QCA::MessageContext Class Reference
[QCA provider API]

SecureMessage provider. More...

#include <QtCrypto>

Inheritance diagram for QCA::MessageContext:

QCA::Provider::Context Collaboration diagram for QCA::MessageContext:

Collaboration graph
[legend]
List of all members.

Public Types

enum  Operation {
  Encrypt, Decrypt, Sign, Verify,
  SignAndEncrypt
}

Signals

void updated ()

Public Member Functions

 MessageContext (Provider *p, const QString &type)
virtual bool canSignMultiple () const=0
virtual SecureMessage::Type type () const=0
virtual void reset ()=0
virtual void setupEncrypt (const SecureMessageKeyList &keys)=0
virtual void setupSign (const SecureMessageKeyList &keys, SecureMessage::SignMode m, bool bundleSigner, bool smime)=0
virtual void setupVerify (const QByteArray &detachedSig)=0
virtual void start (SecureMessage::Format f, Operation op)=0
virtual void update (const QByteArray &in)=0
virtual QByteArray read ()=0
virtual int written ()=0
virtual void end ()=0
virtual bool finished () const=0
virtual bool waitForFinished (int msecs)=0
virtual bool success () const=0
virtual SecureMessage::Error errorCode () const=0
virtual QByteArray signature () const=0
virtual QString hashName () const=0
virtual SecureMessageSignatureList signers () const=0
virtual QString diagnosticText () const

Detailed Description

SecureMessage provider.

Note:
This class is part of the provider plugin interface and should not be used directly by applications. You probably want SecureMessage instead.


Member Enumeration Documentation

enum QCA::MessageContext::Operation

The type of operation being performed.

Enumerator:
Encrypt  Encrypt operation.
Decrypt  Decrypt (or Decrypt and Verify) operation.
Sign  Sign operation.
Verify  Verify operation.
SignAndEncrypt  Sign and Encrypt operation.


Constructor & Destructor Documentation

QCA::MessageContext::MessageContext ( Provider p,
const QString type 
) [inline]

Standard constructor.


Member Function Documentation

virtual bool QCA::MessageContext::canSignMultiple (  )  const [pure virtual]

Returns true if the provider supports multiple signers for signature creation or signature verification.

virtual SecureMessage::Type QCA::MessageContext::type (  )  const [pure virtual]

The type of secure message (e.g.

PGP or CMS)

virtual void QCA::MessageContext::reset (  )  [pure virtual]

Reset the object to its initial state.

virtual void QCA::MessageContext::setupEncrypt ( const SecureMessageKeyList keys  )  [pure virtual]

Configure a new encrypting operation.

virtual void QCA::MessageContext::setupSign ( const SecureMessageKeyList keys,
SecureMessage::SignMode  m,
bool  bundleSigner,
bool  smime 
) [pure virtual]

Configure a new signing operation.

virtual void QCA::MessageContext::setupVerify ( const QByteArray detachedSig  )  [pure virtual]

Configure a new verify operation.

virtual void QCA::MessageContext::start ( SecureMessage::Format  f,
Operation  op 
) [pure virtual]

Begins the secure message operation.

This function returns immediately.

If there is input data, update() will be called (potentially repeatedly) afterwards. Emit updated() if there is data to read, if input data has been accepted, or if the operation has finished.

virtual void QCA::MessageContext::update ( const QByteArray in  )  [pure virtual]

Provide input to the message operation.

virtual QByteArray QCA::MessageContext::read (  )  [pure virtual]

Extract output from the message operation.

virtual int QCA::MessageContext::written (  )  [pure virtual]

Returns the number of input bytes accepted since the last call to update().

virtual void QCA::MessageContext::end (  )  [pure virtual]

Indicates the end of input.

virtual bool QCA::MessageContext::finished (  )  const [pure virtual]

Returns true if the operation has finished, otherwise false.

virtual bool QCA::MessageContext::waitForFinished ( int  msecs  )  [pure virtual]

Waits for the secure message operation to complete.

In this case, the updated() signal is not emitted. Returns true if the operation completed or false if this function times out.

This function is blocking.

Parameters:
msecs number of milliseconds to wait (-1 to wait forever)

virtual bool QCA::MessageContext::success (  )  const [pure virtual]

Returns true if the operation was successful.

This is only valid if the operation has finished.

virtual SecureMessage::Error QCA::MessageContext::errorCode (  )  const [pure virtual]

Returns the reason for failure, if the operation was not successful.

This is only valid if the operation has finished.

virtual QByteArray QCA::MessageContext::signature (  )  const [pure virtual]

Returns the signature, in the case of a detached signature operation.

This is only valid if the operation has finished.

virtual QString QCA::MessageContext::hashName (  )  const [pure virtual]

Returns the name of the hash used to generate the signature, in the case of a signature operation.

This is only valid if the operation has finished.

virtual SecureMessageSignatureList QCA::MessageContext::signers (  )  const [pure virtual]

Returns a list of signatures, in the case of a verify or decrypt and verify operation.

This is only valid if the operation has finished.

virtual QString QCA::MessageContext::diagnosticText (  )  const [virtual]

Returns any diagnostic text for the operation, potentially useful to show the user in the event the operation is unsuccessful.

For example, this could be the stderr output of gpg.

This is only valid if the operation has finished.

void QCA::MessageContext::updated (  )  [signal]

Emitted when there is data to read, if input data has been accepted, or if the operation has finished.


The documentation for this class was generated from the following file:
Generated on Tue Aug 28 08:23:13 2007 for Qt Cryptographic Architecture by  doxygen 1.5.2