QCA::MessageContext Class Referenceabstract
QCA provider API

`#include <QtCrypto>`

Collaboration diagram for QCA::MessageContext:
[legend]

## Public Types

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

## Signals

void | updated ()

## Public Member Functions

virtual bool | canSignMultiple () const =0
virtual QString | diagnosticText () const
virtual void | end ()=0
virtual SecureMessage::Error | errorCode () const =0
virtual bool | finished () const =0
virtual QString | hashName () const =0
| MessageContext (Provider *p, const QString &type)
virtual QByteArray | read ()=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 QByteArray | signature () const =0
virtual SecureMessageSignatureList | signers () const =0
virtual void | start (SecureMessage::Format f, Operation op)=0
virtual bool | success () const =0
virtual SecureMessage::Type | type () const =0
virtual void | update (const QByteArray &in)=0
virtual bool | waitForFinished (int msecs)=0
virtual int | written ()=0
Public Member Functions inherited from QCA::Provider::Context
virtual Context * | clone () const =0
Provider * | provider () const
bool | sameProvider (const Context *c) const
QString | type () const

## Additional Inherited Members

Protected Member Functions inherited from QCA::Provider::Context
| Context (const Context &from)
| Context (Provider *parent, const QString &type)

## 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

## Operation

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

## MessageContext()

QCA::MessageContext::MessageContext | ( | Provider * | p,
|  | const QString & | type )

inline

Standard constructor.

Parameters

  p | the Provider associated with this context
  type | the name of the type of secure message to be created

References QCA::Provider::Context::Context(), and type().

## Member Function Documentation

## canSignMultiple()

virtual bool QCA::MessageContext::canSignMultiple | ( |  | ) | const

pure virtual

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

## type()

virtual SecureMessage::Type QCA::MessageContext::type | ( |  | ) | const

pure virtual

The type of secure message (e.g.

PGP or CMS)

Referenced by MessageContext().

## reset()

virtual void QCA::MessageContext::reset | ( |  | ) |

pure virtual

Reset the object to its initial state.

## setupEncrypt()

virtual void QCA::MessageContext::setupEncrypt | ( | const SecureMessageKeyList & | keys | ) |

pure virtual

Configure a new encrypting operation.

Parameters

  keys | the keys to be used for encryption.

## setupSign()

virtual void QCA::MessageContext::setupSign | ( | const SecureMessageKeyList & | keys,
|  | SecureMessage::SignMode | m,
|  | bool | bundleSigner,
|  | bool | smime )

pure virtual

Configure a new signing operation.

Parameters

  keys | the keys to use for signing
  m | the mode to sign in
  bundleSigner | whether to bundle the signing keys (true) or not (false)
  smime | whether to use smime format (true) or not (false)

## setupVerify()

virtual void QCA::MessageContext::setupVerify | ( | const QByteArray & | detachedSig | ) |

pure virtual

Configure a new verify operation.

Parameters

  detachedSig | the detached signature to use (if applicable) for verification

## start()

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.

Parameters

  f | the format of the message to be produced
  op | the operation to be performed

## update()

virtual void QCA::MessageContext::update | ( | const QByteArray & | in | ) |

pure virtual

Provide input to the message operation.

Parameters

  in | the data to use for the message operation

## read()

virtual QByteArray QCA::MessageContext::read | ( |  | ) |

pure virtual

Extract output from the message operation.

## written()

virtual int QCA::MessageContext::written | ( |  | ) |

pure virtual

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

## end()

virtual void QCA::MessageContext::end | ( |  | ) |

pure virtual

Indicates the end of input.

## finished()

virtual bool QCA::MessageContext::finished | ( |  | ) | const

pure virtual

Returns true if the operation has finished, otherwise false.

## waitForFinished()

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)

## success()

virtual bool QCA::MessageContext::success | ( |  | ) | const

pure virtual

Returns true if the operation was successful.

This is only valid if the operation has finished.

## errorCode()

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.

## signature()

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.

## hashName()

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.

## signers()

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.

## diagnosticText()

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.

## updated

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:

- qcaprovider.h