# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1271250906 -10800 # Node ID 8cdda00a45da33b8a0e990f8cb42372077792715 # Parent a20e54f39dd4a9912334fed796a2fe3cc700e77b Revision: 201013 Kit: 201015 diff -r a20e54f39dd4 -r 8cdda00a45da drm_plat/drm_common_api/tsrc/data/mmc/DRM/content.dcf diff -r a20e54f39dd4 -r 8cdda00a45da drm_plat/drm_rights_api/tsrc/data/c/content.dcf diff -r a20e54f39dd4 -r 8cdda00a45da drm_plat/group/bld.inf --- a/drm_plat/group/bld.inf Wed Mar 31 22:01:10 2010 +0300 +++ b/drm_plat/group/bld.inf Wed Apr 14 16:15:06 2010 +0300 @@ -30,6 +30,7 @@ #include "../drm_agents_api/group/bld.inf" #include "../wmdrm_core_api/group/bld.inf" #include "../wmdrm_access_api/group/bld.inf" +#include "../wmdrm_ota_access_api/group/bld.inf" #if (defined __WINDOWS_MEDIA_DRM) #include "../camese_utility_api/group/bld.inf" diff -r a20e54f39dd4 -r 8cdda00a45da drm_plat/wmdrm_ota_access_api/group/bld.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/drm_plat/wmdrm_ota_access_api/group/bld.inf Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,32 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* File that exports the files belonging to WMDRM Ota API +* +*/ + + +#include + +PRJ_PLATFORMS +DEFAULT + +PRJ_EXPORTS +../inc/wmdrmotaaccess.h MW_LAYER_PLATFORM_EXPORT_PATH(wmdrmotaaccess.h) + +../inc/wmdrmotaaccessecominterface.h \ + MW_LAYER_PLATFORM_EXPORT_PATH(wmdrmotaaccessecominterface.h) + +../inc/wmdrmotaaccessecominterface.inl \ + MW_LAYER_PLATFORM_EXPORT_PATH(wmdrmotaaccessecominterface.inl) diff -r a20e54f39dd4 -r 8cdda00a45da drm_plat/wmdrm_ota_access_api/inc/wmdrmotaaccess.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/drm_plat/wmdrm_ota_access_api/inc/wmdrmotaaccess.h Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,118 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* wmdrmotaaccess.h +* +*/ + +#ifndef _WMDRM_OTA_ACCESS_API_H_ +#define _WMDRM_OTA_ACCESS_API_H_ + +// Forward declarations +class CWmDrmOtaAccessEcomInterface; + +// Class declaration +/** +* Provides access to WM DRM Over-the-Air +* Functionality +* +* @code +* // Way to use CWmDrmOtaAccess +* +* CWmDrmOtaAccess* access( CWmDrmOtaAccess::NewL() ); +* delete access; +* @endcode +* +*/ +NONSHARABLE_CLASS( CWmDrmOtaAccess ) : public CBase + { +public: + /** Constructors */ + IMPORT_C static CWmDrmOtaAccess* NewL(); + IMPORT_C static CWmDrmOtaAccess* NewLC(); + + /** Destructor */ + IMPORT_C virtual ~CWmDrmOtaAccess(); + + /** + * GetLicenseChallengeL + * Syncronous method + * + * Get the license challenge that can be sent to the server to fetch + * a license + * + * @param aDrmHeader IN The drm header + * @param aChallenge OUT Resulting Challenge + * @return None + * @leave Symbian OS error codes + */ + IMPORT_C void GetLicenseChallengeL( const TDesC8& aDrmHeader, + HBufC8*& aChallenge ); + + /** + * GetLicenseChallengeL + * Asyncronous method + * + * Get the license challenge that can be sent to the server to fetch + * a license + * + * @param aDrmHeader IN The drm header + * @param aChallenge OUT Resulting Challenge + * @param aStatus OUT Asyncronous request status + * @return None + * @leave Symbian OS error codes + */ + IMPORT_C void GetLicenseChallengeL( const TDesC8& aDrmHeader, + HBufC8*& aChallenge, + TRequestStatus& aStatus ); + + /** + * HandleLicenseResponseL + * Syncronous method + * + * Handle the response received from the server in correspondence + * to the license challenge + * + * @param aResponse IN The license response + * @return None + * @leave Symbian OS error codes + */ + IMPORT_C void HandleLicenseResponseL( const TDesC8& aResponse ); + + /** + * GetLicenseChallengeL + * Asyncronous method + * + * Handle the response received from the server in correspondence + * to the license challenge + * + * @param aResponse IN The license response + * @param aStatus OUT Asyncronous request status + * @return None + * @leave Symbian OS error codes + */ + IMPORT_C void HandleLicenseResponseL( const TDesC8& aResponse, + TRequestStatus& aStatus ); + +private: + /** Default constructor */ + CWmDrmOtaAccess(); + /** Second phase constructor */ + void ConstructL(); + + /** Internal interface to the WM DRM system */ + CWmDrmOtaAccessEcomInterface* iWmDrmOtaAccessEcomInterface; + + }; +#endif // _WMDRM_OTA_ACCESS_API_H_ diff -r a20e54f39dd4 -r 8cdda00a45da drm_plat/wmdrm_ota_access_api/inc/wmdrmotaaccessecominterface.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/drm_plat/wmdrm_ota_access_api/inc/wmdrmotaaccessecominterface.h Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,104 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* wmdrmotaaccessecominterface.h +* +*/ + +#ifndef _WMDRMOTAACCESSECOMINTERFACE_H_ +#define _WMDRMOTAACCESSECOMINTERFACE_H_ + +#include + +// Class declaration +// CWmDrmAccessEcomInterface +// ecom plugin interface for WM DRM access implementation +// @see CWmDrmAccess +NONSHARABLE_CLASS( CWmDrmOtaAccessEcomInterface ) : public CBase + { +public: + // Constructors + static CWmDrmOtaAccessEcomInterface* NewL(); + static CWmDrmOtaAccessEcomInterface* NewLC(); + + // Destructor + virtual ~CWmDrmOtaAccessEcomInterface(); + + /** + * GetLicenseChallengeL + * Syncronous method + * + * Get the license challenge that can be sent to the server to fetch + * a license + * + * @param aDrmHeader IN The drm header + * @param aChallenge OUT Resulting Challenge + * @return None + * @leave Symbian OS error codes + */ + virtual void GetLicenseChallengeL( const TDesC8& aDrmHeader, + HBufC8*& aChallenge ) = 0; + + /** + * GetLicenseChallengeL + * Asyncronous method + * + * Get the license challenge that can be sent to the server to fetch + * a license + * + * @param aDrmHeader IN The drm header + * @param aChallenge OUT Resulting Challenge + * @param aStatus OUT Asyncronous request status + * @return None + * @leave Symbian OS error codes + */ + virtual void GetLicenseChallengeL( const TDesC8& aDrmHeader, + HBufC8*& aChallenge, + TRequestStatus& aStatus ) = 0; + + /** + * HandleLicenseResponseL + * Syncronous method + * + * Handle the response received from the server in correspondence + * to the license challenge + * + * @param aResponse IN The license response + * @return None + * @leave Symbian OS error codes + */ + virtual void HandleLicenseResponseL( const TDesC8& aResponse ) = 0; + + /** + * GetLicenseChallengeL + * Asyncronous method + * + * Handle the response received from the server in correspondence + * to the license challenge + * + * @param aResponse IN The license response + * @param aStatus OUT Asyncronous request status + * @return None + * @leave Symbian OS error codes + */ + virtual void HandleLicenseResponseL( const TDesC8& aResponse, + TRequestStatus& aStatus ) = 0; + +private: + // internal variable used on freeing ecom related resources + TUid iDtor_ID_Key; + }; + +#include "wmdrmotaaccessecominterface.inl" +#endif _WMDRMOTAACCESSECOMINTERFACE_H_ diff -r a20e54f39dd4 -r 8cdda00a45da drm_plat/wmdrm_ota_access_api/inc/wmdrmotaaccessecominterface.inl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/drm_plat/wmdrm_ota_access_api/inc/wmdrmotaaccessecominterface.inl Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,67 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* wmdrmotaaccessecominterface.inl +* +*/ + +#include // for interface + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccessEcomInterface::NewL +// --------------------------------------------------------------------------- +// +CWmDrmOtaAccessEcomInterface* CWmDrmOtaAccessEcomInterface::NewL() + { + const TUid KWmdrmOtaAccessEcomInterfaceUid = + { + 0x2002E67D + }; + TAny* theImplementation( NULL ); + + TEComResolverParams resolveParams; + resolveParams.SetWildcardMatch( ETrue ); + + theImplementation = REComSession::CreateImplementationL( + KWmdrmOtaAccessEcomInterfaceUid, + _FOFF( CWmDrmOtaAccessEcomInterface, iDtor_ID_Key ), + resolveParams ); + + return reinterpret_cast( theImplementation ); + } + + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccessEcomInterface::NewLC +// --------------------------------------------------------------------------- +// +CWmDrmOtaAccessEcomInterface* CWmDrmOtaAccessEcomInterface::NewLC() + { + CWmDrmOtaAccessEcomInterface* self( CWmDrmOtaAccessEcomInterface::NewL() ); + + CleanupStack::PushL( self ); + return self; + } + + + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccessEcomInterface::~CWmDrmOtaAccessEcomInterface +// --------------------------------------------------------------------------- +// +CWmDrmOtaAccessEcomInterface::~CWmDrmOtaAccessEcomInterface() + { + REComSession::DestroyedImplementation( iDtor_ID_Key ); + } + diff -r a20e54f39dd4 -r 8cdda00a45da drm_plat/wmdrm_ota_access_api/wmdrm_ota_access_api.metaxml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/drm_plat/wmdrm_ota_access_api/wmdrm_ota_access_api.metaxml Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,15 @@ + + + WMDRM Ota Access API + Platform API to access WMDRM Ota Interface + c++ + wmdrm + + + + + + no + no + + diff -r a20e54f39dd4 -r 8cdda00a45da drm_pub/oma_drm_caf_agent_api/tsrc/bc/DRM_CAF/data/content.dcf diff -r a20e54f39dd4 -r 8cdda00a45da omadrm/drmengine/drmclock/Src/DRMClockClient.cpp --- a/omadrm/drmengine/drmclock/Src/DRMClockClient.cpp Wed Mar 31 22:01:10 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,174 +0,0 @@ -/* -* Copyright (c) 2003 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Client side class implementation -* -*/ - - -// INCLUDE FILES -#include "DRMClockClient.h" -#include "DRMClientServer.h" - -#include "DRMLog.h" - -// EXTERNAL DATA STRUCTURES -// EXTERNAL FUNCTION PROTOTYPES - -// CONSTANTS -// MACROS - -// LOCAL CONSTANTS AND MACROS -// To initialize C/S parameters. -#define PARAMS TAny* params[ KMaxMessageArguments ]; \ -for ( TUint8 i = 0; i < KMaxMessageArguments; ++i ) { params[ i ] = NULL; } -#define CLEARPARAM Mem::FillZ( params, \ -KMaxMessageArguments * sizeof( TAny* ) ); - -// Maximum number of message slots that we use -const TInt KMaxMessageSlots = 3; - - -// MODULE DATA STRUCTURES -// LOCAL FUNCTION PROTOTYPES - -// FORWARD DECLARATIONS - -// ============================= LOCAL FUNCTIONS =============================== - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// RDRMClockClient::RDRMClockClient -// C++ default constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -EXPORT_C RDRMClockClient::RDRMClockClient() - { - } - -// ----------------------------------------------------------------------------- -// RDRMClockClient::~RDRMClockClient -// Destructor. -// ----------------------------------------------------------------------------- -// -EXPORT_C RDRMClockClient::~RDRMClockClient() - { - } - -// ----------------------------------------------------------------------------- -// RDRMClockClient::Connect -// Opens connection to the server. -// ----------------------------------------------------------------------------- -// -EXPORT_C TInt RDRMClockClient::Connect() - { - TInt ret = KErrNone; - - DRMLOG( _L( "RDRMClockClient::Connect" ) ); - - const TVersion requiredVersion( - DRMClock::KServerMajorVersion, - DRMClock::KServerMinorVersion, - DRMClock::KServerBuildVersion ); - - DRMLOG( _L("RDRMClockClient: Create a new session" ) ); - ret = CreateSession( DRMClock::KDRMServerName, - requiredVersion, - KMaxMessageSlots ); - - DRMLOG2( _L( "Result: %d") , ret ); - - return ret; - } - -// ----------------------------------------------------------------------------- -// RDRMClockClient::Close -// Closes the connection to the server. -// ----------------------------------------------------------------------------- -// -EXPORT_C void RDRMClockClient::Close() - { - DRMLOG( _L( "RDRMClockClient::Close" ) ); - - RHandleBase::Close(); - } - -// ----------------------------------------------------------------------------- -// RDRMClockClient::GetSecureTime -// Gets the secure time from the DRMClockServer -// ----------------------------------------------------------------------------- -// -EXPORT_C TInt RDRMClockClient::GetSecureTime( TTime& aTime, TInt& aTimeZone, - DRMClock::ESecurityLevel& aSecurityLevel ) - { - TPckg package(aTime); - TPckg package2(aTimeZone); - TPckg package3(aSecurityLevel); - - DRMLOG( _L( "RDRMClockClient::GetSecureTime" ) ); - TInt error = KErrNone; - - // For C/S communications. - PARAMS; - - // Set the parameters. - params[ 0 ] = reinterpret_cast< TAny* >( &package ); - params[ 1 ] = reinterpret_cast< TAny* >( &package2 ); - params[ 2 ] = reinterpret_cast< TAny* >( &package3 ); - - // Send the message. - error = SendReceive( DRMClock::EGetDRMTime, params ); - - // Reset - CLEARPARAM; - - DRMLOG2( _L( "RDRMClockClient::GetSecureTime: %d" ), error ); - - return error; - } - - -// ----------------------------------------------------------------------------- -// RDRMClockClient::UpdateSecureTime -// Updates the secure time on the DRMClockServer -// ----------------------------------------------------------------------------- -// -EXPORT_C TInt RDRMClockClient::UpdateSecureTime( const TTime& aTime, const TInt& aTimeZone ) - { - TInt error = KErrNone; - TPckg package(aTime); - TPckg package2(aTimeZone); - - DRMLOG( _L( "RDRMClockClient::UpdateSecureTime" ) ); - - // For C/S communications. - PARAMS; - - params[ 0 ] = reinterpret_cast< TAny* >( &package ); - params[ 1 ] = reinterpret_cast< TAny* >( &package2 ); - - error = SendReceive( DRMClock::EUpdateDRMTime, params ); - - CLEARPARAM; - - DRMLOG2( _L( "RDRMClockClient::UpdateSecureTime: " ), error ); - - // All done. - return error; - } - -// ========================== OTHER EXPORTED FUNCTIONS ========================= - -// End of File diff -r a20e54f39dd4 -r 8cdda00a45da omadrm/drmengine/roapstorage/inc/RoapStorageSession.h --- a/omadrm/drmengine/roapstorage/inc/RoapStorageSession.h Wed Mar 31 22:01:10 2010 +0300 +++ b/omadrm/drmengine/roapstorage/inc/RoapStorageSession.h Wed Apr 14 16:15:06 2010 +0300 @@ -157,8 +157,7 @@ void UpdateDrmTimeL( const RMessage2& aMessage ); - void - CRoapStorageSession::VerifyOcspResponsesL( const RMessage2& aMessage ); + void VerifyOcspResponsesL( const RMessage2& aMessage ); void GetOcspResponderIdL( const RMessage2& aMessage ); diff -r a20e54f39dd4 -r 8cdda00a45da omadrm/drmengine/server/inc/DRMPointerArray.h --- a/omadrm/drmengine/server/inc/DRMPointerArray.h Wed Mar 31 22:01:10 2010 +0300 +++ b/omadrm/drmengine/server/inc/DRMPointerArray.h Wed Apr 14 16:15:06 2010 +0300 @@ -39,7 +39,7 @@ TBool iDoResetAndDestroy; }; -template < class T > NONSHARABLE_CLASS( CDRMPointerArray ) : public CBase, public RDRMPointerArray< class T > +template < class T > NONSHARABLE_CLASS( CDRMPointerArray ) : public CBase, public RDRMPointerArray< T > { public: static CDRMPointerArray* NewLC( TInt aGranularity ); diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/camese/wmdrmdlaapp/src/wmdrmdlabrowsercontainer.cpp --- a/wmdrm/camese/wmdrmdlaapp/src/wmdrmdlabrowsercontainer.cpp Wed Mar 31 22:01:10 2010 +0300 +++ b/wmdrm/camese/wmdrmdlaapp/src/wmdrmdlabrowsercontainer.cpp Wed Apr 14 16:15:06 2010 +0300 @@ -34,8 +34,7 @@ { CreateWindowL(); SetRect( iView->ClientRect() ); - ActivateL(); - + iBrCtlInterface = CreateBrowserControlL( this, // parent control iView->ClientRect(), // client rect @@ -59,6 +58,7 @@ ETrue ); iBrCtlInterface->SetBrowserSettingL( TBrCtlDefs::ESettingsEmbedded, ETrue ); + ActivateL(); } // --------------------------------------------------------------------------- diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/camese/wmdrmdladefaulthttpplugin/src/wmdrmdladefaulthttpmanager.cpp --- a/wmdrm/camese/wmdrmdladefaulthttpplugin/src/wmdrmdladefaulthttpmanager.cpp Wed Mar 31 22:01:10 2010 +0300 +++ b/wmdrm/camese/wmdrmdladefaulthttpplugin/src/wmdrmdladefaulthttpmanager.cpp Wed Apr 14 16:15:06 2010 +0300 @@ -660,9 +660,9 @@ if ( (iState == EOpen) && iKeepAlive ) { TConnectionInfo connectionInfo; - GetConnectionInfoL(connectionInfo); - if ( connectionInfo.iIapId != iIapNumber && - iIapNumber != 0 && connectionInfo.iIapId != 0 ) + TRAPD(err, GetConnectionInfoL(connectionInfo) ); + if ( err || ( connectionInfo.iIapId != iIapNumber && + iIapNumber != 0 && connectionInfo.iIapId != 0 ) ) { CleanupConnection(); iState = EStart; diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/group/bld.inf --- a/wmdrm/group/bld.inf Wed Mar 31 22:01:10 2010 +0300 +++ b/wmdrm/group/bld.inf Wed Apr 14 16:15:06 2010 +0300 @@ -69,3 +69,5 @@ #endif // __WINDOWS_MEDIA_DRM #include "../wmdrmengine/wmdrmaccess/group/bld.inf" + +#include "../wmdrmengine/wmdrmotaaccess/group/bld.inf" diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/wmdrmengine/wmdrmotaaccess/bwins/wmdrmotaaccessu.def --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wmdrm/wmdrmengine/wmdrmotaaccess/bwins/wmdrmotaaccessu.def Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,9 @@ +EXPORTS + ??1CWmDrmOtaAccess@@UAE@XZ @ 1 NONAME ; CWmDrmOtaAccess::~CWmDrmOtaAccess(void) + ?NewL@CWmDrmOtaAccess@@SAPAV1@XZ @ 2 NONAME ; class CWmDrmOtaAccess * CWmDrmOtaAccess::NewL(void) + ?NewLC@CWmDrmOtaAccess@@SAPAV1@XZ @ 3 NONAME ; class CWmDrmOtaAccess * CWmDrmOtaAccess::NewLC(void) + ?HandleLicenseResponseL@CWmDrmOtaAccess@@QAEXABVTDesC8@@@Z @ 4 NONAME ; void CWmDrmOtaAccess::HandleLicenseResponseL(class TDesC8 const &) + ?GetLicenseChallengeL@CWmDrmOtaAccess@@QAEXABVTDesC8@@AAPAVHBufC8@@AAVTRequestStatus@@@Z @ 5 NONAME ; void CWmDrmOtaAccess::GetLicenseChallengeL(class TDesC8 const &, class HBufC8 * &, class TRequestStatus &) + ?HandleLicenseResponseL@CWmDrmOtaAccess@@QAEXABVTDesC8@@AAVTRequestStatus@@@Z @ 6 NONAME ; void CWmDrmOtaAccess::HandleLicenseResponseL(class TDesC8 const &, class TRequestStatus &) + ?GetLicenseChallengeL@CWmDrmOtaAccess@@QAEXABVTDesC8@@AAPAVHBufC8@@@Z @ 7 NONAME ; void CWmDrmOtaAccess::GetLicenseChallengeL(class TDesC8 const &, class HBufC8 * &) + diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/wmdrmengine/wmdrmotaaccess/eabi/wmdrmotaaccessu.def --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wmdrm/wmdrmengine/wmdrmotaaccess/eabi/wmdrmotaaccessu.def Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,11 @@ +EXPORTS + _ZN15CWmDrmOtaAccess4NewLEv @ 1 NONAME + _ZN15CWmDrmOtaAccess5NewLCEv @ 2 NONAME + _ZN15CWmDrmOtaAccessD0Ev @ 3 NONAME + _ZN15CWmDrmOtaAccessD1Ev @ 4 NONAME + _ZN15CWmDrmOtaAccessD2Ev @ 5 NONAME + _ZN15CWmDrmOtaAccess20GetLicenseChallengeLERK6TDesC8RP6HBufC8 @ 6 NONAME + _ZN15CWmDrmOtaAccess20GetLicenseChallengeLERK6TDesC8RP6HBufC8R14TRequestStatus @ 7 NONAME + _ZN15CWmDrmOtaAccess22HandleLicenseResponseLERK6TDesC8 @ 8 NONAME + _ZN15CWmDrmOtaAccess22HandleLicenseResponseLERK6TDesC8R14TRequestStatus @ 9 NONAME + diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/wmdrmengine/wmdrmotaaccess/group/bld.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wmdrm/wmdrmengine/wmdrmotaaccess/group/bld.inf Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,29 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* bld.inf +* +*/ + +#include + +PRJ_EXPORTS +../rom/wmdrmotaaccess.iby CORE_MW_LAYER_IBY_EXPORT_PATH( wmdrmotaaccess.iby ) + +PRJ_PLATFORMS +DEFAULT + +PRJ_MMPFILES +wmdrmotaaccess.mmp + diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/wmdrmengine/wmdrmotaaccess/group/wmdrmotaaccess.mmp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wmdrm/wmdrmengine/wmdrmotaaccess/group/wmdrmotaaccess.mmp Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,42 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* wmdrmotaaccess.mmp +* +*/ + +#include + +TARGET wmdrmotaaccess.dll +TARGETTYPE dll +UID 0x1000008D 0x2002E680 + +CAPABILITY ALL -TCB + +DEFFILE wmdrmotaaccess.def + +SOURCEPATH ../src +SOURCE wmdrmotaaccess.cpp + +MW_LAYER_SYSTEMINCLUDE + +USERINCLUDE ../inc + +LIBRARY euser.lib +LIBRARY ecom.lib + +LANG SC + +SMPSAFE +// End of File diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/wmdrmengine/wmdrmotaaccess/rom/wmdrmotaaccess.iby --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wmdrm/wmdrmengine/wmdrmotaaccess/rom/wmdrmotaaccess.iby Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,27 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* wmdrmotaaccess.iby +* +*/ + +#ifndef _WMDRMOTAACCESS_IBY_ +#define _WMDRMOTAACCESS_IBY_ +#include + +#if (defined __WINDOWS_MEDIA_DRM) +file=ABI_DIR\BUILD_DIR\wmdrmotaaccess.dll PROGRAMS_DIR\wmdrmotaaccess.dll +#endif // __WINDOWS_MEDIA_DRM + +#endif // _WMDRMACCESS_IBY_ diff -r a20e54f39dd4 -r 8cdda00a45da wmdrm/wmdrmengine/wmdrmotaaccess/src/wmdrmotaaccess.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wmdrm/wmdrmengine/wmdrmotaaccess/src/wmdrmotaaccess.cpp Wed Apr 14 16:15:06 2010 +0300 @@ -0,0 +1,143 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* wmdrmotaaccess.cpp +* +*/ + +#include +#include + +#include +#include + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::NewL +// --------------------------------------------------------------------------- +EXPORT_C CWmDrmOtaAccess* CWmDrmOtaAccess::NewL() + { + CWmDrmOtaAccess* self(CWmDrmOtaAccess::NewLC()); + CleanupStack::Pop(self); + return self; + } + + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::NewLC +// --------------------------------------------------------------------------- +EXPORT_C CWmDrmOtaAccess* CWmDrmOtaAccess::NewLC() + { + CWmDrmOtaAccess* self(new (ELeave) CWmDrmOtaAccess); + CleanupStack::PushL(self); + self->ConstructL(); + return self; + } + + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::ConstructL +// --------------------------------------------------------------------------- +void CWmDrmOtaAccess::ConstructL() + { + iWmDrmOtaAccessEcomInterface = CWmDrmOtaAccessEcomInterface::NewL(); + } + + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::CWmDrmOtaAccess +// --------------------------------------------------------------------------- +CWmDrmOtaAccess::CWmDrmOtaAccess() + { + } + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::~CWmDrmOtaAccess +// --------------------------------------------------------------------------- +EXPORT_C CWmDrmOtaAccess::~CWmDrmOtaAccess() + { + if (iWmDrmOtaAccessEcomInterface) + { + delete iWmDrmOtaAccessEcomInterface; + } + REComSession::FinalClose(); + } + + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::GetLicenseChallengeL +// --------------------------------------------------------------------------- +EXPORT_C void CWmDrmOtaAccess::GetLicenseChallengeL( const TDesC8& aDrmHeader, + HBufC8*& aChallenge ) + { + // Ecom interface not available + if( !iWmDrmOtaAccessEcomInterface ) + { + User::Leave( KErrNotReady ); + } + + iWmDrmOtaAccessEcomInterface->GetLicenseChallengeL( aDrmHeader, + aChallenge ); + } + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::GetLicenseChallengeL +// --------------------------------------------------------------------------- +EXPORT_C void CWmDrmOtaAccess::GetLicenseChallengeL( const TDesC8& aDrmHeader, + HBufC8*& aChallenge, + TRequestStatus& aStatus ) + { + // Ecom interface not available + if( !iWmDrmOtaAccessEcomInterface ) + { + User::Leave( KErrNotReady ); + } + + iWmDrmOtaAccessEcomInterface->GetLicenseChallengeL( aDrmHeader, + aChallenge, + aStatus ); + } + +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::HandleLicenseResponseL +// --------------------------------------------------------------------------- +EXPORT_C void CWmDrmOtaAccess::HandleLicenseResponseL( const TDesC8& aResponse ) + { + // Ecom interface not available + if( !iWmDrmOtaAccessEcomInterface ) + { + User::Leave( KErrNotReady ); + } + + iWmDrmOtaAccessEcomInterface->HandleLicenseResponseL( aResponse ); + } +// --------------------------------------------------------------------------- +// CWmDrmOtaAccess::HandleLicenseResponseL +// --------------------------------------------------------------------------- +EXPORT_C void CWmDrmOtaAccess::HandleLicenseResponseL( const TDesC8& aResponse, + TRequestStatus& aStatus ) + { + // Ecom interface not available + if( !iWmDrmOtaAccessEcomInterface ) + { + User::Leave( KErrNotReady ); + } + + iWmDrmOtaAccessEcomInterface->HandleLicenseResponseL( aResponse, + aStatus ); + } + + + + +// End of file