CPaddingPKCS7 Class Reference

class CPaddingPKCS7 : public CPadding

This concrete subclass of CPadding implements padding according to the PKCS#7/TLS standard.

Inherits from

Constructor & Destructor Documentation

CPaddingPKCS7(TInt)

IMPORT_C CPaddingPKCS7 ( TInt aBlockBytes ) [protected]

Constructor

Parameters

TInt aBlockBytes The block size in bytes.

CPaddingPKCS7(void)

CPaddingPKCS7 ( void ) [private]

Parameters

void

CPaddingPKCS7(const CPaddingPKCS7 &)

CPaddingPKCS7 ( const CPaddingPKCS7 & ) [private]

Parameters

const CPaddingPKCS7 &

Member Functions Documentation

DoPadL(const TDesC8 &, TDes8 &)

void DoPadL ( const TDesC8 & aInput,
TDes8 & aOutput
) [private, virtual]

Parameters

const TDesC8 & aInput
TDes8 & aOutput

MaxPaddedLength(TInt)

TInt MaxPaddedLength ( TInt aInputBytes ) const [virtual]

Gets the size of the aOutput buffer, in a call to PadL() , must be in order to accommodate a block size of BlockSize() and an input size of aInputBytes.

Note:

By default, this function returns the output of BlockSize() . If a derived padding system outputs more than a single block of padding, one must override this function and return the appropriate value.

Parameters

TInt aInputBytes The amount of data to be padded out in bytes.

MinPaddingLength(void)

TInt MinPaddingLength ( void ) const [virtual]

Gets the smallest number of bytes that PadL() will ever add to aInput in order to get a valid block aligned aOutput.

For example, in SSLv3 padding, if the block size is 8 and aInput is 7 bytes, it will append 1 byte of padding. For SSLv3 padding, this is the smallest amount possible as an 8 byte input will add another block size (8 more bytes) of padded data.

Parameters

void

NewL(TInt)

IMPORT_C CPaddingPKCS7 * NewL ( TInt aBlockBytes ) [static]

Creates a new CPaddingPKCS7 object.

Parameters

TInt aBlockBytes The block size in bytes.

NewLC(TInt)

IMPORT_C CPaddingPKCS7 * NewLC ( TInt aBlockBytes ) [static]

Creates a new CPaddingPKCS7 object and leaves a pointer to it on the cleanup stack.

Parameters

TInt aBlockBytes The block size in bytes.

UnPadL(const TDesC8 &, TDes8 &)

void UnPadL ( const TDesC8 & aInput,
TDes8 & aOutput
) [virtual]

Removes padding from aInput and appends unpadded result to aOutput.

Parameters

const TDesC8 & aInput Data to be unpadded.
TDes8 & aOutput On return, the unpadded data.

operator=(const CPaddingPKCS7 &)

CPaddingPKCS7 & operator= ( const CPaddingPKCS7 & ) [private]

Parameters

const CPaddingPKCS7 &