CSRTPCryptoHandlerSRTP Class Reference

class CSRTPCryptoHandlerSRTP : public CSRTPCryptoHandler

Contains RTP specific handling of cryptographic context.

Inherits from

Public Member Functions
~CSRTPCryptoHandlerSRTP()
HBufC8 *CalculateAuthTagL()
CSRTPCryptoHandlerSRTP *NewL(CSRTPStream &)
CSRTPCryptoHandlerSRTP *NewLC(CSRTPStream &)
Private Member Functions
CSRTPCryptoHandlerSRTP(CSRTPStream &)
voidAddAuthTagToPacketL(TUint8 *)
voidAddMKIToPacket(TUint8 *)
voidAddReplayIndex()
voidAuthenticateL()
TBool CarryROC()
voidCheckMasterKeyIdentifierL()
voidConstructL()
HBufC8 *CountIV_And_TransformL()
voidCountReceiverPacketIndexL()
voidCountSenderPacketIndexL()
TInt64 CountSndIndxbySndROC()
HBufC8 *DecryptL()
voidDeriveSessionKeysL()
HBufC8 *DoAuthenticationL(const TDesC8 &, const TDesC8 &)
HBufC8 *EncryptL()
TBool IfAddAuthTag()
voidInitializeEncryptedPacketL(const TDesC8 &)
voidInitializePlainPacketL(const TDesC8 &)
TBool MasterKeysUpdated()
voidReKeyCheck()
voidReplayProtectionL()
voidSetReceiver_s_l()
voidUpdateROC()
voidUpdate_s_l_and_RocL()
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
TUint16 iCurrentSeq
TUint64 iPktIndex
TUint32 iROC
TInt iReplayIndexDelta
TUint64 iSRTPMasterKeyLifeTime
TUint16 iS_L
TInt32 iV
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

CSRTPCryptoHandlerSRTP(CSRTPStream &)

CSRTPCryptoHandlerSRTP(CSRTPStream &aStream)[private]

Parameters

CSRTPStream & aStream

~CSRTPCryptoHandlerSRTP()

~CSRTPCryptoHandlerSRTP()

Member Functions Documentation

AddAuthTagToPacketL(TUint8 *)

voidAddAuthTagToPacketL(TUint8 *aSrtpPacketPtr)[private]

Parameters

TUint8 * aSrtpPacketPtr

AddMKIToPacket(TUint8 *)

voidAddMKIToPacket(TUint8 *aSrtpPacketPtr)[private]

Parameters

TUint8 * aSrtpPacketPtr

AddReplayIndex()

voidAddReplayIndex()[private]

AuthenticateL()

voidAuthenticateL()[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,

CarryROC()

TBool CarryROC()[private]

CheckMasterKeyIdentifierL()

voidCheckMasterKeyIdentifierL()[private, virtual]

ConstructL()

voidConstructL()[private]

CountIV_And_TransformL()

HBufC8 *CountIV_And_TransformL()[private]

CountReceiverPacketIndexL()

voidCountReceiverPacketIndexL()[private]

CountSenderPacketIndexL()

voidCountSenderPacketIndexL()[private]

CountSndIndxbySndROC()

TInt64 CountSndIndxbySndROC()[private]

DecryptL()

HBufC8 *DecryptL()[private, virtual]

DeriveSessionKeysL()

voidDeriveSessionKeysL()[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]

IfAddAuthTag()

TBool IfAddAuthTag()[private]

InitializeEncryptedPacketL(const TDesC8 &)

voidInitializeEncryptedPacketL(const TDesC8 &aPacket)[private, virtual]

Parameters

const TDesC8 & aPacket

InitializePlainPacketL(const TDesC8 &)

voidInitializePlainPacketL(const TDesC8 &aPacket)[private, virtual]

Parameters

const TDesC8 & aPacket

MasterKeysUpdated()

TBool MasterKeysUpdated()[private, virtual]

NewL(CSRTPStream &)

CSRTPCryptoHandlerSRTP *NewL(CSRTPStream &aStream)[static]
Two-phased constructor.
leave
KErrNone if success, system-wide error code otherwise

Parameters

CSRTPStream & aStreamaStream for this cryptohandler.

NewLC(CSRTPStream &)

CSRTPCryptoHandlerSRTP *NewLC(CSRTPStream &aStream)[static]
Two-phased constructor.
leave
KErrNone if success, system-wide error code otherwise

Parameters

CSRTPStream & aStreamaStream for this cryptohandler.

ReKeyCheck()

voidReKeyCheck()[private]

ReplayProtectionL()

voidReplayProtectionL()[private, virtual]

SetReceiver_s_l()

voidSetReceiver_s_l()[private]

UpdateROC()

voidUpdateROC()[private]

Update_s_l_and_RocL()

voidUpdate_s_l_and_RocL()[private]

Member Data Documentation

TUint16 iCurrentSeq

TUint16 iCurrentSeq[private]

TUint64 iPktIndex

TUint64 iPktIndex[private]

TUint32 iROC

TUint32 iROC[private]

TInt iReplayIndexDelta

TInt iReplayIndexDelta[private]

TUint64 iSRTPMasterKeyLifeTime

TUint64 iSRTPMasterKeyLifeTime[private]

TUint16 iS_L

TUint16 iS_L[private]

TInt32 iV

TInt32 iV[private]