RDRMRightsClient Class Reference

class RDRMRightsClient : public RSessionBase

This class is the client side interface for DRM3 Rights Server. This class can be used to access the DRM Rights Database.

DRM Core
Since
S60 Release 2.5

Inherits from

Public Member Functions
RDRMRightsClient ()
~RDRMRightsClient ()
IMPORT_C TInt AddDomainRO (const TDesC8 &, const TDesC8 &)
IMPORT_C TInt AddProtectedRecord (const TDesC8 &, TBool , const CDRMPermission &, const TDesC8 &, TDRMUniqueID &)
IMPORT_C TInt AddRecord (const TDesC8 &, const CDRMPermission &, const TDesC8 &, TDRMUniqueID &)
IMPORT_C TInt AddToCache (const TDesC8 &, const TTime &)
IMPORT_C TInt AddToCache (const TDesC8 &)
IMPORT_C TInt CalculatePadding (const TDesC8 &)
IMPORT_C void Cancel ()
IMPORT_C TInt CheckConsume (const TInt , const TDesC8 &)
IMPORT_C TInt CheckRights (const TInt , const TDesC8 &, TUint32 &)
IMPORT_C void Close ()
IMPORT_C TInt Connect ()
IMPORT_C TInt Consume (const TInt , const TDesC8 &)
IMPORT_C TInt Count ()
IMPORT_C TInt DecodeRightsIssuerField (const TDesC8 &, HBufC8 *&)
IMPORT_C TInt Decrypt (const TDesC8 &, TPtr8 &, TBool )
IMPORT_C TInt DeleteAll ()
IMPORT_C TInt DeleteDbEntry (const TDesC8 &)
IMPORT_C TInt DeleteDbEntry (const TDesC8 &, const TDRMUniqueID &)
IMPORT_C TInt DeleteDomainRO (const TDesC8 &)
IMPORT_C void DeleteExpiredPermissions ( TRequestStatus &)
IMPORT_C TInt DeleteMeteringDataL (const TDesC8 &)
IMPORT_C TInt EncodeRightsIssuerField (const TDesC8 &, HBufC8 *&)
IMPORT_C TInt Encrypt (const TDesC8 &, TPtr8 &, TBool )
IMPORT_C TInt ExportContentIDList ( TDes &)
IMPORT_C TInt ExportContentIDList ( RPointerArray < HBufC8 > &)
IMPORT_C TInt ExportOrphanedContentIdList ( TDes &)
IMPORT_C TInt ExportOrphanedContentIdList ( RPointerArray < HBufC8 > &)
IMPORT_C TInt ForwardLockURI ( HBufC8 *&)
IMPORT_C CDRMPermission * GetActiveRightsL (const TInt , const TDesC8 &, TUint32 &)
IMPORT_C TInt GetAuthenticationSeed (const TDesC8 &, TDes8 &)
IMPORT_C void GetDBEntriesL (const TDesC8 &, RPointerArray < CDRMPermission > &)
IMPORT_C CDRMPermission * GetDbEntryL (const TDesC8 &, const TDRMUniqueID &)
IMPORT_C TInt GetDecryptionKey (const TInt , const TDesC8 &, TDes8 &)
IMPORT_C HBufC8 * GetDomainROL (const TDesC8 &)
IMPORT_C void GetDomainRosForCidL (const TDesC8 &, RPointerArray < HBufC8 > &)
IMPORT_C TInt GetEstimatedArrival (const TDesC8 &, TTimeIntervalSeconds &)
IMPORT_C HBufC8 * GetMeteringDataL (const TDesC8 &)
IMPORT_C TInt GetName (const TDesC8 &, HBufC *&)
IMPORT_C void GetRandomDataL ( TDes8 &)
IMPORT_C TInt GetSupportedIndividualsL ( RPointerArray < HBufC8 > &)
IMPORT_C TInt GetUdtData ( TDes8 &)
IMPORT_C void InitOrphanedContentIdList ( TBool , TRequestStatus &)
IMPORT_C TInt InitializeGroupKey (const TDesC8 &, const TDesC8 &, TEncryptionMethod )
IMPORT_C TInt InitializeKey (const TDesC8 &)
IMPORT_C TInt InitiateUdt (const TDesC8 &)
IMPORT_C TInt IsInCache (const TDesC8 &, const TTime &, TBool &)
IMPORT_C TInt IsInCache (const TDesC8 &, TBool &)
IMPORT_C TInt SetAuthenticationSeed (const TDesC8 &, const TDesC8 &)
IMPORT_C TInt SetEstimatedArrival (const TDesC8 &, TTimeIntervalSeconds )
IMPORT_C TInt SetName (const TDesC8 &, const TDesC &)
IMPORT_C TInt StartServer ()
IMPORT_C void StopWatching ()
IMPORT_C TInt UnwrapMacAndRek (const TDesC8 &, TKeyTransportScheme , const TDesC8 &, const TDesC8 &)
IMPORT_C TInt VerifyMacL (const TDesC8 &, const TDesC8 &)
Private Member Functions
RDRMRightsClient (const RDRMRightsClient &)
void FileToListL ( RFs &, const TDesC &, RPointerArray < CDRMPermission > &)
void URIFileToArrayL ( RFs &, const TDesC &, RPointerArray < HBufC8 > &)
RDRMRightsClient & operator= (const RDRMRightsClient &)
Inherited Functions
RHandleBase::Attributes()const
RHandleBase::BTraceId()const
RHandleBase::DoExtendedClose()
RHandleBase::Duplicate(const RThread &,TOwnerType)
RHandleBase::FullName()const
RHandleBase::FullName(TDes &)const
RHandleBase::Handle()const
RHandleBase::HandleInfo(THandleInfo *)
RHandleBase::Name()const
RHandleBase::NotifyDestruction(TRequestStatus &)
RHandleBase::Open(const TFindHandleBase &,TOwnerType)
RHandleBase::OpenByName(const TDesC &,TOwnerType,TInt)
RHandleBase::RHandleBase()
RHandleBase::RHandleBase(TInt)
RHandleBase::SetHandle(TInt)
RHandleBase::SetHandleNC(TInt)
RSessionBase::CreateSession(RServer2,const TVersion &)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TRequestStatus *)
RSessionBase::Open(RMessagePtr2,TInt,TOwnerType)
RSessionBase::Open(RMessagePtr2,TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Open(TInt,TOwnerType)
RSessionBase::Open(TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Send(TInt)const
RSessionBase::Send(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt)const
RSessionBase::SendReceive(TInt,TRequestStatus &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &,TRequestStatus &)const
RSessionBase::SetReturnedHandle(TInt)
RSessionBase::SetReturnedHandle(TInt,RHandleBase &)
RSessionBase::SetReturnedHandle(TInt,const TSecurityPolicy &)
RSessionBase::ShareAuto()
RSessionBase::ShareProtected()
Inherited Enumerations
RHandleBase:TAttributes
RSessionBase:TAttachMode
Private Attributes
TAny * iPtr
Inherited Attributes
RHandleBase::iHandle

Constructor & Destructor Documentation

RDRMRightsClient()

IMPORT_C RDRMRightsClient ( )

C++ default constructor.

RDRMRightsClient(const RDRMRightsClient &)

RDRMRightsClient ( const RDRMRightsClient & ) [private]

Parameters

const RDRMRightsClient &

~RDRMRightsClient()

IMPORT_C ~RDRMRightsClient ( ) [virtual]

Destructor.

Member Functions Documentation

AddDomainRO(const TDesC8 &, const TDesC8 &)

IMPORT_C TInt AddDomainRO ( const TDesC8 & aRoId,
const TDesC8 & aXmlData
)

AddDomainRO

Add the xml representation of the domain RO to the database

Parameters

const TDesC8 & aRoId : the rights object id of the domain ro
const TDesC8 & aXmlData : the xml data of the rights object

AddProtectedRecord(const TDesC8 &, TBool, const CDRMPermission &, const TDesC8 &, TDRMUniqueID &)

IMPORT_C TInt AddProtectedRecord ( const TDesC8 & aProtectedCek,
TBool aDomainRecord,
const CDRMPermission & aRightsObject,
const TDesC8 & aCID,
TDRMUniqueID & aID
)
Adds a protected RO where the CEK wrapped with another key.
Since
3.0

Parameters

const TDesC8 & aProtectedCek wrapped CEK
TBool aDomainRecord
const CDRMPermission & aRightsObject Rights object to be added.
const TDesC8 & aCID Content-ID.
TDRMUniqueID & aID

AddRecord(const TDesC8 &, const CDRMPermission &, const TDesC8 &, TDRMUniqueID &)

IMPORT_C TInt AddRecord ( const TDesC8 & aCEK,
const CDRMPermission & aRightsObject,
const TDesC8 & aCID,
TDRMUniqueID & aID
)
Adds the given rights object into rights database.
Since
S60Rel2.5

Parameters

const TDesC8 & aCEK CEK.
const CDRMPermission & aRightsObject Rights object to be added.
const TDesC8 & aCID Content-ID.
TDRMUniqueID & aID

AddToCache(const TDesC8 &, const TTime &)

IMPORT_C TInt AddToCache ( const TDesC8 & aID,
const TTime & aTime
)

AddToReplayCache

Adds an entry to Replay Cache. Note! Does not check whether the entry is already in cache. Use IsInCache() first to determine whether the entry already exists.

Parameters

const TDesC8 & aID
const TTime & aTime

AddToCache(const TDesC8 &)

IMPORT_C TInt AddToCache ( const TDesC8 & aID )

AddToReplayCache

Adds an entry to Replay Cache. Note! Does not check whether the entry is already in cache. Use IsInCache() first to determine whether the entry already exists.

Parameters

const TDesC8 & aID

CalculatePadding(const TDesC8 &)

IMPORT_C TInt CalculatePadding ( const TDesC8 & aLastTwoDataBlocks )
Calculate the padding amount for a data block
Since
3.0

Parameters

const TDesC8 & aLastTwoDataBlocks

Cancel()

IMPORT_C void Cancel ( )

Cancel

Cancel any asynchronous operation.

Since
3.0

CheckConsume(const TInt, const TDesC8 &)

IMPORT_C TInt CheckConsume ( const TInt aIntent,
const TDesC8 & aContentID
)
Check if Consume is possible. Does not consume rights.
Since
3.0

Parameters

const TInt aIntent
const TDesC8 & aContentID

CheckRights(const TInt, const TDesC8 &, TUint32 &)

IMPORT_C TInt CheckRights ( const TInt aIntent,
const TDesC8 & aContentID,
TUint32 & aRejection
)

This method checks whether the caller has sufficient rights over the content at this very moment.

Parameters

const TInt aIntent Intended usage.
const TDesC8 & aContentID Content-ID.
TUint32 & aRejection

Close()

IMPORT_C void Close ( )
This function closes the connection between the client and the server. It is safe to call this method even if connection is not established.
Since
S60Rel2.5

Connect()

IMPORT_C TInt Connect ( )
This method opens the connection between the client and the server.
Since
2.5

Consume(const TInt, const TDesC8 &)

IMPORT_C TInt Consume ( const TInt aIntent,
const TDesC8 & aContentID
)
Consume the right with specific contentID and intent
Since
2.5

Parameters

const TInt aIntent
const TDesC8 & aContentID

Count()

IMPORT_C TInt Count ( )
Returns the amount of unique URIs in the database.
Since
2.5

DecodeRightsIssuerField(const TDesC8 &, HBufC8 *&)

IMPORT_C TInt DecodeRightsIssuerField ( const TDesC8 & aEncoded,
HBufC8 *& aDecoded
)

Parameters

const TDesC8 & aEncoded
HBufC8 *& aDecoded

Decrypt(const TDesC8 &, TPtr8 &, TBool)

IMPORT_C TInt Decrypt ( const TDesC8 & aIv,
TPtr8 & aData,
TBool aRemovePadding = EFalse
)

Decrypts data using the session key. Padding will be removed if requested.

Parameters

const TDesC8 & aIv AES CBC initialization vector
TPtr8 & aData data to be encrypted, encrypted data on return
TBool aRemovePadding = EFalse

DeleteAll()

IMPORT_C TInt DeleteAll ( )
Empties the rights database totally.
Since
2.5

DeleteDbEntry(const TDesC8 &)

IMPORT_C TInt DeleteDbEntry ( const TDesC8 & aContentID )
Deletes all rights objects with specified Content-ID.
Since
S60Rel2.5

Parameters

const TDesC8 & aContentID Content-ID of the rights objects to be deleted.

DeleteDbEntry(const TDesC8 &, const TDRMUniqueID &)

IMPORT_C TInt DeleteDbEntry ( const TDesC8 & aContentID,
const TDRMUniqueID & aUniqueID
)
Deletes one rights object, identified by Content-ID and unique ID.
Since
S60Rel2.5

Parameters

const TDesC8 & aContentID Content-ID of the rights object.
const TDRMUniqueID & aUniqueID Unique ID.

DeleteDomainRO(const TDesC8 &)

IMPORT_C TInt DeleteDomainRO ( const TDesC8 & aRoId )

DeleteDomainRO

Delete the xml representation of the domain RO from the database

Parameters

const TDesC8 & aRoId : the rights object id of the domain ro

DeleteExpiredPermissions(TRequestStatus &)

IMPORT_C void DeleteExpiredPermissions ( TRequestStatus & aStatus )

DeleteExpiredPermissions

Deletes expired permissions from the rights database Note this function will possibly take a lot of time to complete and if the drm time is not available it does not touch any time based rights

Parameters

TRequestStatus & aStatus

DeleteMeteringDataL(const TDesC8 &)

IMPORT_C TInt DeleteMeteringDataL ( const TDesC8 & aRiId )

Deletes the metering data of the requested rights-issuer id

Since
3.2

Parameters

const TDesC8 & aRiId : Rights-Issuer Id for which the metering data is deleted

EncodeRightsIssuerField(const TDesC8 &, HBufC8 *&)

IMPORT_C TInt EncodeRightsIssuerField ( const TDesC8 & aOldValue,
HBufC8 *& aNewValue
)

Parameters

const TDesC8 & aOldValue
HBufC8 *& aNewValue

Encrypt(const TDesC8 &, TPtr8 &, TBool)

IMPORT_C TInt Encrypt ( const TDesC8 & aIv,
TPtr8 & aData,
TBool aAddPadding = EFalse
)

Encrypts data using the session key. The data parameter must have enough space to accomodate for the addition of the paddding if it shall be added (up to 32 bytes more data)

Parameters

const TDesC8 & aIv AES CBC initialization vector
TPtr8 & aData data to be encrypted, encrypted data on return
TBool aAddPadding = EFalse

ExportContentIDList(TDes &)

IMPORT_C TInt ExportContentIDList ( TDes & aFileName )
Exports all content ID's from the database to a file.
Since
S60Rel2.5

Parameters

TDes & aFileName Out-parameter: contains the name of the file if the method completes with KErrNone. The descriptor parameter is assumed to be large enough. The caller is responsible of deleting the file afterwards.

ExportContentIDList(RPointerArray< HBufC8 > &)

IMPORT_C TInt ExportContentIDList ( RPointerArray < HBufC8 > & aCIDList )
This method exports all Content-IDs from the database file in an array. The caller is responsible of destroying the array afterwards.
Since
S60Rel2.5

Parameters

RPointerArray < HBufC8 > & aCIDList An out-parameter: contains the Content-IDs after successful return.

ExportOrphanedContentIdList(TDes &)

IMPORT_C TInt ExportOrphanedContentIdList ( TDes & aFileName )
Exports all orphaned content ID's from the database to a file.
Since
3.0

Parameters

TDes & aFileName Out-parameter: contains the name of the file if the method completes with KErrNone. The descriptor parameter is assumed to be large enough. The caller is responsible of deleting the file afterwards.

ExportOrphanedContentIdList(RPointerArray< HBufC8 > &)

IMPORT_C TInt ExportOrphanedContentIdList ( RPointerArray < HBufC8 > & aContentIdList )
Exports all orphaned content ID's from the database in an array. The caller is responsible of destroying the array afterwards.
Since
3.0

Parameters

RPointerArray < HBufC8 > & aContentIdList : An out-parameter: contains the Content-IDs after successful return.

FileToListL(RFs &, const TDesC &, RPointerArray< CDRMPermission > &)

void FileToListL ( RFs & aFs,
const TDesC & aFileName,
RPointerArray < CDRMPermission > & aList
) [private]
Convert internally used temporary file into list.
Since
S60Rel2.5

Parameters

RFs & aFs Open file server session.
const TDesC & aFileName Source file name
RPointerArray < CDRMPermission > & aList Destination list.

ForwardLockURI(HBufC8 *&)

IMPORT_C TInt ForwardLockURI ( HBufC8 *& aURI )

Parameters

HBufC8 *& aURI

GetActiveRightsL(const TInt, const TDesC8 &, TUint32 &)

IMPORT_C CDRMPermission * GetActiveRightsL ( const TInt aIntent,
const TDesC8 & aContentID,
TUint32 & aRejection
)

This method checks whether the caller has sufficient rights over the content at this very moment. It also returns the active rights.

Parameters

const TInt aIntent Intended usage.
const TDesC8 & aContentID Content-ID.
TUint32 & aRejection

GetAuthenticationSeed(const TDesC8 &, TDes8 &)

IMPORT_C TInt GetAuthenticationSeed ( const TDesC8 & aContentId,
TDes8 & aSeed
)
GSets the authentication seed data for a content ID
Since
3.0

Parameters

const TDesC8 & aContentId
TDes8 & aSeed Authentication seed

GetDBEntriesL(const TDesC8 &, RPointerArray< CDRMPermission > &)

IMPORT_C void GetDBEntriesL ( const TDesC8 & aId,
RPointerArray < CDRMPermission > & aRightsList
)
Gets all database entries related to specified Content-ID.
Since
S60Rel2.5

Parameters

const TDesC8 & aId Content ID.
RPointerArray < CDRMPermission > & aRightsList List of rights objects.

GetDbEntryL(const TDesC8 &, const TDRMUniqueID &)

IMPORT_C CDRMPermission * GetDbEntryL ( const TDesC8 & aContentID,
const TDRMUniqueID & aUniqueID
)
Gets a database entry related to given content ID and unique ID.
Since
S60Rel2.5

Parameters

const TDesC8 & aContentID Content-ID.
const TDRMUniqueID & aUniqueID Unique identifier.

GetDecryptionKey(const TInt, const TDesC8 &, TDes8 &)

IMPORT_C TInt GetDecryptionKey ( const TInt aIntent,
const TDesC8 & aContentID,
TDes8 & aKey
)

Returns the decryption key to the content.

Since
2.5

Parameters

const TInt aIntent In-parameter: How the content is going to be consumed.
const TDesC8 & aContentID Content-ID of the related content.
TDes8 & aKey Out-parameter: Contains the key if function returns successfully.

GetDomainROL(const TDesC8 &)

IMPORT_C HBufC8 * GetDomainROL ( const TDesC8 & aRoId )

GetDomainROL

Get the xml representation of the domain RO from the database

Parameters

const TDesC8 & aRoId : the rights object id of the domain ro

GetDomainRosForCidL(const TDesC8 &, RPointerArray< HBufC8 > &)

IMPORT_C void GetDomainRosForCidL ( const TDesC8 & aContentId,
RPointerArray < HBufC8 > & aRoList
)

GetDomainRoForCidL

Get the domain RO for a content ID from the database

Parameters

const TDesC8 & aContentId the content ID of the domain ro
RPointerArray < HBufC8 > & aRoList list of domain rights objects for this ID

GetEstimatedArrival(const TDesC8 &, TTimeIntervalSeconds &)

IMPORT_C TInt GetEstimatedArrival ( const TDesC8 & aContentID,
TTimeIntervalSeconds & aDeltaSeconds
)

GetEstimatedArrival

Gets the time in which the rights object should arrive

Since
3.0

Parameters

const TDesC8 & aContentID : content URI
TTimeIntervalSeconds & aDeltaSeconds : time in seconds to wait for rights -1 if the content should have arrived

GetMeteringDataL(const TDesC8 &)

IMPORT_C HBufC8 * GetMeteringDataL ( const TDesC8 & aRiId )

Returns the metering data for the requested rights-issuer id

Since
3.2

Parameters

const TDesC8 & aRiId : Rights-Issuer Id for which the metering data is acquired

GetName(const TDesC8 &, HBufC *&)

IMPORT_C TInt GetName ( const TDesC8 & aContentID,
HBufC *& aName
)

GetName

Retrieves the human-readable name associated to given content-ID

Since
3.0

Parameters

const TDesC8 & aContentID
HBufC *& aName

GetRandomDataL(TDes8 &)

IMPORT_C void GetRandomDataL ( TDes8 & aRandomData ) const

Fills the input buffer with random data. The length of the aRandomData must be set to the correct value.

Since
3.1

Parameters

TDes8 & aRandomData : Out-parameter that will be filled with random data

GetSupportedIndividualsL(RPointerArray< HBufC8 > &)

IMPORT_C TInt GetSupportedIndividualsL ( RPointerArray < HBufC8 > & aIndividuals ) const

Retrieve the individuals from the Rights Server so proper comparisons of rights object validity can be performed outside of the rights server

Since
3.1

Parameters

RPointerArray < HBufC8 > & aIndividuals : Pointer array of the individuals supported

GetUdtData(TDes8 &)

IMPORT_C TInt GetUdtData ( TDes8 & aUdtData )

GetUdtData

Retrieves the udt data from the server

Since
3.0

Parameters

TDes8 & aUdtData

InitOrphanedContentIdList(TBool, TRequestStatus &)

IMPORT_C void InitOrphanedContentIdList ( TBool aPerformScan,
TRequestStatus & aStatus
)

Initializes the export all orphaned content ID's. When the request completes, you can ask for the contents with the ExportOrphanedContentIdList functions

Since
3.0

Parameters

TBool aPerformScan : ETrue if file system scan needs to be performed EFalse if not
TRequestStatus & aStatus : Request status for the asynchronous call

InitializeGroupKey(const TDesC8 &, const TDesC8 &, TEncryptionMethod)

IMPORT_C TInt InitializeGroupKey ( const TDesC8 & aGroupId,
const TDesC8 & aGroupKey,
TEncryptionMethod aMethod
)

Similar to InitializeKeyL, but sets the key by using a group key as the input.

Parameters

const TDesC8 & aGroupId
const TDesC8 & aGroupKey Group key
TEncryptionMethod aMethod

InitializeKey(const TDesC8 &)

IMPORT_C TInt InitializeKey ( const TDesC8 & aContentId )

Sets the key for subsequent encryption and decryption operations. The key is stored on the server side in the session and will be usable until the session is closed. The key will be fetched from the rights database by looking up the content ID.

Parameters

const TDesC8 & aContentId Content ID to get the key for

InitiateUdt(const TDesC8 &)

IMPORT_C TInt InitiateUdt ( const TDesC8 & aKey )

InitializeUdt

Initializes the user data transfer

Since
3.0

Parameters

const TDesC8 & aKey : Encryption key of the udt file encrypted with the device public key

IsInCache(const TDesC8 &, const TTime &, TBool &)

IMPORT_C TInt IsInCache ( const TDesC8 & aID,
const TTime & aTime,
TBool & aInCache
)

IsInReplayCache

Checks whether the protected RO identified by aID and aTime has already been added to Replay Cache.

Parameters

const TDesC8 & aID
const TTime & aTime
TBool & aInCache

IsInCache(const TDesC8 &, TBool &)

IMPORT_C TInt IsInCache ( const TDesC8 & aID,
TBool & aInCache
)

IsInReplayCache

Checks whether the protected RO identified by aID has already been added to Replay Cache.

Parameters

const TDesC8 & aID
TBool & aInCache

SetAuthenticationSeed(const TDesC8 &, const TDesC8 &)

IMPORT_C TInt SetAuthenticationSeed ( const TDesC8 & aContentId,
const TDesC8 & aSeed
)
Sets the authentication seed data for a content ID
Since
3.0

Parameters

const TDesC8 & aContentId
const TDesC8 & aSeed Authentication seed

SetEstimatedArrival(const TDesC8 &, TTimeIntervalSeconds)

IMPORT_C TInt SetEstimatedArrival ( const TDesC8 & aContentID,
TTimeIntervalSeconds aDeltaSeconds
)

SetEstimatedArrival

Sets the time in which the rights object should arrive

Since
3.0

Parameters

const TDesC8 & aContentID : content URI
TTimeIntervalSeconds aDeltaSeconds : time in seconds to wait for rights

SetName(const TDesC8 &, const TDesC &)

IMPORT_C TInt SetName ( const TDesC8 & aContentID,
const TDesC & aName
)

SetName

Associates a human-readable name to given content-ID.

Since
3.0

Parameters

const TDesC8 & aContentID
const TDesC & aName

StartServer()

IMPORT_C TInt StartServer ( ) [static]
Starts the rights server in case it is not yet started. It is safe to call this method even if the server is running.
Since
S60Rel3.0

StopWatching()

IMPORT_C void StopWatching ( ) const

Stop watching the DCF repository server

Since
3.1

URIFileToArrayL(RFs &, const TDesC &, RPointerArray< HBufC8 > &)

void URIFileToArrayL ( RFs & aFs,
const TDesC & aFile,
RPointerArray < HBufC8 > & aList
) [private]
Converts a file of URIs into an array.
Since
S60Rel2.5

Parameters

RFs & aFs Open file server session.
const TDesC & aFile Input file.
RPointerArray < HBufC8 > & aList Output list.

UnwrapMacAndRek(const TDesC8 &, TKeyTransportScheme, const TDesC8 &, const TDesC8 &)

IMPORT_C TInt UnwrapMacAndRek ( const TDesC8 & aMacAndRek,
TKeyTransportScheme aTransportScheme,
const TDesC8 & aRightsIssuerId,
const TDesC8 & aDomainId
) const

Unwraps MAC and REK keys that are protected using device public key or domain key. If the keys are wrapped with device public key aDomainId parameter must be set to zero length.

Since
3.1

Parameters

const TDesC8 & aMacAndRek : Public key protected MAC and REK keys
TKeyTransportScheme aTransportScheme
const TDesC8 & aRightsIssuerId
const TDesC8 & aDomainId

VerifyMacL(const TDesC8 &, const TDesC8 &)

IMPORT_C TInt VerifyMacL ( const TDesC8 & aSignedInfoElement,
const TDesC8 & aMacValue
) const

Integrity protection for protected ROs. Calculates HMAC value usign aSignedInfoElement and MAC key. MAC key is unwrapped in AddRecord method. So AddRecord must be called successfully before this method can be called.

Since
3.0

Parameters

const TDesC8 & aSignedInfoElement Complete XML ro element <roap:ro>
const TDesC8 & aMacValue MAC value from protectedRO element

operator=(const RDRMRightsClient &)

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

Parameters

const RDRMRightsClient &

Member Data Documentation

TAny * iPtr

TAny * iPtr [private]