CSRTPCryptoHandlerSRTCP Class Reference

class CSRTPCryptoHandlerSRTCP : public CSRTPCryptoHandler

Contains RTCP specific handling of cryptographic context.

Inherits from

Public Member Functions
~CSRTPCryptoHandlerSRTCP ()
HBufC8 * CalculateAuthTagL ()
CSRTPCryptoHandlerSRTCP * NewL ( CSRTPStream &)
CSRTPCryptoHandlerSRTCP * NewLC ( CSRTPStream &)
Private Member Functions
CSRTPCryptoHandlerSRTCP ( CSRTPStream &)
void AddAuthTagToPacketL ( TUint8 *)
void AddEflagAndSrtcpIndex ( TUint8 *)
void AddMKIToPacket ( TUint8 *)
void AddReplayIndex ()
void AuthenticateL ()
void CheckMasterKeyIdentifierL ()
void ConstructL ()
HBufC8 * CountIV_And_TransformL ()
void CountSenderPacketIndexL ()
HBufC8 * DecryptL ()
void DeriveSessionKeysL ()
HBufC8 * DoAuthenticationL (const TDesC8 &, const TDesC8 &)
HBufC8 * EncryptL ()
void IndexReKeyCheckL ()
void InitialPacketIndex ()
void InitializeEncryptedPacketL (const TDesC8 &)
void InitializePlainPacketL (const TDesC8 &)
TBool MasterKeysUpdated ()
void ReceiverPacketIndexL ()
void ReplayProtectionL ()
void StripEBit ()
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CSRTPCryptoHandler::CSRTPCryptoHandler(CSRTPStream &)
CSRTPCryptoHandler::Context()
CSRTPCryptoHandler::Count_X(TUint64,TInt8,const TUint64,TDes8 &)
CSRTPCryptoHandler::CryptoParams()
CSRTPCryptoHandler::DeleteSessionKeys()
CSRTPCryptoHandler::ROC()const
CSRTPCryptoHandler::ReplayCheck(TInt)
CSRTPCryptoHandler::SRTPMasterKeyChanged()
CSRTPCryptoHandler::SRTPMasterSaltChanged()
CSRTPCryptoHandler::SSRC()const
CSRTPCryptoHandler::SetEncAndAuthL(TSRTPEncAlg,TSRTPAuthAlg)
CSRTPCryptoHandler::SetROC(TUint32)
CSRTPCryptoHandler::~CSRTPCryptoHandler()
Private Attributes
TUint64 iPcktsProcessed
TInt iReplayIndexDelta
TUint64 iReplayPktIndex
TUint32 iSRTCPIndex
TUint32 iSRTCPIndexEStripped
TUint64 iSRTCPMasterKeyLifeTime
Inherited Attributes
CSRTPCryptoHandler::iAuthenticator
CSRTPCryptoHandler::iBitmap
CSRTPCryptoHandler::iCipher
CSRTPCryptoHandler::iCurrentPacket
CSRTPCryptoHandler::iHandlerLink
CSRTPCryptoHandler::iHandlerOffset
CSRTPCryptoHandler::iKeyDeriver
CSRTPCryptoHandler::iMasterDataUpdated
CSRTPCryptoHandler::iNumPackets
CSRTPCryptoHandler::iReKey
CSRTPCryptoHandler::iSessionAuthKey
CSRTPCryptoHandler::iSessionEncrKey
CSRTPCryptoHandler::iSessionSaltKey
CSRTPCryptoHandler::iStream

Constructor & Destructor Documentation

CSRTPCryptoHandlerSRTCP(CSRTPStream &)

CSRTPCryptoHandlerSRTCP ( CSRTPStream & aStream ) [private]

Parameters

CSRTPStream & aStream

~CSRTPCryptoHandlerSRTCP()

~CSRTPCryptoHandlerSRTCP ( )

Member Functions Documentation

AddAuthTagToPacketL(TUint8 *)

void AddAuthTagToPacketL ( TUint8 * aSrtpPacketPtr ) [private]

Parameters

TUint8 * aSrtpPacketPtr

AddEflagAndSrtcpIndex(TUint8 *)

void AddEflagAndSrtcpIndex ( TUint8 * aSrtcpPacketPtr ) [private]

Parameters

TUint8 * aSrtcpPacketPtr

AddMKIToPacket(TUint8 *)

void AddMKIToPacket ( TUint8 * aSrtpPacketPtr ) [private]

Parameters

TUint8 * aSrtpPacketPtr

AddReplayIndex()

void AddReplayIndex ( ) [private]

AuthenticateL()

void AuthenticateL ( ) [private, virtual]

CalculateAuthTagL()

HBufC8 * CalculateAuthTagL ( )
Calculate authentication tag for an RTP packet. Authentication is based on the current TSRTPAuthAlg algorithm setting in CryptoContext If the operation fails, the function leaves with a system error code.
leave
KErrNone if success, system-wide error code otherwise, KErrNotFound means that authentication tags dont match

CheckMasterKeyIdentifierL()

void CheckMasterKeyIdentifierL ( ) [private, virtual]

ConstructL()

void ConstructL ( ) [private]

CountIV_And_TransformL()

HBufC8 * CountIV_And_TransformL ( ) [private]

CountSenderPacketIndexL()

void CountSenderPacketIndexL ( ) [private]

DecryptL()

HBufC8 * DecryptL ( ) [private, virtual]

DeriveSessionKeysL()

void DeriveSessionKeysL ( ) [private, virtual]

DoAuthenticationL(const TDesC8 &, const TDesC8 &)

HBufC8 * DoAuthenticationL ( const TDesC8 & aAuthenticatedArea,
const TDesC8 & aRoc
) [private]

Parameters

const TDesC8 & aAuthenticatedArea
const TDesC8 & aRoc

EncryptL()

HBufC8 * EncryptL ( ) [private, virtual]

IndexReKeyCheckL()

void IndexReKeyCheckL ( ) [private]

InitialPacketIndex()

void InitialPacketIndex ( ) [private]

InitializeEncryptedPacketL(const TDesC8 &)

void InitializeEncryptedPacketL ( const TDesC8 & aPacket ) [private, virtual]

Parameters

const TDesC8 & aPacket

InitializePlainPacketL(const TDesC8 &)

void InitializePlainPacketL ( const TDesC8 & aPacket ) [private, virtual]

Parameters

const TDesC8 & aPacket

MasterKeysUpdated()

TBool MasterKeysUpdated ( ) [private, virtual]

NewL(CSRTPStream &)

CSRTPCryptoHandlerSRTCP * NewL ( CSRTPStream & aStream ) [static]

Two-phased constructor.

Parameters

CSRTPStream & aStream RTCP stream

NewLC(CSRTPStream &)

CSRTPCryptoHandlerSRTCP * NewLC ( CSRTPStream & aStream ) [static]

Two-phased constructor.

Parameters

CSRTPStream & aStream RTCP stream

ReceiverPacketIndexL()

void ReceiverPacketIndexL ( ) [private]

ReplayProtectionL()

void ReplayProtectionL ( ) [private, virtual]

StripEBit()

void StripEBit ( ) [private]

Member Data Documentation

TUint64 iPcktsProcessed

TUint64 iPcktsProcessed [private]

TInt iReplayIndexDelta

TInt iReplayIndexDelta [private]

TUint64 iReplayPktIndex

TUint64 iReplayPktIndex [private]

TUint32 iSRTCPIndex

TUint32 iSRTCPIndex [private]

TUint32 iSRTCPIndexEStripped

TUint32 iSRTCPIndexEStripped [private]

TUint64 iSRTCPMasterKeyLifeTime

TUint64 iSRTCPMasterKeyLifeTime [private]