Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
virtual P6R::P6ERR P6R::p6ISymmetricCrypto::encryptEnd ( P6CHAR pOutData,
P6UINT32 pOutSize 
)
pure virtual

The encryptStart(), encryptContinue(), and encryptEnd() methods comprise a streaming encryption interface.

A streaming interface allows the caller to encrypt blocks of data at a time and does not require all the entire message be contained in a single buffer in order to perform encryption. The encryptContinue() method can be called multiple times, one for each block of data to be encrypted while the encryptStart() and encryptEnd() are only called once.

Even after all data to be encrypted has been input via the encryptContinue() method a final decrypted block can be returned by this method. This method must be called at the end of an encryption session.

Parameters
pOutData[ in ] Specifies where to place the encrypted data.
pOutSize[ in ] Size in bytes of the pOutData array. [ out ] Specifies the number of encrypted bytes written into pOutData.
Returns
SuccessP6R::eOk 
FailureP6R::eNotInitializedA successful call to initialize was not made before this call.
P6R::eInvalidArgOne of the parameters is NULL.
P6R::eInvalidStateA successful call to encryptStart() must be done before a call to this method.
P6R::eFailAndExceptionThe encryption calculation failed. Exception record provides detailed error info.
P6R::eTooSmallThe pOutData buffer is too small to hold the encrypted result data.