The digestStart(), digestContinue(), and digestEnd() methods comprise a streaming digest interface.
A streaming interface allows the caller to add blocks of data one at a time and does not require all the entire message be contained in a single buffer in order to generate a digest. The digestContinue() method can be called multiple times, one for each block of data to be included in the digest while the digestStart() and digestEnd() are only called once. Note that a digest result is not returned until the digestEnd() method is called.
- Parameters
-
pInData | [ in ] Specifies the data to be included in the digest |
inSize | [ in ] Size in bytes of the pInData array. |
- Returns
Success | P6R::eOk | |
Failure | P6R::eNotInitialized | A successful call to initialize was not made before this call. |
P6R::eInvalidArg | One of the parameters is NULL. |
P6R::eInvalidState | A successful call to digestStart() must be done before a call to this method. |
P6R::eFailAndException | The digest calculation failed. Exception record provides detailed error info. |