# HG changeset patch # User Tom Pritchard # Date 1288189550 -3600 # Node ID 458d62869c00622b367421368d1893cbc4eea071 # Parent 303d3e345b01b39efffaf2f225300d8a703737ad# Parent 9b61d901414f657f9dffe3199475dea8e6f093ef Merge william's latest changes before pushing diff -r 9b61d901414f -r 458d62869c00 breakdeps/DRMEngine/DRMClock.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/breakdeps/DRMEngine/DRMClock.cpp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,403 @@ +/* +* Copyright (c) 2003-2009 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: Implementation of the DRM Clock +* +*/ + + +// INCLUDE FILES + +#include + +#include "DRMClock.h" +#include "drmlog.h" +#include "DRMEventTimeChange.h" +#include "wmdrmfileserverclient.h" + +#include +#include +#include +#include +#include + +#ifdef RD_MULTIPLE_DRIVE +#include +#endif + +#include "DRMNitzObserver.h" +#include "GPSWatcher.h" + +// EXTERNAL DATA STRUCTURES + +// EXTERNAL FUNCTION PROTOTYPES + +// CONSTANTS +const TInt KMinuteInMicroseconds = 60000000; +const TInt KTimeZoneIncrement = 15; + +// The time zones sanity check values, not sure if -13 hours exists +// But atleast +13 does in: Nuku'Alofa +const TInt KTimeZoneLow = -52; // -13 hours +const TInt KTimeZoneHigh = 55; // +13 hours 45 minutes Some NZ owned island + + +// MACROS + +// LOCAL CONSTANTS AND MACROS + +// MODULE DATA STRUCTURES + +// LOCAL FUNCTION PROTOTYPES + +// FORWARD DECLARATIONS + +// ============================= LOCAL FUNCTIONS =============================== + + +// ============================ MEMBER FUNCTIONS =============================== + + +// ----------------------------------------------------------------------------- +// CDRMRightsDB::CDRMRightsDB +// C++ default constructor can NOT contain any code, that +// might leave. +// ----------------------------------------------------------------------------- +// +CDRMClock::CDRMClock() + { + }; + +// ----------------------------------------------------------------------------- +// CDRMRightsDB::ConstructL +// Symbian 2nd phase constructor can leave. +// ----------------------------------------------------------------------------- +// +void CDRMClock::ConstructL() + { + DRMLOG( _L( "DRM Clock Starting: " ) ); + TInt error = KErrNone; + + // Create a notifier instance + iNotifier = CDRMNotifier::NewL(); + +#if 0 //ndef __WINS__ + ConnectToPhoneL(); + + iObserver = CDRMNitzObserver::NewL( iPhone, const_cast(this)); + + iObserver->Start(); + + TRAP( error, iGpsWatcher = CGPSWatcher::NewL( const_cast(this) )); + DRMLOG2( _L("DRMClock: GPS watcher started: %d"), error ); +#endif + + DRMLOG( _L( "DRM Clock started" ) ); + }; + +// ----------------------------------------------------------------------------- +// CDRMClock::NewLC +// Two-phased constructor +// ----------------------------------------------------------------------------- +// +CDRMClock* CDRMClock::NewLC() + { + DRMLOG( _L( "CDRMClock::NewLC" ) ); + + CDRMClock* self = new(ELeave) CDRMClock; + CleanupStack::PushL( self ); + self->ConstructL(); + + DRMLOG( _L( "CDRMClock::NewLC ok" ) ); + + return self; + }; + +// ----------------------------------------------------------------------------- +// CDRMClock::NewL +// Two-phased constructor +// ----------------------------------------------------------------------------- +// +CDRMClock* CDRMClock::NewL() + { + DRMLOG( _L( "CDRMClock::NewL" ) ); + + CDRMClock* self = NewLC(); + CleanupStack::Pop(); + + DRMLOG( _L( "CDRMClock::NewL ok" ) ); + + return self; + }; + +// --------------------------------------------------------- +// CDRMClock::~CDRMClock +// Destructor +// --------------------------------------------------------- +// +CDRMClock::~CDRMClock() + { + DRMLOG( _L( "CDRMClock::~CDRMClock" ) ); + + if( iNotifier ) + { + delete iNotifier; + iNotifier = 0; + } + +#if 0 //ndef __WINS__ + if(iObserver) + { + iObserver->Cancel(); + delete iObserver; + iObserver = 0; + } + + if( iGpsWatcher ) + { + iGpsWatcher->Cancel(); + delete iGpsWatcher; + iGpsWatcher = 0; + } +#endif // __WINS__ + }; + +// ----------------------------------------------------------------------------- +// CDRMClock::GetSecureTime +// returns time and security level +// ----------------------------------------------------------------------------- +// +void CDRMClock::GetSecureTime(TTime& aTime, TInt& aTimeZone, + DRMClock::ESecurityLevel& aSecurityLevel) + { + DRMLOG( _L( "CDRMClock::GetSecureTime" ) ); + + TTime currentUniversal; + TTime currentHome; + TInt error = KErrNone; + + // if there is an error it's not initialized + error = aTime.UniversalTimeSecure(); + + if( error == KErrNoSecureTime ) + { + currentHome.HomeTime(); + currentUniversal.UniversalTime(); + + aTimeZone = ( currentHome.Int64() - currentUniversal.Int64() ) / + ( KMinuteInMicroseconds* KTimeZoneIncrement ); + + + aTime.UniversalTime(); + + aSecurityLevel = DRMClock::KInsecure; + + DRMLOG( _L( "CDRMClock::GetSecureTime: DRMClock is Insecure" ) ); + } + else + { + currentHome.HomeTimeSecure(); + currentUniversal.UniversalTimeSecure(); + + aTimeZone = ( currentHome.Int64() - currentUniversal.Int64() ) / + ( KMinuteInMicroseconds* KTimeZoneIncrement ); + + aSecurityLevel = DRMClock::KSecure; + DRMLOG( _L( "CDRMClock::GetSecureTime: DRMClock is Secure" ) ); + } + + DRMLOG( _L( "CDRMClock::GetSecureTime ok" ) ); + }; + + +// ----------------------------------------------------------------------------- +// CDRMClock::ResetSecureTimeL +// resets the secure time and recalculates the offsets +// should not reset to 0 +// ----------------------------------------------------------------------------- +// +// Do not reset the timezone, use whatever has been set or retrieved from the UI time +// However check that the timezone is a valid one just in case +void CDRMClock::ResetSecureTimeL( const TTime& aTime, const TInt& aTimeZone ) + { + DRMLOG( _L( "CDRMClock::ResetSecureTimeL" ) ); + + TRequestStatus status; + TInt error = KErrNone; + CDRMEventTimeChange* change = CDRMEventTimeChange::NewLC(); + TTime previousTime; + TTime previousTimeLocal; + TTime newTime; + TInt timezone = 0; + TDateTime temppi; // Only for logging + + // check for param that the time is even reasonably valid: + if( aTime.Int64() == 0 ) + { + DRMLOG( _L("Trying to reset to zero time") ); + User::Leave( KErrArgument ); + } + + // Sanity check: Time zone has to be +/- certail hours + // for this check -13h to +13.75h + if( aTimeZone < KTimeZoneLow || aTimeZone > KTimeZoneHigh ) + { + DRMLOG2( _L("TimeZone invalid, time may be as well, aborting change: %d"), aTimeZone ); + User::Leave( KErrArgument ); + } + + + // Get the current secure time with timezone + // Ask the hometime first so that rounding of any divider goes correctly + error = previousTimeLocal.HomeTimeSecure(); + + // If there is an error, the secure hometime has not been set + // Which means that the UI clock has the valid data + if( error ) + { + previousTimeLocal.HomeTime(); + previousTime.UniversalTime(); + timezone = ( previousTimeLocal.Int64() - previousTime.Int64() ) / + ( KMinuteInMicroseconds* KTimeZoneIncrement ); + change->SetOldSecurityLevel( DRMClock::KInsecure ); + } + else + { + previousTime.UniversalTimeSecure(); + + timezone = ( previousTimeLocal.Int64() - previousTime.Int64() ) / + ( KMinuteInMicroseconds* KTimeZoneIncrement ); + + change->SetOldSecurityLevel( DRMClock::KSecure ); + change->SetNewSecurityLevel( DRMClock::KSecure ); + } + + // Since it's not important to get the timezone we keep what is set or reset it: + previousTimeLocal = aTime.Int64() + ( timezone * ( KMinuteInMicroseconds* KTimeZoneIncrement ) ); + + // Do the actual updating: + // Update using the wmdrm fileserver since it has TCB capability + RWmDrmFileServerClient resetclient; + User::LeaveIfError( resetclient.Connect() ); + CleanupClosePushL( resetclient ); + + newTime = aTime; + User::LeaveIfError( resetclient.UpdateSecureTime( previousTimeLocal, newTime ) ); + + CleanupStack::PopAndDestroy(); + + + DRMLOG( _L( "CDRMClock::ResetSecureTimeL: AFTER RESET." )); + + // DRM Notifier data: + // send info about the change: + + change->SetNewSecurityLevel( DRMClock::KSecure ); + + change->SetOldTime( previousTime ); + change->SetOldTimeZone( timezone ); + + change->SetNewTime( aTime ); + change->SetNewTimeZone( timezone ); + + // Notify clients + + iNotifier->SendEventL(*change,status); + User::WaitForRequest(status); + CleanupStack::PopAndDestroy(); + + DRMLOG( _L( "CDRMClock::ResetSecureTimeL ok" ) ); + }; + +// --------------------------------------------------------- +// CDRMClock::Notify +// Notify DRM clock about an event +// --------------------------------------------------------- +// +void CDRMClock::Notify( TInt aNotify ) + { + switch( aNotify ) + { + case ENotifyGPSTimeReceived: + // GPS time received, listen again after the next boot, destroy GPS watcher: + DRMLOG(_L("Notify: ENotifyGPSTimeReceived, Deleting GPS watcher")); + delete iGpsWatcher; + iGpsWatcher = NULL; + DRMLOG(_L("Notify: GPS Watcher deleted")); + break; + case ENotifyNone: + default: + break; // Do nothing + } + } + + + + + +// --------------------------------------------------------- +// CDRMClock::ConnectToPhoneL(const TDateTime& aDateTime) +// Gets the nitz time from iNitzInfo +// --------------------------------------------------------- +// +void CDRMClock::ConnectToPhoneL() + { + DRMLOG( _L( "CDRMClock::ConnectToPhoneL" ) ); +#if 0 + const TInt KTriesToConnectServer(10); + const TInt KTimeBeforeRetryingServerConnection(100000); + TInt thisTry(0); + TInt err(KErrNone); + TInt numPhone; + TName tsyName; + RTelServer::TPhoneInfo phoneInfo; + RMobilePhone::TMobilePhoneSubscriberId imsi; + TRequestStatus status; + + + while ((err = iEtelServer.Connect()) != KErrNone && + (thisTry++) <= KTriesToConnectServer) + { + User::After(KTimeBeforeRetryingServerConnection); + } + User::LeaveIfError(err); + + User::LeaveIfError(iEtelServer.LoadPhoneModule(KMmTsyModuleName)); + User::LeaveIfError(iEtelServer.EnumeratePhones(numPhone)); + + for (TInt i(0); i < numPhone; i++) + { + User::LeaveIfError(iEtelServer.GetPhoneInfo(i, phoneInfo)); + User::LeaveIfError(iEtelServer.GetTsyName(i,tsyName)); + + if (tsyName.CompareF(KMmTsyModuleName) == 0) + { + break; + } + } + + User::LeaveIfError(iPhone.Open(iEtelServer, phoneInfo.iName)); + + iPhone.GetSubscriberId( status, imsi ); + User::WaitForRequest( status ); + + DRMLOG( imsi ); + #endif + DRMLOG( _L( "CDRMClock::ConnectToPhoneL ok" ) ); + }; + + +// ========================== OTHER EXPORTED FUNCTIONS ========================= + + +// End of File diff -r 9b61d901414f -r 458d62869c00 breakdeps/DRMEngine/DRMClock.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/breakdeps/DRMEngine/DRMClock.h Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,172 @@ +/* +* Copyright (c) 2003-2009 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: Interface for the DRMClock +* +*/ + + +#ifndef DRMCLOCK_H +#define DRMCLOCK_H + +// INCLUDES + +#include // CBase +#include +#include // Type definitions +#include +//#include +#include +#include + +// CONSTANTS + +// MACROS + +// DATA TYPES + +// FUNCTION PROTOTYPES + +// FORWARD DECLARATIONS +class CDRMNitzObserver; +class CDRMNotifier; +class CGPSWatcher; + +// CLASS DECLARATION + +/** +* CDRMClock implements the drm clock required by DRM Engine +* +* @lib unipertar.exe +* @since 2.8 +*/ +NONSHARABLE_CLASS( CDRMClock ) + { + public: + // Notifications: + enum + { + ENotifyNone = 0, + ENotifyGPSTimeReceived = 1 + }; + + public: + + /** + * NewLC + * + * Creates an instance of the CDRMClock class and returns a pointer to it + * The function leaves the object into the cleanup stack + * + * @since 2.8 + * @return Functional CDRMClock object, Function leaves if an error occurs. + */ + static CDRMClock* NewLC(); + + /** + * NewL + * + * Creates an instance of the CDRMClock class and returns a pointer to it + * + * @since 2.8 + * @return Functional CDRMClock object, Function leaves if an error occurs. + */ + static CDRMClock* NewL(); + + /** + * Destructor + */ + virtual ~CDRMClock(); + + /** + * GetSecureTime + * + * Return the current time and the security of the current time + * + * @since 2.8 + * @param aTime : return parameter for time in UTC + * @param aTimeZone : return parameter for the timezone in +/-15 minutes + * @param aSecurityLevel : return parameter for security level + * @return none + */ + void GetSecureTime(TTime& aTime, TInt& aTimeZone, + DRMClock::ESecurityLevel& aSecurityLevel); + + /** + * ResetSecureTimeL + * + * Resets the secure time source and recalculates the offsets + * + * @since 2.8 + * @param aSecureTime, the new secure time in UTC + * @param aTimeZone, the time zone of the new secure time in +/- 15 minutes + * @return none, Function leaves with Symbian OS error code if an + * error occurs + */ + void ResetSecureTimeL( const TTime& aSecureTime, const TInt& aTimeZone ); + + + /** + * Notify + * + * Notifies about an event to the DRM Clock + * + * @since 9.2 + * @param Message The notification event + * + */ + void Notify( TInt aMessage ); + + protected: + private: + /** + * Default Constructor - First phase + */ + CDRMClock(); + + /** + * ConstructL + * + * Second phase constructor + * + * @since 2.8 + * @return Leaves if an error occurs + */ + void ConstructL(); + + /** + * ConnectToPhoneL + * + * Connects to the phone services + * + * @since 2.8 + * @return Leaves with symbian os error codes if an error occurs + */ + void ConnectToPhoneL(); + + // Variables + CDRMNotifier* iNotifier; + + // Nitz information handles +#if 0 + RTelServer iEtelServer; + RMobilePhone iPhone; + CDRMNitzObserver* iObserver; +#endif + + // GPS watcher component, updates DRM time from GPS if available + CGPSWatcher* iGpsWatcher; + }; +#endif // DRMCLOCK_H + +// End of File diff -r 9b61d901414f -r 458d62869c00 breakdeps/DRMEngine/DRMRightsServer.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/breakdeps/DRMEngine/DRMRightsServer.cpp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,1544 @@ +/* +* Copyright (c) 2003 - 2007 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: DRM3 Engine manages all DRM related database operations. +* +*/ + + +// INCLUDE FILES +#include +#include +#include +#include +#include +#include + +#ifdef RD_MULTIPLE_DRIVE +#include +#endif + +#include "DRMRightsServer.h" +#include "drmrightsdb.h" +#include "DRMDbSession.h" +#include "DRMEngineClientServer.h" +#include "drmlog.h" +#include "DRMNotifier.h" +#include "DrmKeyStorage.h" +#include "DRMNotifierServer.h" +#include "RoapStorageServer.h" +#include "drmnotifierclientserver.h" +#include "drmroapclientserver.h" +#include "DRMXOma.h" +#include "DRMBackupObserver.h" +#include "DRMBackup.h" +#include "flogger.h" +#include "DrmRightsParser.h" +#include "DRMRights.h" +#include "DRMHelperCommon.h" + +#include "wmdrmclientwrapper.h" + + + +#ifdef __DRM_CLOCK +#include "DRMClockServer.h" +#include "drmclockclientserver.h" +#endif + +#include +#include + +/* +_LIT( KLogDir, "drm"); +_LIT( KLogName, "backup.log"); +*/ + +// EXTERNAL DATA STRUCTURES +// EXTERNAL FUNCTION PROTOTYPES +// CONSTANTS +LOCAL_C const TUint KMaxHeapsize = 0x7A120; + +_LIT8( KImsiId,"IMSI:"); + +// MACROS +#ifdef _DRM_TESTING +_LIT( KDateTimeFormat, "%F%Y%M%D%H%T%S%C" ); +#endif + +// LOCAL CONSTANTS AND MACROS +const TUint8 KMaxStartTries = 30; +const TInt KWaitingTime = 2000000; // 2 sec +_LIT( KRightsServerThread, "RightsServer" ); + +#ifdef RD_MULTIPLE_DRIVE + +_LIT( KDbTempPath, "%c:\\system\\temp\\" ); +_LIT( KIndividualConstraintExtensionDll, "%c:\\sys\\bin\\DRMIndividualConstraintExtension.dll" ); +_LIT( KRightsDir, "%c:\\private\\101F51F2\\rdb\\" ); +_LIT( KTimedReplayCacheFile, "%c:\\private\\101F51F2\\timererc.dat" ); +_LIT( KPlainReplayCacheFile, "%c:\\private\\101F51F2\\plainrc.dat" ); +#ifdef RD_DRM_METERING +_LIT( KMeteringDataBaseFile, "%c:\\private\\101F51F2\\meterdb.dat" ); +#endif + +#define USE_RO_IMPORT + +#ifdef USE_RO_IMPORT +_LIT( KInternalImportDir, "%c:\\private\\101F51F2\\import\\" ); +_LIT( KUserDiskImportDir, "%c:\\import\\" ); // usually embedded MMC +_LIT( KUserRemovableDiskImportDir, "%c:\\import\\" ); // usually external MMC +_LIT( KDrSuffix, ".dr" ); +#endif + +#else + +_LIT( KRightsDir, "c:\\private\\101F51F2\\rdb\\" ); +_LIT( KTimedReplayCacheFile, "c:\\private\\101F51F2\\timererc.dat" ); +_LIT( KPlainReplayCacheFile, "c:\\private\\101F51F2\\plainrc.dat" ); +#ifdef RD_DRM_METERING +_LIT( KMeteringDataBaseFile, "c:\\private\\101F51F2\\meterdb.dat" ); +#endif + +#define USE_RO_IMPORT + +#ifdef USE_RO_IMPORT +_LIT( KInternalImportDir, "c:\\private\\101F51F2\\import\\" ); +_LIT( KUserDiskImportDir, "e:\\import\\" ); +_LIT( KDrSuffix, ".dr" ); +#endif + +#endif + +_LIT(KWmDrmClientWrapperName, "wmdrmclientwrapper.dll"); + +// MODULE DATA STRUCTURES + +NONSHARABLE_STRUCT( TUnloadModule ) + { + RTelServer* iServer; + const TDesC* iName; + }; + +// LOCAL FUNCTION PROTOTYPES + +LOCAL_C TInt Startup( void ); +LOCAL_C void SignalClient(); +LOCAL_C TInt StartDBServer( void ); + +#if 1 //defined( __WINS__ ) +#else +#define DRM_USE_SERIALNUMBER_URI +#include +#endif + + +#ifdef DRM_USE_SERIALNUMBER_URI +LOCAL_C void DoUnloadPhoneModule( TAny* aAny ); +#endif + +// #define USE_RO_IMPORT + +// FORWARD DECLARATIONS + +// ============================= LOCAL FUNCTIONS =============================== +// ----------------------------------------------------------------------------- +// Function Startup(). +// This function starts the actual DRM Rights server after initializing +// the cleanup stack and active scheduler. +// Returns: TInt: Symbian OS error code. +// ----------------------------------------------------------------------------- +// +LOCAL_C TInt Startup( void ) + { + TInt error = KErrNone; + CTrapCleanup* trap = CTrapCleanup::New(); + CActiveScheduler* scheduler = new CActiveScheduler(); + + if ( trap && scheduler ) + { + CActiveScheduler::Install( scheduler ); + + error = StartDBServer(); + } + else + { + error = KErrNoMemory; + } + + delete scheduler; + scheduler = NULL; + + delete trap; + trap = NULL; + + if ( error ) + { + // Something went wrong. Release the client (if any). + SignalClient(); + + if ( error == KErrAlreadyExists ) + { + error = KErrNone; + } + } + + return error; + } + +// ----------------------------------------------------------------------------- +// Function SignalClient(). +// Signal the waiting client (one of them if any exists). +// ----------------------------------------------------------------------------- +// +void SignalClient( void ) + { + RSemaphore semaphore; + if ( !semaphore.OpenGlobal( DRMEngine::KDRMSemaphore ) ) + { + semaphore.Signal(); + semaphore.Close(); + } + } + +// ----------------------------------------------------------------------------- +// Function StartDBServer(). +// This function starts the actual server under TRAP harness and starts +// waiting for connections. This function returns only if there has been +// errors during server startup or the server is stopped for some reason. +// +// Returns: TInt: Symbian OS error code. +// ----------------------------------------------------------------------------- +TInt StartDBServer( void ) + { + TInt error = KErrNone; + CDRMRightsServer* server = NULL; + TUint8 count = 0; + + do + { + DRMLOG2( _L( "RightsServer.exe: StartDBServer: %d" ), error ); + + ++count; + + TRAP( error, ( server = CDRMRightsServer::NewL() ) ); + + if ( error ) + { + User::After( TTimeIntervalMicroSeconds32(KWaitingTime) ); + } + + } while( error && ( count <= KMaxStartTries ) ); + + if( error ) + { + DRMLOG2( _L( "RightsServer.exe: CDRMRightsServer::NewL failed: %d " ), error ); + // Failed + return error; + } + + // Release the semaphore if necessary. + SignalClient(); + + // Start waiting for connections + CActiveScheduler::Start(); + + // Dying... + // Delete CDRMRigntsServer + + DRMLOG( _L( "RightsServer.exe: DB server dying..." ) ); + + delete server; + + return KErrNone; + } + +#ifdef DRM_USE_SERIALNUMBER_URI +// ----------------------------------------------------------------------------- +// Function DoUnloadPhoneModule +// Unload phone module +// ----------------------------------------------------------------------------- +// +void DoUnloadPhoneModule( TAny* aAny ) + { + __ASSERT_DEBUG( aAny, User::Invariant() ); + TUnloadModule* module = ( TUnloadModule* ) aAny; + module->iServer->UnloadPhoneModule( *( module->iName ) ); + } +#endif + +#ifdef USE_RO_IMPORT +// ----------------------------------------------------------------------------- +// PointerArrayResetDestroyAndClose +// Template method used to push RPointerArrays to the cleanup stack. Takes +// care of deleting all pointers in the array. +// ----------------------------------------------------------------------------- +// +template +void PointerArrayResetDestroyAndClose(TAny* aPtr) + { + (reinterpret_cast*>(aPtr))->ResetAndDestroy(); + (reinterpret_cast*>(aPtr))->Close(); + } +#endif + +// ============================ MEMBER FUNCTIONS =============================== + +// CUsageUrl: + +//-------------------------------------------------------------------------- +// CUsageUrl::CUsageUrl +// Storage class default constructor +//-------------------------------------------------------------------------- +// +CUsageUrl::CUsageUrl() + { + } + +//-------------------------------------------------------------------------- +// CUsageUrl::~CUsageUrl +// Storage class destructor +//-------------------------------------------------------------------------- +// +CUsageUrl::~CUsageUrl() + { + delete iUrl; + } + +// CDRMRightsServer: + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::NewLC +// Two-phased constructor. +// ----------------------------------------------------------------------------- +// +CDRMRightsServer* CDRMRightsServer::NewL() + { + CDRMRightsServer* self = new( ELeave ) CDRMRightsServer(); + + CleanupStack::PushL( self ); + + self->ConstructL(); + + CleanupStack::Pop( self ); + + return self; + } + +// ----------------------------------------------------------------------------- +// Destructor +// ----------------------------------------------------------------------------- +CDRMRightsServer::~CDRMRightsServer() + { + DRMLOG( _L( "CDRMRightsServer::~" ) ); + + delete iIMEI; iIMEI = NULL; + + delete iIMSI; iIMSI = NULL; + + delete iDb; iDb = NULL; + + iClock.Close(); + iCache.Close(); + + iMeteringDb.Close(); + + iFs.Close(); + iActiveCountConstraints.ResetAndDestroy(); + iActiveCountConstraints.Close(); + + delete iBackupObserver; + delete iBackupHandler; + delete iActiveBackupClient; + delete iDbWatcher; + +#if 0 + // Close and delete the shared data client + if( iSharedDataClient ) + { + iSharedDataClient->Close(); + delete iSharedDataClient; + iSharedDataClient = NULL; + } +#endif + + if( iNotifier ) + { + delete iNotifier; iNotifier = NULL; + } + + iActiveUrls.ResetAndDestroy(); + + //An empty semaphore + RSemaphore semaphore; + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::GetSecureTime +// Fetch the time from (secure) source. +// ----------------------------------------------------------------------------- +// +TBool CDRMRightsServer::GetSecureTime( TTime& aTime ) const + { + DRMClock::ESecurityLevel secLevel = DRMClock::KInsecure; + + TInt timezone( 0 ); + + iClock.GetSecureTime( aTime, timezone, secLevel ); + + if( secLevel == DRMClock::KSecure ) + { + DRMLOG( _L( "CDRMRightsServer::GetSecureTime: Time is secure\r\n" ) ); + return ETrue; + } + + DRMLOG( _L( "CDRMRightsServer::GetSecureTime: Time is not secure\r\n" ) ); + + return EFalse; + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::Notifier +// Return a handle to DRM Notifier. +// ----------------------------------------------------------------------------- +// +CDRMNotifier& CDRMRightsServer::Notifier() + { + return *iNotifier; + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::Notifier +// Return a handle to DRM Notifier. +// ----------------------------------------------------------------------------- +// +CDRMRightsDB& CDRMRightsServer::Database() + { + return *iDb; + } + +RFs& CDRMRightsServer::FileServerSession() + { + return iFs; + } + + +RDRMReplayCache& CDRMRightsServer::ReplayCache() + { + return iCache; + } + + +RDrmMeteringDb& CDRMRightsServer::MeteringDatabase() + { + return iMeteringDb; + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::HandleNotifyL +// Forward the event to the database. +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::HandleNotifyL(const TUid /*aUid*/, + const TDesC& /*aKey*/, + const TDesC& /*aValue*/) + { + /* XXX Backup via Publish/Subscribe + __ASSERT_DEBUG( iDb, User::Invariant() ); + TInt value = -1; + TLex16 parser( aValue ); + + if ( aUid == KSDUidSystem ) + { + // Check if it's a backup / restore status event + if( !aKey.Compare( KBackupRestoreStatus ) ) + { + User::LeaveIfError( parser.Val( value ) ); + if( value == 3 ) // Complete + { + iDb->MergeDBL(); + } + } + // Check if it's a drm backup restore status event + else if ( aUid == KSDUidSystem ) + { + if( !aKey.Compare( KDRMBackupRestoreStatus ) ) + { + User::LeaveIfError( parser.Val( value ) ); + + if( value == 1 ) // PrepareForBackup + { + TRAPD( error, iDb->BackupDBL( KNullDesC, + KNullDesC8 ) ); + // Notify that it's done + User::LeaveIfError( iSharedDataClient->AssignToTemporaryFile( + KSDUidSystem ) ); + User::LeaveIfError( iSharedDataClient->SetInt( + KDRMBackupRestoreStatus, 0 ) ); + iSharedDataClient->Flush(); + } + } + } + } + */ + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::RunErrorL +// From CActive. Complete the request and restart the scheduler. +// ----------------------------------------------------------------------------- +// +TInt CDRMRightsServer::RunError( TInt aError ) + { + DRMLOG2( _L( "CDRMRightsServer::RunError: %d" ), aError ); + + // Inform the client. + if ( !Message().IsNull() ) + { + Message().Complete( aError ); + } + + // Restart the scheduler. + ReStart(); + + // Error handled. + return KErrNone; + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::NewSessionL +// Called when a client requires a new instance. +// ----------------------------------------------------------------------------- +CSession2* CDRMRightsServer::NewSessionL( const TVersion& aVersion, + const RMessage2& /*aMessage*/ ) const + { + DRMLOG( _L( "CDRMRightsServer::NewSessionL" ) ); + + if ( ! User::QueryVersionSupported( TVersion( DRMEngine::KServerMajorVersion, + DRMEngine::KServerMinorVersion, + DRMEngine::KServerBuildVersion ), + aVersion ) ) + { + // Sorry, no can do. + User::Leave( KErrNotSupported ); + } + + DRMLOG( _L( "CDRMRightsServer::NewSessionL: Creating a new session" ) ); + + return CDRMDbSession::NewL(); + } +// ----------------------------------------------------------------------------- +// CDRMRightsServer::CDRMRightsServer +// C++ default constructor can NOT contain any code, that +// might leave. +// ----------------------------------------------------------------------------- +// +CDRMRightsServer::CDRMRightsServer() : + CServer2( EPriorityStandard ), + iIMEI( NULL ), + iArmed( EFalse ), + iIMSI( NULL ), + iGetImsi( ETrue ) + { + // Nothing + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::ConstructL +// Symbian 2nd phase constructor can leave. +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::ConstructL() + { + DRMLOG( _L( "CDRMRightsServer::ConstructL" ) ); + + TDRMKey key; + RSemaphore semaphore; + RProcess currentprocess; + + // Ignore errors + User::RenameThread( KRightsServerThread ); + User::LeaveIfError( iFs.Connect() ); + +#ifndef RD_MULTIPLE_DRIVE + + // Ignore errors + iFs.MkDirAll( KDRMDbTempPath ); + +#else //RD_MULTIPLE_DRIVE + + TFileName tempPath; + TFileName tempPath2; + TFileName tempRemovablePath; + TInt driveNumber( -1 ); + TChar driveLetter; + TChar driveLetterRemovable; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KDbTempPath, (TUint)driveLetter ); + + // Ignore errors + iFs.MkDirAll( tempPath ); + +#endif + + DRMLOG( _L( "CDRMRightsServer::ConstructL: SharedDataClient" ) ); + + // Create and instance of the shared data client + // iSharedDataClient = new (ELeave) RSharedDataClient(this); + + // Connecting to the shared data server + // User::LeaveIfError(iSharedDataClient->Connect()); + + /* XXX Backup via Publish/Subscribe + User::LeaveIfError(iSharedDataClient->NotifyChange( + KSDUidSystem, &KBackupRestoreStatus ) ); + User::LeaveIfError(iSharedDataClient->NotifyChange( + KSDUidSystem, &KDRMBackupRestoreStatus) ); + */ + + + GetDbKeyL( key ); + + + DRMLOG( _L( "CDRMRightsServer::ConstructL: database" ) ); + + GetIMEIL(); + + // Create the imsi pointer array: + iIMSI = CDRMPointerArray::NewL(); + iIMSI->SetAutoCleanup(ETrue); + + GetIMSIL(); + +#ifndef RD_MULTIPLE_DRIVE + + iDb = CDRMRightsDB::NewL( iFs, KRightsDir, key, *iIMEI, const_cast(this) ); + +#else //RD_MULTIPLE_DRIVE + + tempPath.Format( KRightsDir, (TUint)driveLetter ); + + iDb = CDRMRightsDB::NewL( iFs, tempPath, key, *iIMEI, const_cast(this) ); + +#endif + + key.FillZ(); + + DRMLOG( _L( "CDRMRightsServer::ConstructL: DB started." ) ); + + DRMLOG( _L( "CDRMRightsServer::ConstructL: Starting Notifier ." ) ); + + User::LeaveIfError( semaphore.CreateGlobal( KDRMEngCommonSemaphore, 0 ) ); + CleanupClosePushL( semaphore ); + + StartThreadL( DRMNotifier::KServerName, StartupNotifier, semaphore ); + DRMLOG( _L( "CDRMRightsServer::ConstructL: Notifier thread created." ) ); + + StartThreadL( Roap::KServerName, StartupRoapStorage, semaphore ); + DRMLOG( _L( "CDRMRightsServer::ConstructL: ROAP thread created." ) ); + +#ifdef __DRM_CLOCK + StartThreadL( DRMClock::KServerName, StartupClock, semaphore ); + DRMLOG( _L( "CDRMRightsServer::ConstructL: clock thread created." ) ); +#endif + + CleanupStack::PopAndDestroy(); // semaphore + + iNotifier = CDRMNotifier::NewL(); + + iCache.Set( iFs ); + +#ifndef RD_MULTIPLE_DRIVE + + iCache.InitL( KTimedReplayCacheFile, KPlainReplayCacheFile ); + +#ifdef RD_DRM_METERING + iMeteringDb.Set( iFs ); + iMeteringDb.InitL( KMeteringDataBaseFile ); +#endif + +#else //RD_MULTIPLE_DRIVE + + tempPath.Format( KTimedReplayCacheFile, (TUint)driveLetter ); + tempPath2.Format( KPlainReplayCacheFile, (TUint)driveLetter ); + + iCache.InitL( tempPath, tempPath2 ); + +#ifdef RD_DRM_METERING + + tempPath.Format( KMeteringDataBaseFile, (TUint)driveLetter ); + + iMeteringDb.Set( iFs ); + iMeteringDb.InitL( tempPath ); + +#endif + +#endif + + User::LeaveIfError( iClock.Connect() ); + + // xoma header list creation + iXOmaHeaders = new (ELeave) RPointerArray< CDRMXOma >(); + + // p/s + iBackupObserver = CDRMBackupObserver::NewL( *(const_cast(this))); + iBackupObserver->Start(); + +#ifdef USE_RO_IMPORT + // Import any OMA DRM 1.0 RO in the import directory, ignore all errors (except + // when checking the default removable mass storage) + TInt r = KErrNone; + +#ifndef RD_MULTIPLE_DRIVE + + TRAP( r, ImportRightsObjectsL( KInternalImportDir ) ); + TRAP( r, ImportRightsObjectsL( KUserDiskImportDir ) ); + +#else //RD_MULTIPLE_DRIVE + + tempPath.Format( KInternalImportDir, (TUint)driveLetter ); + + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultMassStorage, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + // Default mass storage is usually eMMC + tempPath2.Format( KUserDiskImportDir, (TUint)driveLetter ); + + // Find out if a removable mass storage also exists + r = DriveInfo::GetDefaultDrive( DriveInfo::EDefaultRemovableMassStorage, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetterRemovable ); + + // Import is not needed from the default removable mass storage drive if the drive + // letter of the default mass storage and the default removable mass storage are + // the same or the removable mass storage is not supported + if ( ( driveLetter != driveLetterRemovable ) && ( r == KErrNone ) ) + { + tempRemovablePath.Format( KUserRemovableDiskImportDir, (TUint)driveLetterRemovable ); + TRAP( r, ImportRightsObjectsL( tempRemovablePath ) ); + } + + TRAP( r, ImportRightsObjectsL( tempPath ) ); + TRAP( r, ImportRightsObjectsL( tempPath2 ) ); + +#endif + +#endif + + // Add the server to the scheduler. + StartL( DRMEngine::KServerName ); + + // Start watching our RDB + iDbWatcher = CDbWatcher::NewL( *this ); + iDbWatcher->StartWatching(); + + // Start watching the helper server + iProcWatcher = CProcWatcher::NewL( *this, _L( "*DcfRepSrv*" ), _L( "DcfRepSrv" ) ); + iProcWatcher->StartWatching(); + + // Ready to watch + iArmed = ETrue; + + __UHEAP_MARK; + TRAP( r, FeatureManager::InitializeLibL() ); + if( !r && FeatureManager::FeatureSupported( KFeatureIdWindowsMediaDrm ) ) + { + static const TInt KGateOrdinal = 1; + RLibrary library; + r = library.Load( KWmDrmClientWrapperName ); + if( !r ) + { + CWmDrmClientWrapper* wrapper = NULL; + TLibraryFunction function = library.Lookup( KGateOrdinal ); + if( function != NULL ) + { + __UHEAP_MARK; + TRAP( r, wrapper = reinterpret_cast( function() ) ); + if( !r ) + { + r = wrapper->Connect(); + } + delete wrapper; + __UHEAP_MARKEND; + } + } + library.Close(); + } + FeatureManager::UnInitializeLib(); + __UHEAP_MARKEND; + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::StartThreadL +// Start a new thread. +// ----------------------------------------------------------------------------- +void CDRMRightsServer::StartThreadL( const TDesC& aThreadName, + TThreadFunction aFunc, + RSemaphore& aSemaphore ) + { + RThread thread; + + User::LeaveIfError( + thread.Create( aThreadName, + aFunc, + KDefaultStackSize, + KMinHeapSize, + KMaxHeapsize, + NULL ) ); + + thread.Resume(); + + aSemaphore.Wait(); + + thread.Close(); + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::GetDbKeyL +// Fetches the rights database key from Wallet or uses a constant +// key if Wallet is not supported. +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::GetDbKeyL( TDRMKey& aKey ) + { + TInt r = KErrNone; + + DRMLOG( _L( "CDRMRightsServer::GetDbKey" ) ); + MDrmKeyStorage* storage = DrmKeyStorageNewL(); + TRAP( r, storage->GetDeviceSpecificKeyL( aKey ) ); + delete storage; + DRMLOG2( _L( "CDRMRightsServer::GetDbKey err=%d" ),r ); + User::LeaveIfError( r ); + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::GenerateKeyL +// Generates the actual key based on the given key seed. +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::GenerateKeyL( HBufC*& aKeySeed, + TDRMKey& aKey ) const + { + __ASSERT_ALWAYS( aKeySeed->Size() >= KDRMKeyLength, + User::Leave( KErrUnderflow ) ); + + TPtrC8 key( reinterpret_cast< TUint8* >( const_cast< TUint16* >( aKeySeed->Ptr() ) ), + KDRMKeyLength ); + + aKey = key; + } + + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::XOmaHeaders() +// return the pointer of the X-Oma headers list +// ----------------------------------------------------------------------------- +// +RPointerArray< CDRMXOma >& CDRMRightsServer::XOmaHeaders( void ) + { + return *iXOmaHeaders; + } + + + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::GetIMEIL +// ----------------------------------------------------------------------------- +// +const TDesC& CDRMRightsServer::GetIMEIL() + { + if ( iIMEI ) + { + return *iIMEI; + } + +#ifdef DRM_USE_SERIALNUMBER_URI + TInt error( KErrNone ); + TInt count( 0 ); + TInt count2( 0 ); + TUint32 caps( 0 ); + TBool found (EFalse); + + RTelServer etelServer; + RMobilePhone phone; + + TUint KMaxImeiTries = 5; + + for ( TUint8 i = 0; i < KMaxImeiTries; ++i ) + { + error = etelServer.Connect(); + if ( error ) + { + User::After( TTimeIntervalMicroSeconds32( KWaitingTime ) ); + } + else + { + break; + } + } + + User::LeaveIfError( error ); + CleanupClosePushL( etelServer ); + + User::LeaveIfError( etelServer.LoadPhoneModule( KMmTsyModuleName ) ); + + TUnloadModule unload; + unload.iServer = &etelServer; + unload.iName = &KMmTsyModuleName; + + TCleanupItem item( DoUnloadPhoneModule, &unload ); + CleanupStack::PushL( item ); + User::LeaveIfError( etelServer.EnumeratePhones( count ) ); + + for ( count2 = 0; count2 < count && !found; ++count2 ) + { + RTelServer::TPhoneInfo phoneInfo; + User::LeaveIfError( etelServer.GetTsyName( count2, phoneInfo.iName ) ); + + if ( phoneInfo.iName.CompareF(KMmTsyModuleName()) == 0 ) + { + User::LeaveIfError( etelServer.GetPhoneInfo( count2, phoneInfo ) ); + User::LeaveIfError( phone.Open( etelServer, phoneInfo.iName ) ); + CleanupClosePushL( phone ); + found = ETrue; + } + } + + if ( !found ) + { + // Not found. + User::Leave( KErrNotFound ); + } + + User::LeaveIfError( phone.GetIdentityCaps( caps ) ); + if ( caps & RMobilePhone::KCapsGetSerialNumber ) + { + RMobilePhone::TMobilePhoneIdentityV1 id; + TRequestStatus status; + + phone.GetPhoneId( status, id ); + + User::WaitForRequest( status ); + + User::LeaveIfError( status.Int() ); + + iIMEI = id.iSerialNumber.AllocL(); + + CleanupStack::PopAndDestroy( 3 ); // phone, item, etelServer + + HBufC8* buf = HBufC8::NewL( iIMEI->Size() ); + TPtr8 ptr( buf->Des() ); + ptr.Copy( *iIMEI ); + + DRMLOG(_L("IMEI:")); + DRMLOGHEX(ptr); + delete buf; + + return *iIMEI; + } + + User::Leave( KErrNotFound ); + + // Never happens... + return *iIMEI; + +#else + _LIT( KDefaultSerialNumber, "123456789123456789" ); + iIMEI = KDefaultSerialNumber().AllocL(); + + return *iIMEI; +#endif + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::GetIMSIL +// ----------------------------------------------------------------------------- +// +const CDRMPointerArray& CDRMRightsServer::GetIMSIL() + { + + if ( !iGetImsi ) + { + return *iIMSI; + } + +#if 0 // defined(__WINS__) + TInt error( KErrNone ); + TInt count( 0 ); + TInt count2( 0 ); + TUint32 caps( 0 ); + TBool found (EFalse); + HBufC8* imsi = NULL; + HBufC8* imsiNumber = NULL; + + RTelServer etelServer; + RMobilePhone phone; + + TUint KMaxImeiTries = 5; + for ( TUint8 i = 0; i < KMaxImeiTries; ++i ) + { + error = etelServer.Connect(); + if ( error ) + { + User::After( TTimeIntervalMicroSeconds32( KWaitingTime ) ); + } + else + { + break; + } + } + + User::LeaveIfError( error ); + CleanupClosePushL( etelServer ); + User::LeaveIfError( etelServer.LoadPhoneModule( KMmTsyModuleName ) ); + + TUnloadModule unload; + unload.iServer = &etelServer; + unload.iName = &KMmTsyModuleName; + + TCleanupItem item( DoUnloadPhoneModule, &unload ); + CleanupStack::PushL( item ); + + User::LeaveIfError( etelServer.EnumeratePhones( count ) ); + + for ( count2 = 0; count2 < count && !found; ++count2 ) + { + RTelServer::TPhoneInfo phoneInfo; + User::LeaveIfError( etelServer.GetTsyName( count2, phoneInfo.iName ) ); + + if ( phoneInfo.iName.CompareF(KMmTsyModuleName()) == 0 ) + { + User::LeaveIfError( etelServer.GetPhoneInfo( count2, phoneInfo ) ); + User::LeaveIfError( phone.Open( etelServer, phoneInfo.iName ) ); + CleanupClosePushL( phone ); + found = ETrue; + } + } + + if ( !found ) + { + // Not found. + User::Leave( KErrNotFound ); + } + + + User::LeaveIfError( phone.GetIdentityCaps( caps ) ); + + if( caps & RMobilePhone::KCapsGetSubscriberId ) + { + RMobilePhone::TMobilePhoneSubscriberId imsiId; + TRequestStatus status; + + phone.GetSubscriberId( status, imsiId ); + + User::WaitForRequest( status ); + + if( ! status.Int() ) + { + imsi = HBufC8::NewMaxLC( imsiId.Length() + KImsiId().Size() ); + TPtr8 imsiPtr(const_cast(imsi->Ptr()), 0, imsi->Size()); + + imsiNumber = CnvUtfConverter::ConvertFromUnicodeToUtf8L( imsiId ); + CleanupStack::PushL( imsiNumber ); + + imsiPtr.Copy( KImsiId() ); + imsiPtr.Append( *imsiNumber ); + CleanupStack::PopAndDestroy(); // imsiNumber + } + else + { + imsi = NULL; + } + } + else + { + imsi = NULL; + } + + + // Clean up whatever is in there + iIMSI->ResetAndDestroy(); + + if( imsi ) + { + // if we got it we wont try again + iIMSI->AppendL( imsi ); + CleanupStack::Pop(); // imsi + iGetImsi = EFalse; + } + + // Check for possible extra IMSI individual constraints + AppendExtendedIndividualConstraintsL(&phone); + + CleanupStack::PopAndDestroy(); // phone + CleanupStack::PopAndDestroy(); // cleanup item + CleanupStack::PopAndDestroy(); // etel server + + return *iIMSI; + +#else + HBufC8* imsi = NULL; + + if( iGetImsi ) + { + iGetImsi = EFalse; + _LIT8( KDefaultSerialNumber, "IMSI:123456789123456789" ); + imsi = KDefaultSerialNumber().AllocLC(); + iIMSI->AppendL( imsi ); + CleanupStack::Pop(); + AppendExtendedIndividualConstraintsL(); + } + + + return *iIMSI; +#endif // __WINS__ + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::AppendExtendedIndividualConstraintsL +// If the extension DLL exists it is loaded and used to obtain additional +// valid individual constraints +// ----------------------------------------------------------------------------- +void CDRMRightsServer::AppendExtendedIndividualConstraintsL(RMobilePhone* aMobilePhone) + { + // Load the externsion DLL + RLibrary lib; + +#ifndef RD_MULTIPLE_DRIVE + + if (lib.LoadRomLibrary(KDRMIndividualConstraintExtensionDll,KNullDesC)==KErrNone) + +#else //RD_MULTIPLE_DRIVE + + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultRom, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + TFileName individualConstraindExtensionDll; + individualConstraindExtensionDll.Format( + KIndividualConstraintExtensionDll, (TUint)driveLetter ); + + if ( lib.LoadRomLibrary( individualConstraindExtensionDll, KNullDesC ) == KErrNone ) + +#endif + + { + CleanupClosePushL(lib); + + // Get first exported ordinal - factory method returning + // MDRMIndividualConstraintExtension* + TLibraryFunction factory = lib.Lookup(1); + + if (factory) + { + // Instantiate object + MDRMIndividualConstraintExtension* extendedConstraints = + reinterpret_cast(factory()); + + if (extendedConstraints) + { + CleanupStack::PushL(TCleanupItem(Release,extendedConstraints)); + extendedConstraints->AppendConstraintsL(*iIMSI,aMobilePhone); + CleanupStack::PopAndDestroy(extendedConstraints); //calls Release + } + } + + // unload library + CleanupStack::PopAndDestroy(&lib); //close + } + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::Release +// ----------------------------------------------------------------------------- +void CDRMRightsServer::Release(TAny* aIndividualConstraintExtension) + { + MDRMIndividualConstraintExtension* extendedConstraints = + reinterpret_cast(aIndividualConstraintExtension); + extendedConstraints->Release(); //free resources + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::HandleBackupEventL +// Handle Backup Events +// ----------------------------------------------------------------------------- +// + +void CDRMRightsServer::HandleBackupEventL( TInt aBackupEvent ) + { + //RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::BackupCalled\n\r")); + + //conn::TBURPartType eventType; + //conn::TBackupIncType incType; + TDriveList aDriveList; + + //RFileLogger::WriteFormat(KLogDir, KLogName, EFileLoggingModeAppend, _L8("backupevent: %d"), aBackupEvent); + + // If there is no operation going or state is normal + // Delete the client and handler + + if( aBackupEvent == conn::EBURUnset || + aBackupEvent & conn::EBURNormal ) + { + /* + if( aBackupEvent == conn::EBURUnset ) + { + RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::Unset\n\r")); + } + else + { + RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::Normal\n\r")); + } + */ + if( iActiveBackupClient ) + { + delete iActiveBackupClient; + iActiveBackupClient = NULL; + } + + if( iBackupHandler ) + { + delete iBackupHandler; + iBackupHandler = NULL; + } + } + else if( aBackupEvent & conn::EBURBackupFull || + aBackupEvent & conn::EBURRestoreFull ) + { + //RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::Full\n\r")); + // ab handler + iBackupHandler = CDRMBackup::NewL( iDb, iFs ); + + // ab client + iActiveBackupClient = conn::CActiveBackupClient::NewL( iBackupHandler ); + + // Confirm that we have done everything if there even was anything to do + //RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::Confirm F \n\r")); + iActiveBackupClient->ConfirmReadyForBURL( KErrNone ); + } + else if( aBackupEvent & conn::EBURBackupPartial || + aBackupEvent & conn::EBURRestorePartial ) + { + //RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::Partial\n\r")); + // ab handler + iBackupHandler = CDRMBackup::NewL( iDb, iFs ); + + // ab client + iActiveBackupClient = conn::CActiveBackupClient::NewL( iBackupHandler ); + + if( !iActiveBackupClient->DoesPartialBURAffectMeL() ) + { + //RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::NotMe\n\r")); + delete iActiveBackupClient; + iActiveBackupClient = NULL; + + delete iBackupHandler; + iBackupHandler = NULL; + } + else + { + //RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::Confirm P \n\r")); + // Confirm that we have done everything if there even was anything to do + iActiveBackupClient->ConfirmReadyForBURL( KErrNone ); + //RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::Confirm P Done \n\r")); + } + } + else + { + //RFileLogger::Write(KLogDir, KLogName, EFileLoggingModeAppend, _L8("Handle::Argument\n\r")); + // Unknown operation + User::Leave(KErrArgument); + } + }; + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::WatchedObjectChangedL +// Handle Backup Events +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::WatchedObjectChangedL( const TDesC& aObject ) + { + DRMLOG( _L( "CDRMRightsServer::WatchedObjectChangedL ->" ) ); + DRMLOG( aObject ); + + if ( aObject.Left( KDirIdentifier().Length() ) == KDirIdentifier && + !iDb->Updating() && iArmed ) + { +#ifdef _DEBUG + DRMLOG( _L( "RDB modified by outside party (DEBUG mode, not deleting the DB)" ) ); +#else + DRMLOG( _L( "RDB modified by outside party, deleting the DB" ) ); + iDb->MarkAsCorrupted(); + RStarterSession starter; + User::LeaveIfError( starter.Connect() ); + starter.Reset( RStarterSession::EDRMReset ); + starter.Close(); +#endif + } + else if ( aObject.Left( KProcIdentifier().Length() ) == KProcIdentifier && iArmed ) + { +#ifdef _DEBUG + DRMLOG( _L( "Peer process killed (DEBUG mode, not rebooting)" ) ); +#else + DRMLOG( _L( "Peer process killed, rebooting" ) ); + RStarterSession starter; + User::LeaveIfError( starter.Connect() ); + starter.Reset( RStarterSession::EDRMReset ); + starter.Close(); +#endif + } + + DRMLOG( _L( "CDRMRightsServer::WatchedObjectChangedL <-" ) ); + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::HasActiveCountConstraint +// Check ID for active count constraint +// ----------------------------------------------------------------------------- +// +TBool CDRMRightsServer::HasActiveCountConstraint( const TDesC8& aContentId ) + { + TInt i; + TBool r = EFalse; + + for ( i = 0; r == EFalse && i < iActiveCountConstraints.Count(); i++ ) + { + if ( iActiveCountConstraints[i]->CompareF( aContentId ) == 0 ) + { + r = ETrue; + } + } + return r; + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::RemoveActiveCountConstraint +// Remove ID from count constraint list +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::RemoveActiveCountConstraint( const TDesC8& aContentId ) + { + TInt i; + TInt r = KErrNotFound; + HBufC8* id = NULL; + + for ( i = 0; r == KErrNotFound && i < iActiveCountConstraints.Count(); i++ ) + { + if ( iActiveCountConstraints[i]->CompareF( aContentId ) == 0 ) + { + r = i; + } + } + if ( r != KErrNotFound ) + { + id = iActiveCountConstraints[r]; + iActiveCountConstraints.Remove( r ); + delete id; + id = NULL; + } + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::AddActiveCountConstraint +// Add ID to count constraint list +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::AddActiveCountConstraintL( const TDesC8& aContentId ) + { + if ( !HasActiveCountConstraint( aContentId ) ) + { + iActiveCountConstraints.AppendL( aContentId.AllocL() ); + } + } + + + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::IsAccessingUrl +// Add ID to count constraint list +// ----------------------------------------------------------------------------- +// +TInt CDRMRightsServer::IsAccessingUrl( const TDesC8& aContentId ) + { + for( TInt i = 0; i < iActiveUrls.Count(); i++ ) + { + if( !iActiveUrls[i]->iUrl->Compare( aContentId ) ) + { + return i; + } + } + return KErrNotFound; + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::RemoveAccessingUrl +// Add ID to count constraint list +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::RemoveAccessingUrl( const TDesC8& aContentId ) + { + CUsageUrl* usage = NULL; + TInt index = KErrNotFound; + + index = IsAccessingUrl( aContentId ); + + if( index != KErrNotFound ) + { + // If there are negative or 0 values in the list for some reason + // remove them + if( iActiveUrls[index]->iRefCounter <= 1 ) + { + usage = iActiveUrls[index]; + iActiveUrls.Remove( index ); + delete usage; + } + else + { + iActiveUrls[index]->iRefCounter--; + } + } + } + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::AddAccessingUrlL +// Add ID to count constraint list +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::AddAccessingUrlL( const TDesC8& aContentId ) + { + CUsageUrl* usage = NULL; + TInt index = KErrNotFound; + + index = IsAccessingUrl( aContentId ); + + if( index == KErrNotFound ) + { + usage = new ( ELeave ) CUsageUrl(); + CleanupStack::PushL( usage ); + usage->iUrl = aContentId.AllocL(); + usage->iRefCounter = 1; + iActiveUrls.AppendL( usage ); + CleanupStack::Pop( usage ); + } + else + { + usage = iActiveUrls[index]; + usage->iRefCounter++; + } + } + + + + +// ----------------------------------------------------------------------------- +// CDRMRightsServer::StopWatchingL +// Delete the watchers +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::StopWatchingL() + { + iArmed = EFalse; + } + +#ifdef USE_RO_IMPORT +// ----------------------------------------------------------------------------- +// CDRMRightsServer::ImportRightsObjectsL +// Open the import directory and add all ROs that can be found there. ROs file +// names must end with .dr. Only OMA DRM 1.0 ROs in XML format are supported for +// security reasons +// ----------------------------------------------------------------------------- +// +void CDRMRightsServer::ImportRightsObjectsL( const TDesC& aImportDir ) + { + CDrmRightsParser* p; + HBufC8* d = NULL; + HBufC8* k = NULL; + RFs fs; + RFile file; + TInt size; + RPointerArray rights; + CDir* dir; + TFileName name; + TPtr8 ptr( NULL, 0 ); + TInt i; + TInt r = KErrNone; + TCleanupItem listCleanup(PointerArrayResetDestroyAndClose, + &rights); + TDRMUniqueID id; + TTime time; + + DRMLOG( _L( "CDRMRightsServer::ImportRightsObjectsL" ) ); + DRMLOG( aImportDir ); + __UHEAP_MARK; + GetSecureTime( time ); + p = CDrmRightsParser::NewL(); + CleanupStack::PushL( p ); + User::LeaveIfError( iFs.GetDir( aImportDir, KEntryAttNormal, + ESortNone, dir ) ); + CleanupStack::PushL( dir ); + for (i = 0; i < dir->Count(); i++) + { + name.Copy( aImportDir ); + name.Append( (*dir)[i].iName ); + if ( ( name.Length() > 3 && name.Right(3).CompareF( KDrSuffix ) == 0 ) ) + { + User::LeaveIfError( file.Open( iFs, name, EFileRead ) ); + CleanupClosePushL( file ); + User::LeaveIfError( file.Size( size ) ); + d = HBufC8::NewLC( size ); + ptr.Set( d->Des() ); + User::LeaveIfError( file.Read( ptr ) ); + p->ParseL( ptr, rights ); + if ( rights.Count() > 0 ) + { + k = NULL; + CleanupStack::PushL( listCleanup ); + CDRMPermission& permission = rights[0]->GetPermission(); + CDRMAsset& asset = rights[0]->GetAsset(); + + // Add RO only if no rights are available at all for this content + TRAP( r, k = iDb->GetDecryptionKeyL( *asset.iUid ) ); + if (k == NULL ) + { + iDb->AddDBEntryL( *asset.iUid, permission, asset.iKey, id ); + } + else + { + delete k; + } + CleanupStack::PopAndDestroy(); // listCleanup + } + CleanupStack::PopAndDestroy( 2 ); // d, file + iFs.Delete( name ); + } + } + CleanupStack::PopAndDestroy( 2 ); // dir, p + __UHEAP_MARKEND; + DRMLOG( _L( "CDRMRightsServer::ImportRightsObjectsL done" ) ); + } +#endif + + + +// ========================== OTHER EXPORTED FUNCTIONS ========================= + + +TInt E32Main() + { + return Startup(); + } + + +// End of File diff -r 9b61d901414f -r 458d62869c00 breakdeps/DRMEngine/DrmStdKeyStorage.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/breakdeps/DRMEngine/DrmStdKeyStorage.cpp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,1188 @@ +/* +* Copyright (c) 2002-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: OMA DRM 2.0 Key Storage +* +*/ + + +// INCLUDE FILES +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef RD_MULTIPLE_DRIVE +#include +#endif + +#include "DrmKeyStorage.h" +#include "DrmStdKeyStorage.h" + +#ifdef _DEBUG +#define LOGGING +#endif + +#ifdef LOGGING +_LIT(KLogDir, "DRM"); +_LIT(KLogName, "KeyStorage.log"); +#include "flogger.h" +#define LOG(string) \ + RFileLogger::Write(KLogDir, KLogName, \ + EFileLoggingModeAppend, string); +#define LOGHEX(buffer) \ + RFileLogger::HexDump(KLogDir, KLogName, \ + EFileLoggingModeAppend, _S(""), _S(""), \ + buffer.Ptr(), buffer.Length()); +#else +#define LOG(string) +#define LOGHEX(buffer) +#endif + +#pragma message("Compiling DRM Std KeyStorage..") + + +// LOCAL CONSTANTS AND MACROS + +const TInt KKeyLength = 128; +const TInt KWaitingTime = 2000000; // 2 sec + +#ifdef RD_MULTIPLE_DRIVE +_LIT(KKeyStoragePath, "%c:\\private\\101F51F2\\PKI\\"); +_LIT(KRomKeyStoragePath, "%c:\\private\\101F51F2\\PKI\\"); + +#else +_LIT(KKeyStoragePath, "c:\\private\\101F51F2\\PKI\\"); +_LIT(KRomKeyStoragePath, "z:\\private\\101F51F2\\PKI\\"); +#endif + +_LIT(KDeviceKeyFileName, "DevicePrivateKey.der"); +_LIT(KDeviceCertFileName, "DeviceCert.der"); +_LIT(KSingingCertFmt, "SigningCert%02d.der"); +_LIT(KSingingCertPattern, "SigningCert*"); +_LIT8(KDefaultKey, "0000000000000000"); + +#ifdef RD_MULTIPLE_DRIVE +_LIT(KSerialNumberFile, "%c:\\private\\101F51F2\\rdbserial.dat"); +_LIT(KUdtCertFileName, "%c:\\private\\101F51F2\\PKI\\UdtCertificate.der"); +#else +_LIT(KSerialNumberFile, "c:\\private\\101F51F2\\rdbserial.dat"); +_LIT(KUdtCertFileName, "z:\\private\\101F51F2\\PKI\\UdtCertificate.der"); +#endif + +_LIT(KCmla, "CMLA"); +_LIT(KPadding, "\x0"); + +NONSHARABLE_STRUCT( TUnloadModule ) + { + RTelServer* iServer; + const TDesC* iName; + }; + + +// ============================ LOCAL FUNCTIONS ================================ +LOCAL_C void DoUnloadPhoneModule( TAny* aAny ); + +LOCAL_C void WriteFileL(RFs& aFs, const TDesC& aName, const TDesC8& aData) + { + RFile file; + + User::LeaveIfError(file.Replace(aFs, aName, EFileWrite)); + User::LeaveIfError(file.Write(aData)); + file.Close(); + } + +LOCAL_C void ReadFileL(RFs& aFs, const TDesC& aName, HBufC8*& aContent) + { + RFile file; + TInt size = 0; + + User::LeaveIfError(file.Open(aFs, aName, EFileRead)); + CleanupClosePushL(file); + User::LeaveIfError(file.Size(size)); + aContent = HBufC8::NewLC(size); + TPtr8 ptr(aContent->Des()); + User::LeaveIfError(file.Read(ptr, size)); + CleanupStack::Pop(); //aContent + CleanupStack::PopAndDestroy(); // file + } + +HBufC8* I2OSPL( + RInteger& aInt, TInt& aKeySize ) + { + HBufC8* integer = aInt.BufferLC(); + if (integer->Length() < aKeySize) + { + HBufC8* r = HBufC8::NewLC(aKeySize); + TPtr8 ptr(r->Des()); + for(TInt i = integer->Length(); i < aKeySize; i++) + { + ptr.Append(KPadding()); + } + ptr.Append(*integer); + CleanupStack::Pop(r); + CleanupStack::PopAndDestroy(integer); + return r; + } + else + { + CleanupStack::Pop(integer); + return integer; + } + } + +RInteger OS2IPL( + const TDesC8& aOctetStream) + { + RInteger r; + TInt i; + + r = RInteger::NewL(0); + for (i = 0; i < aOctetStream.Length(); i++) + { + r *= 256; + r += aOctetStream[i]; + } + return r; + } + +void DoUnloadPhoneModule( TAny* aAny ) + { + __ASSERT_DEBUG( aAny, User::Invariant() ); +#if 0 + TUnloadModule* module = ( TUnloadModule* ) aAny; + module->iServer->UnloadPhoneModule( *( module->iName ) ); +#endif + } + + +// ============================ MEMBER FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage* CDrmStdKeyStorage::NewL +// +// ----------------------------------------------------------------------------- +// +EXPORT_C CDrmStdKeyStorage* CDrmStdKeyStorage::NewL(RLibrary aLibrary) + { + CDrmStdKeyStorage* self = new (ELeave) CDrmStdKeyStorage(aLibrary); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(); + return self; + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::CDrmStdKeyStorage +// +// ----------------------------------------------------------------------------- +// +CDrmStdKeyStorage::CDrmStdKeyStorage(RLibrary aLibrary): + iFileMan(NULL), + iRootSelected(EFalse), + iKey(NULL), + iImei(NULL), + iLibrary(aLibrary) + { + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::ConstructL +// +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::ConstructL() + { + + LOG(_L("CDrmStdKeyStorage::ConstructL ->")); + User::LeaveIfError(iFs.Connect()); + iFileMan = CFileMan::NewL(iFs); + + FeatureManager::InitializeLibL(); + +#ifdef __DRM_OMA2 + if ( FeatureManager::FeatureSupported( KFeatureIdFfOmadrm2Support ) ) + { + TRAP_IGNORE( SelectDefaultRootL() ); + } +#endif + + FeatureManager::UnInitializeLib(); + + iDeviceSpecificKey.Copy(KDefaultKey); + + LOG(_L("CDrmStdKeyStorage::ConstructL <-")); + } + +// ----------------------------------------------------------------------------- +// MDrmKeyStorage::~MDrmKeyStorage +// +// ----------------------------------------------------------------------------- +// + +MDrmKeyStorage::~MDrmKeyStorage() + { + } +// ----------------------------------------------------------------------------- +// DrmStdKeyStorage::~CDrmStdKeyStorage +// +// ----------------------------------------------------------------------------- +// + +CDrmStdKeyStorage::~CDrmStdKeyStorage() + { + LOG(_L("CDrmStdKeyStorage::~CDrmStdKeyStorage ->")); + delete iFileMan; + delete iKey; + delete iImei; iImei = NULL; + iFs.Close(); + //iLibrary.Close(); + LOG(_L("CDrmStdKeyStorage::~CDrmStdKeyStorage <-")); + } + +// ----------------------------------------------------------------------------- +// DrmStdKeyStorage::ModulusSize +// +// ----------------------------------------------------------------------------- +// + +TInt CDrmStdKeyStorage::ModulusSize() + { + LOG(_L("CDrmStdKeyStorage::ModulusSize ->")); + + if(iKey == NULL) + { + return KErrGeneral; + } + LOG(_L("CDrmStdKeyStorage::ModulusSize <-")); + return iKey->N().BitCount(); + } + +// ----------------------------------------------------------------------------- +// DrmStdKeyStorage::SelectTrustedRootL +// +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::SelectTrustedRootL( + const TDesC8& aRootKeyHash) + { + TFileName fileName; + TEntry entry; + TInt i; + + LOG(_L("CDrmStdKeyStorage::SelectTrustedRootL ->")); + LOG(aRootKeyHash); + if (aRootKeyHash.Length() != 0) + { + +#ifndef RD_MULTIPLE_DRIVE + + fileName.Copy(KKeyStoragePath); + +#else //RD_MULTIPLE_DRIVE + + TFileName tempPath; + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KKeyStoragePath, (TUint)driveLetter ); + + fileName.Copy(tempPath); + +#endif + + for (i = 0; i < SHA1_HASH; i++) + { + fileName.AppendNumFixedWidth(aRootKeyHash[i], EHex, 2); + } + fileName.Append('\\'); + if (iFs.Entry(fileName, entry) != KErrNone) + { + +#ifndef RD_MULTIPLE_DRIVE + + fileName.Copy(KRomKeyStoragePath); + +#else //RD_MULTIPLE_DRIVE + + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultRom, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KRomKeyStoragePath, (TUint)driveLetter ); + + fileName.Copy(tempPath); + +#endif + + for (i = 0; i < SHA1_HASH; i++) + { + fileName.AppendNumFixedWidth(aRootKeyHash[i], EHex, 2); + } + fileName.Append('\\'); + // check that the path exists + User::LeaveIfError(iFs.Entry(fileName, entry)); + } + User::LeaveIfError(iFs.SetSessionPath(fileName)); + InitializeKeyL(); + CheckRootForCmlaL(); + iRootSelected = ETrue; + } + else + { + SelectDefaultRootL(); + } + LOG(_L("CDrmStdKeyStorage::SelectTrustedRootL <-")); + } + +// ----------------------------------------------------------------------------- +// DrmStdKeyStorage::SelectDefaultRootL +// +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::SelectDefaultRootL() + { + CDir* dir = NULL; + TFileName dirName; + TBool found = EFalse; + + LOG(_L("CDrmStdKeyStorage::SelectDefaultRootL ->")); + +#ifndef RD_MULTIPLE_DRIVE + + if (iFs.GetDir(KKeyStoragePath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#else //RD_MULTIPLE_DRIVE + + TFileName tempPath; + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KKeyStoragePath, (TUint)driveLetter ); + + if (iFs.GetDir(tempPath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#endif + + { + __UHEAP_MARK; + LOG(_L(" Checking keys on C:")); + CleanupStack::PushL(dir); + if (dir->Count() >= 1) + { + +#ifndef RD_MULTIPLE_DRIVE + + dirName.Copy(KKeyStoragePath); + +#else //RD_MULTIPLE_DRIVE + + dirName.Copy(tempPath); + +#endif + + dirName.Append((*dir)[0].iName); + dirName.Append('\\'); + User::LeaveIfError(iFs.SetSessionPath(dirName)); + found = ETrue; + } + CleanupStack::PopAndDestroy(dir); + __UHEAP_MARKEND; + } + +#ifndef RD_MULTIPLE_DRIVE + + if (!found && iFs.GetDir(KRomKeyStoragePath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#else //RD_MULTIPLE_DRIVE + + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultRom, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KRomKeyStoragePath, (TUint)driveLetter ); + + if (!found && iFs.GetDir(tempPath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#endif + { + LOG(_L(" Checking keys on Z:")); + CleanupStack::PushL(dir); + if (dir->Count() < 1) + { + User::Leave(KErrGeneral); + } + +#ifndef RD_MULTIPLE_DRIVE + + dirName.Copy(KRomKeyStoragePath); + +#else //RD_MULTIPLE_DRIVE + + dirName.Copy(tempPath); + +#endif + + dirName.Append((*dir)[0].iName); + dirName.Append('\\'); + User::LeaveIfError(iFs.SetSessionPath(dirName)); + CleanupStack::PopAndDestroy(dir); + found = ETrue; + } + if (!found) + { + User::Leave(KErrGeneral); + } + InitializeKeyL(); + CheckRootForCmlaL(); + iRootSelected = ETrue; + LOG(_L("CDrmStdKeyStorage::SelectDefaultRootL <-")); + } + +TBool CDrmStdKeyStorage::SelectedRootIsCmla() + { + return iRootIsCmla; + } + +// ----------------------------------------------------------------------------- +// DrmStdKeyStorage::GetTrustedRootsL +// +// ----------------------------------------------------------------------------- +// + +void CDrmStdKeyStorage::GetTrustedRootsL( + RPointerArray& aRootList) + { + CDir* dir = NULL; + TInt i; + TInt j; + TBuf8 hash; + TEntry entry; + TUint8 c; + TInt r = KErrNone; + + LOG(_L("CDrmStdKeyStorage::GetTrustedRootsL ->")); + aRootList.ResetAndDestroy(); + +#ifndef RD_MULTIPLE_DRIVE + + if (iFs.GetDir(KKeyStoragePath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#else //RD_MULTIPLE_DRIVE + + TFileName tempPath; + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KKeyStoragePath, (TUint)driveLetter ); + + if (iFs.GetDir(tempPath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#endif + { + LOG(_L(" Getting roots on C:")); + CleanupStack::PushL(dir); + for (i = 0; i < dir->Count(); i++) + { + entry = (*dir)[i]; + hash.SetLength(0); + LOG(entry.iName); + r = KErrNone; + for (j = 0; r == KErrNone && j < SHA1_HASH; j++) + { + TLex lex(entry.iName.Mid(j * 2, 2)); + r = lex.Val(c, EHex); + hash.Append(c); + } + if (r == KErrNone) + { + aRootList.Append(hash.AllocL()); + } + } + CleanupStack::PopAndDestroy(dir); + } + +#ifndef RD_MULTIPLE_DRIVE + + if (iFs.GetDir(KRomKeyStoragePath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#else //RD_MULTIPLE_DRIVE + + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultRom, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KRomKeyStoragePath, (TUint)driveLetter ); + + if (iFs.GetDir(tempPath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#endif + { + LOG(_L(" Getting roots on Z:")); + CleanupStack::PushL(dir); + for (i = 0; i < dir->Count(); i++) + { + LOG(entry.iName); + entry = (*dir)[i]; + hash.SetLength(0); + r = KErrNone; + for (j = 0; r == KErrNone && j < SHA1_HASH; j++) + { + TLex lex(entry.iName.Mid(j * 2, 2)); + r = lex.Val(c, EHex); + hash.Append(c); + } + if (r == KErrNone) + { + aRootList.Append(hash.AllocL()); + } + } + CleanupStack::PopAndDestroy(dir); + } + LOG(_L("CDrmStdKeyStorage::GetTrustedRootsL <-")); + } + +// ----------------------------------------------------------------------------- +// DrmStdKeyStorage::GetCertificateChainL +// +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::GetCertificateChainL( + RPointerArray& aCertChain) + { + TFileName fileName; + TInt i; + CDir* dir = NULL; + HBufC8* cert = NULL; + + LOG(_L("CDrmStdKeyStorage::GetCertificateChainL ->")); + if (!iRootSelected) + { + User::Leave(KErrGeneral); + } + aCertChain.ResetAndDestroy(); + ReadFileL(iFs, KDeviceCertFileName, cert); + aCertChain.Append(cert); + iFs.GetDir(KSingingCertPattern, KEntryAttNormal, ESortByName, dir); + CleanupStack::PushL(dir); + for (i = 0; i < dir->Count(); i++) + { + ReadFileL(iFs, (*dir)[i].iName, cert); + aCertChain.AppendL(cert); + } + CleanupStack::PopAndDestroy(); // dir + LOG(_L("CDrmStdKeyStorage::GetCertificateChainL <-")); + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::RsaSignL +// ----------------------------------------------------------------------------- +// +HBufC8* CDrmStdKeyStorage::RsaSignL( + const TDesC8& aInput) + { + return ModularExponentiateWithKeyL(aInput); + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::RsaDecryptL +// ----------------------------------------------------------------------------- +// +HBufC8* CDrmStdKeyStorage::RsaDecryptL( + const TDesC8& aInput) + { + return ModularExponentiateWithKeyL(aInput); + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::ImportDataL +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::ImportDataL( + const TDesC8& aPrivateKey, + const RArray& aCertificateChain) + { + TInt i; + TInt n; + HBufC8* publicKey = NULL; + CX509Certificate* cert = NULL; + CSHA1* hasher = NULL; + TBuf8 publicKeyHash; + TFileName fileName; + + LOG(_L("CDrmStdKeyStorage::ImportDataL ->")); + n = aCertificateChain.Count(); + cert = CX509Certificate::NewLC(aCertificateChain[n - 1]); + publicKey = cert->DataElementEncoding( + CX509Certificate::ESubjectPublicKeyInfo)->AllocL(); + CleanupStack::PushL(publicKey); + hasher = CSHA1::NewL(); + CleanupStack::PushL(hasher); + hasher->Update(*publicKey); + publicKeyHash.Copy(hasher->Final()); + +#ifndef RD_MULTIPLE_DRIVE + + fileName.Copy(KKeyStoragePath); + +#else //RD_MULTIPLE_DRIVE + + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + TFileName keyStorageDir; + keyStorageDir.Format( KKeyStoragePath, (TUint)driveLetter ); + + fileName.Copy(keyStorageDir); + +#endif + + for (i = 0; i < SHA1_HASH; i++) + { + fileName.AppendNumFixedWidth(publicKeyHash[i], EHex, 2); + } + fileName.Append('\\'); + iFileMan->Delete(fileName, CFileMan::ERecurse); + iFs.MkDirAll(fileName); + iFs.SetSessionPath(fileName); + WriteFileL(iFs, KDeviceKeyFileName, aPrivateKey); + fileName.Copy(fileName); + WriteFileL(iFs, KDeviceCertFileName, aCertificateChain[0]); + for (i = 1; i < n; i++) + { + fileName.SetLength(0); + fileName.AppendFormat(KSingingCertFmt, i - 1); + WriteFileL(iFs, fileName, aCertificateChain[i]); + } + CleanupStack::PopAndDestroy(3); // hasher, publicKey, cert + LOG(_L("CDrmStdKeyStorage::ImportDataL <-")); + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::GetDeviceSpecificKeyL +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::GetDeviceSpecificKeyL( + TBuf8& aKey) + { + + HBufC8* key = NULL; + TInt n; + CSHA1* hasher = NULL; + TBuf8 hash; + + if (iDeviceSpecificKey.Compare(KDefaultKey) == 0) + { + + GetImeiL(); + + HBufC8* buf = HBufC8::NewLC( iImei->Size() + sizeof(VID_DEFAULT) ); + TPtr8 ptr( buf->Des() ); + ptr.Copy( *iImei ); + ptr.Append(VID_DEFAULT); + + hasher = CSHA1::NewL(); + CleanupStack::PushL(hasher); + hasher->Update(ptr); + hash.Copy(hasher->Final()); + key=hash.AllocL(); + CleanupStack::PopAndDestroy(2,buf); // hasher,buf; + + n = Min(key->Length(), KDeviceSpecificKeyLength); + iDeviceSpecificKey.Copy(key->Right(n)); + delete key; + n = KDeviceSpecificKeyLength - n; + while (n > 0) + { + iDeviceSpecificKey.Append(0); + n--; + } + } + + aKey.Copy(iDeviceSpecificKey); + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::InitializeKeyL +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::InitializeKeyL() + { + HBufC8* key = NULL; + TASN1DecInteger encInt; + TInt pos = 0; + + LOG(_L("CDrmStdKeyStorage::InitializeKeyL ->")); + delete iKey; + iKey = NULL; + ReadFileL(iFs, KDeviceKeyFileName, key); + CleanupStack::PushL(key); + TASN1DecGeneric gen(*key); + gen.InitL(); + pos += gen.LengthDERHeader(); + if (gen.Tag() != EASN1Sequence) + { + User::Leave(KErrArgument); + } + encInt.DecodeDERShortL(*key, pos); // version + RInteger modulus = encInt.DecodeDERLongL(*key, pos); + CleanupStack::PushL(modulus); + RInteger publicExponent = encInt.DecodeDERLongL(*key, pos); + CleanupStack::PushL(publicExponent); + RInteger privateExponent = encInt.DecodeDERLongL(*key, pos); + CleanupStack::PushL(privateExponent); + iKey = CRSAPrivateKeyStandard::NewL(modulus, privateExponent); + CleanupStack::Pop(); // privateExponent + CleanupStack::PopAndDestroy();// publicExponent + CleanupStack::Pop(); // modulus + CleanupStack::PopAndDestroy(); // key + LOG(_L("CDrmStdKeyStorage::InitializeKeyL <-")); + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::ModularExponentiateWithKeyL +// ----------------------------------------------------------------------------- +// +HBufC8* CDrmStdKeyStorage::ModularExponentiateWithKeyL( + const TDesC8& aInput) + { + RInteger result; + RInteger input; + HBufC8* output; + TInt keyLength = KKeyLength; + + LOG(_L("CDrmStdKeyStorage::ModularExponentiateWithKeyL ->")); + input = OS2IPL(aInput); + CleanupClosePushL(input); + result = TInteger::ModularExponentiateL(input,iKey->D(), iKey->N()); + CleanupClosePushL(result); + output = I2OSPL(result, keyLength); + CleanupStack::PopAndDestroy(2); // result, input + LOG(_L("CDrmStdKeyStorage::ModularExponentiateWithKeyL <-")); + return output; + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::CheckRootForCmlaL +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::CheckRootForCmlaL() + { + CDir* dir = NULL; + HBufC8* buffer = NULL; + HBufC* name = NULL; + CX509Certificate* cert = NULL; + + LOG(_L("CDrmStdKeyStorage::CheckRootForCmlaL ->")); + __UHEAP_MARK; + iFs.GetDir(KSingingCertPattern, KEntryAttNormal, ESortByName, dir); + CleanupStack::PushL(dir); + ReadFileL(iFs, (*dir)[dir->Count() - 1].iName, buffer); + CleanupStack::PushL(buffer); + cert = CX509Certificate::NewL(*buffer); + CleanupStack::PushL(cert); + name = cert->SubjectName().DisplayNameL(); + CleanupStack::PushL(name); + if (name->Find(KCmla) != KErrNotFound) + { + iRootIsCmla = ETrue; + } + else + { + iRootIsCmla = EFalse; + } + CleanupStack::PopAndDestroy(4); // name, cert, buffer, dir + LOG(_L("CDrmStdKeyStorage::CheckRootForCmlaL <-")); + __UHEAP_MARKEND; + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::GetRdbSerialNumberL +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::GetRdbSerialNumberL( + TBuf8& aSerialNumber) + { + HBufC8* buffer = NULL; + TUint att; + +#ifndef RD_MULTIPLE_DRIVE + + if (iFs.Att(KSerialNumberFile, att) != KErrNone) + +#else //RD_MULTIPLE_DRIVE + + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + TFileName serialNoFile; + serialNoFile.Format( KSerialNumberFile, (TUint)driveLetter ); + + if (iFs.Att(serialNoFile, att) != KErrNone) + +#endif + { + GenerateNewRdbSerialNumberL(); + } + +#ifndef RD_MULTIPLE_DRIVE + + ReadFileL(iFs, KSerialNumberFile, buffer); + +#else //RD_MULTIPLE_DRIVE + + ReadFileL(iFs, serialNoFile, buffer); + +#endif + + aSerialNumber.Copy(*buffer); + delete buffer; + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::GenerateNewRdbSerialNumberL +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::GenerateNewRdbSerialNumberL() + { + TBuf8 serialNumber; + TPtr8 random( const_cast(serialNumber.Ptr()), + KRdbSerialNumberLength, + KRdbSerialNumberLength ); + + RandomDataGetL(random,KRdbSerialNumberLength); + +#ifndef RD_MULTIPLE_DRIVE + + WriteFileL(iFs, KSerialNumberFile, random); + +#else //RD_MULTIPLE_DRIVE + + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + TFileName serialNoFile; + serialNoFile.Format( KSerialNumberFile, (TUint)driveLetter ); + + WriteFileL(iFs, serialNoFile, random); + +#endif + + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::UdtEncryptL +// ----------------------------------------------------------------------------- +// +HBufC8* CDrmStdKeyStorage::UdtEncryptL( + const TDesC8& aInput) + { + HBufC8* buffer = NULL; + HBufC8* output = HBufC8::NewMaxLC( 256 ); + CX509Certificate* cert = NULL; + CRSAPublicKey* key = NULL; + TX509KeyFactory factory; + CRSAPKCS1v15Encryptor* encryptor = NULL; + TPtr8 result(const_cast(output->Ptr()), 0, 256); + +#ifndef RD_MULTIPLE_DRIVE + + ReadFileL(iFs, KUdtCertFileName, buffer); + +#else //RD_MULTIPLE_DRIVE + + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultRom, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + TFileName udtCertFile; + udtCertFile.Format( KUdtCertFileName, (TUint)driveLetter ); + + ReadFileL(iFs, udtCertFile, buffer); + +#endif + + CleanupStack::PushL(buffer); + cert = CX509Certificate::NewL(*buffer); + CleanupStack::PushL(cert); + key = factory.RSAPublicKeyL(cert->PublicKey().KeyData()); + CleanupStack::PushL(key); + + encryptor = CRSAPKCS1v15Encryptor::NewLC(*key); + encryptor->EncryptL(aInput, result); + + CleanupStack::PopAndDestroy(4); // encryptor, key, cert, buffer + CleanupStack::Pop();// output + return output; + }; + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::GetRootCertificatesL +// ----------------------------------------------------------------------------- +// +void CDrmStdKeyStorage::GetRootCertificatesL( + RPointerArray& aRootCerts) + { + CDir* dir = NULL; + CDir* rootCerts = NULL; + TFileName dirName; + HBufC8* cert = NULL; + TInt i = 0; + TBuf<256> path; + + iFs.SessionPath( path ); + +#ifndef RD_MULTIPLE_DRIVE + + if (iFs.GetDir(KKeyStoragePath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#else //RD_MULTIPLE_DRIVE + + TFileName tempPath; + TInt driveNumber( -1 ); + TChar driveLetter; + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KKeyStoragePath, (TUint)driveLetter ); + + if (iFs.GetDir(tempPath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#endif + { + CleanupStack::PushL(dir); + for(i = 0; i < dir->Count(); i++) + { + if ((*dir)[i].IsDir()) + { + +#ifndef RD_MULTIPLE_DRIVE + + dirName.Copy(KKeyStoragePath); + +#else //RD_MULTIPLE_DRIVE + + dirName.Copy(tempPath); + +#endif + + dirName.Append((*dir)[i].iName); + dirName.Append('\\'); + User::LeaveIfError(iFs.SetSessionPath(dirName)); + User::LeaveIfError(iFs.GetDir(KSingingCertPattern, KEntryAttNormal, ESortByName, rootCerts)); + CleanupStack::PushL(rootCerts); + ReadFileL(iFs, (*rootCerts)[rootCerts->Count() - 1].iName, cert); + CleanupStack::PushL(cert); + aRootCerts.AppendL(cert); + CleanupStack::Pop(cert); + CleanupStack::PopAndDestroy(); // rootCerts + } + } + CleanupStack::PopAndDestroy(dir); + } + +#ifndef RD_MULTIPLE_DRIVE + + if (iFs.GetDir(KRomKeyStoragePath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#else //RD_MULTIPLE_DRIVE + + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultRom, driveNumber ); + iFs.DriveToChar( driveNumber, driveLetter ); + + tempPath.Format( KRomKeyStoragePath, (TUint)driveLetter ); + + if (iFs.GetDir(tempPath, KEntryAttDir, ESortByName, dir) == KErrNone) + +#endif + { + CleanupStack::PushL(dir); + for(i = 0; i < dir->Count(); i++) + { + if ((*dir)[i].IsDir()) + { + +#ifndef RD_MULTIPLE_DRIVE + + dirName.Copy(KRomKeyStoragePath); + +#else //RD_MULTIPLE_DRIVE + + dirName.Copy(tempPath); + +#endif + + dirName.Append((*dir)[i].iName); + dirName.Append('\\'); + User::LeaveIfError(iFs.SetSessionPath(dirName)); + User::LeaveIfError(iFs.GetDir(KSingingCertPattern, KEntryAttNormal, ESortByName, rootCerts)); + CleanupStack::PushL(rootCerts); + ReadFileL(iFs, (*rootCerts)[rootCerts->Count() - 1].iName, cert); + CleanupStack::PushL(cert); + aRootCerts.AppendL(cert); + CleanupStack::Pop(cert); + CleanupStack::PopAndDestroy(); // rootCerts + } + } + CleanupStack::PopAndDestroy(dir); + } + iFs.SetSessionPath( path ); + } + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::GetIMEIL +// ----------------------------------------------------------------------------- +// +const TDesC& CDrmStdKeyStorage::GetImeiL() + { + if ( iImei ) + { + return *iImei; + } + +#if 1// (defined __WINS__ || defined WINSCW) + // Default IMEI used for emulator + _LIT( KDefaultSerialNumber, "123456789123456789" ); + iImei = KDefaultSerialNumber().AllocL(); + + return *iImei; +#else + + TInt error( KErrNone ); + TInt count( 0 ); + TInt count2( 0 ); + TUint32 caps( 0 ); + TBool found (EFalse); + + RTelServer etelServer; + RMobilePhone phone; + + TUint KMaxImeiTries = 5; + + for ( TUint8 i = 0; i < KMaxImeiTries; ++i ) + { + error = etelServer.Connect(); + if ( error ) + { + User::After( TTimeIntervalMicroSeconds32( KWaitingTime ) ); + } + else + { + break; + } + } + + User::LeaveIfError( error ); + CleanupClosePushL( etelServer ); + + User::LeaveIfError( etelServer.LoadPhoneModule( KMmTsyModuleName ) ); + + TUnloadModule unload; + unload.iServer = &etelServer; + unload.iName = &KMmTsyModuleName; + + TCleanupItem item( DoUnloadPhoneModule, &unload ); + CleanupStack::PushL( item ); + User::LeaveIfError( etelServer.EnumeratePhones( count ) ); + + for ( count2 = 0; count2 < count && !found; ++count2 ) + { + RTelServer::TPhoneInfo phoneInfo; + User::LeaveIfError( etelServer.GetTsyName( count2, phoneInfo.iName ) ); + + if ( phoneInfo.iName.CompareF(KMmTsyModuleName()) == 0 ) + { + User::LeaveIfError( etelServer.GetPhoneInfo( count2, phoneInfo ) ); + User::LeaveIfError( phone.Open( etelServer, phoneInfo.iName ) ); + CleanupClosePushL( phone ); + found = ETrue; + } + } + + if ( !found ) + { + // Not found. + User::Leave( KErrNotFound ); + } + + User::LeaveIfError( phone.GetIdentityCaps( caps ) ); + if (!( caps & RMobilePhone::KCapsGetSerialNumber )) + { + User::Leave( KErrNotFound ); + } + + RMobilePhone::TMobilePhoneIdentityV1 id; + TRequestStatus status; + + phone.GetPhoneId( status, id ); + + User::WaitForRequest( status ); + + User::LeaveIfError( status.Int() ); + + iImei = id.iSerialNumber.AllocL(); + + CleanupStack::PopAndDestroy( 3 ); // phone, item, etelServer + + HBufC8* buf = HBufC8::NewL( iImei->Size() ); + TPtr8 ptr( buf->Des() ); + ptr.Copy( *iImei ); + + LOG(_L("IMEI:")); + LOGHEX(ptr); + delete buf; + + return *iImei; +#endif /* __WINS__ , WINSCW */ + + } + + +// ----------------------------------------------------------------------------- +// CDrmStdKeyStorage::RandomDataGetL +// ----------------------------------------------------------------------------- +// + +void CDrmStdKeyStorage::RandomDataGetL( TDes8& aData, const TInt aLength ) + { + if ( aLength <= 0 ) + { + User::Leave(KErrArgument); + } + + TInt size = aData.MaxSize(); + + if( size < aLength ) + { + User::Leave(KErrOverflow); + } + + TRandom::Random( aData ); + } + +// end of file diff -r 9b61d901414f -r 458d62869c00 breakdeps/DRMEngine/DrmStdKeyStorage.mmp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/breakdeps/DRMEngine/DrmStdKeyStorage.mmp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,68 @@ +/* +* Copyright (c) 2004-2006 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: DRM Std Key Storage Module +* +*/ + + +#include + +TARGET stem_DrmStdKeyStorage.dll +TARGETTYPE DLL +UID 0x1000008D 0x10205CAF +CAPABILITY CAP_GENERAL_DLL DRM CommDD +VENDORID VID_DEFAULT + +USERINCLUDE /sf/mw/drm/omadrm/drmengine/keystorage/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/utils/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/../../inc // ADo level inc dir + +// Default system include paths for middleware layer modules. +MW_LAYER_SYSTEMINCLUDE +SYSTEMINCLUDE /epoc32/include/libc +SYSTEMINCLUDE /epoc32/include/ecom + +SOURCEPATH ./ +SOURCE DrmStdKeyStorage.cpp + +LIBRARY euser.lib +LIBRARY efsrv.lib +LIBRARY asn1.lib +LIBRARY cryptography.lib +LIBRARY crypto.lib +LIBRARY x500.lib +LIBRARY x509.lib +LIBRARY pkixcert.lib +LIBRARY random.lib +LIBRARY hash.lib +//LIBRARY etel.lib +//LIBRARY etelmm.lib +LIBRARY flogger.lib +LIBRARY featmgr.lib + +#ifdef RD_MULTIPLE_DRIVE +LIBRARY platformenv.lib +#endif + +#if defined(ARMCC) +deffile /sf/mw/drm/omadrm/drmengine/eabi/DrmStdKeyStorage.def +#elif defined( WINSCW ) +deffile /sf/mw/drm/omadrm/drmengine/bwinscw/DrmStdKeyStorage.def +#elif defined( WINS ) +deffile /sf/mw/drm/omadrm/drmengine/bwins/DrmStdKeyStorage.def +#else +deffile /sf/mw/drm/omadrm/drmengine/bmarm/DrmStdKeyStorage.def +#endif + +SMPSAFE diff -r 9b61d901414f -r 458d62869c00 breakdeps/DRMEngine/ROAPHandler.mmp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/breakdeps/DRMEngine/ROAPHandler.mmp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,143 @@ +/* +* Copyright (c) 2004-2008 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: ROAP Handler build configuration +* +*/ + + +#include +#include + +TARGET stem_ROAPHandler.dll +TARGETTYPE DLL +UID 0x1000008D 0x101F6DB5 +CAPABILITY CAP_GENERAL_DLL DRM +VENDORID VID_DEFAULT + +USERINCLUDE /sf/mw/drm/omadrm/drmengine/dcf/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/dm/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/agentv2/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/ro/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/roap/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/utils/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/server/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/roapstorage/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/drmclock/Inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/dcfrepository/client/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/../../inc // ADo level inc dir + +// Default system include paths for middleware layer modules. +APP_LAYER_SYSTEMINCLUDE +SYSTEMINCLUDE /epoc32/include/libc +SYSTEMINCLUDE /epoc32/include/ecom + +SOURCEPATH ./ +SOURCE RoapEng.cpp + +SOURCEPATH /sf/mw/drm/omadrm/drmengine/roap/src + +SOURCE RoapEngBase.cpp +SOURCE RoapTrigger.cpp +SOURCE RoapHttpHandler.cpp +SOURCE RoapConnection.cpp +SOURCE RoapResponse.cpp +SOURCE RoapSyncWrapper.cpp + +SOURCE RoapSigner.cpp + +SOURCE RoapParser.cpp +SOURCE JoinDomainRespParser.cpp +SOURCE LeaveDomainRespParser.cpp +SOURCE RegistrationRespParser.cpp +SOURCE RightsRespParser.cpp +SOURCE RIHelloParser.cpp +SOURCE RoapTriggerParser.cpp + +SOURCE RoapMessage.cpp +SOURCE DeviceHello.cpp +SOURCE RIHello.cpp +SOURCE RegistrationReq.cpp +SOURCE RegistrationResp.cpp +SOURCE RightsReq.cpp +SOURCE RightsResp.cpp +SOURCE JoinDomainReq.cpp +SOURCE JoinDomainResp.cpp +SOURCE LeaveDomainReq.cpp +SOURCE LeaveDomainResp.cpp + +#ifdef RD_DRM_METERING +SOURCE MeteringReportReq.cpp +SOURCE MeteringReportResp.cpp +SOURCE MeteringReportRespParser.cpp +#endif + +SOURCEPATH /sf/mw/drm/omadrm/drmengine/utils/src +SOURCE MultipartHandler.cpp + +LIBRARY euser.lib +LIBRARY estor.lib +LIBRARY efsrv.lib +LIBRARY commdb.lib +LIBRARY bafl.lib +LIBRARY esock.lib +LIBRARY http.lib +LIBRARY inetprotutil.lib +LIBRARY XmlFramework.lib +LIBRARY apmime.lib +LIBRARY asn1.lib +LIBRARY cryptography.lib +LIBRARY crypto.lib +LIBRARY ecom.lib +LIBRARY x509.lib +LIBRARY x500.lib +LIBRARY pkixcert.lib +LIBRARY random.lib +LIBRARY hash.lib +//LIBRARY etel.lib +//LIBRARY etelmm.lib +LIBRARY CharConv.lib +LIBRARY drmcrypto.lib +LIBRARY DrmParsers.lib +LIBRARY DrmDcf.lib +LIBRARY DrmRights.lib +LIBRARY DrmServerInterfaces.lib +LIBRARY DcfRep.lib +LIBRARY caf.lib // Embedding domain ROs +LIBRARY cafutils.lib // Embedding domain ROs +LIBRARY centralrepository.lib // Browser default AP +LIBRARY cmmanager.lib +LIBRARY featmgr.lib + +LIBRARY SysUtil.lib +LIBRARY HttpFilterCommon.lib +LIBRARY CommonUI.lib +LIBRARY PlatformEnv.lib +LIBRARY drmroapwbxmlparser.lib + + +// Uncomment the following lines to enable internal logging. +macro _ROAP_TESTING +LIBRARY flogger.lib + +#if defined(ARMCC) +deffile /sf/mw/drm/omadrm/drmengine/eabi/ROAPHandler.def +#elif defined( WINSCW ) +deffile /sf/mw/drm/omadrm/drmengine/bwinscw/ROAPHandler.def +#elif defined( WINS ) +deffile /sf/mw/drm/omadrm/drmengine/bwins/ROAPHandler.def +#else +deffile /sf/mw/drm/omadrm/drmengine/bmarm/ROAPHandler.def +#endif + +SMPSAFE diff -r 9b61d901414f -r 458d62869c00 breakdeps/DRMEngine/RightsServer.mmp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/breakdeps/DRMEngine/RightsServer.mmp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,190 @@ +/* +* Copyright (c) 2003-2008 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: Makefile of DRM Engine & DRM Rights Database +* +*/ + + +#include + +TARGET stem_RightsServer.exe +TARGETTYPE EXE + +UID 0x1000008d 0x101F51F2 +CAPABILITY CAP_SERVER DRM CommDD ProtServ PowerMgmt Location +VENDORID VID_DEFAULT + +// Default system include paths for middleware layer modules. +MW_LAYER_SYSTEMINCLUDE +SYSTEMINCLUDE /epoc32/include/libc +SYSTEMINCLUDE /epoc32/include/connect + +USERINCLUDE ./ +USERINCLUDE /sf/mw/drm/omadrm/drmengine/server/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/agentv2/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/ro/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/dcf/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/notifier/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/utils/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/roap/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/roapstorage/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/drmclock/Inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/keystorage/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/drmbackup/inc +USERINCLUDE /sf/mw/drm/omadrm/drmengine/../../inc // ADo level inc dir + +SOURCEPATH ./ +SOURCE DRMRightsServer.cpp +SOURCE DRMClock.cpp + +SOURCEPATH /sf/mw/drm/omadrm/drmengine/server/src + +// DRM Engine (server side) +SOURCE DRMDbSession.cpp +// SOURCE drmpermissionlist.cpp +SOURCE drmparentstorage.cpp +// SOURCE drmpermissionitem.cpp +SOURCE DRMReplayCache.cpp +SOURCE DRMXOma.cpp +SOURCE DRMActiveOperation.cpp +SOURCE DRMObsoleteFinder.cpp +SOURCE drmconsume.cpp + +// DRM Rights Database +SOURCE drmrightsdb.cpp +SOURCE DRMRightsData.cpp +SOURCE DRMCommonData.cpp +SOURCE DRMRightsCleaner.cpp + +// DRM Metering +#ifdef RD_DRM_METERING +SOURCE drmmeteringdbdata.cpp +#endif +SOURCE drmmeteringdb.cpp + +// DRM Backup implementation +SOURCEPATH /sf/mw/drm/omadrm/drmengine/drmbackup/src +SOURCE DRMBackup.cpp +SOURCE DRMBackupObserver.cpp + +// DRM Notifier +SOURCEPATH /sf/mw/drm/omadrm/drmengine/notifier/src + +SOURCE DRMMessageStorage.cpp +SOURCE DRMNotifierServer.cpp +SOURCE DRMNotifierSession.cpp + +// RoapStorage +SOURCEPATH /sf/mw/drm/omadrm/drmengine/roapstorage/src + +SOURCE RoapStorageClient.cpp +SOURCE RoapStorageServer.cpp +SOURCE RoapStorageSession.cpp +SOURCE DRMContextDB.cpp +// OCSP cert classes +SOURCE responsedecoder.cpp +SOURCE response.cpp +SOURCE responsecertinfo.cpp +SOURCE certid.cpp + + +// DRM Clock +#ifdef __DRM_CLOCK +SOURCEPATH /sf/mw/drm/omadrm/drmengine/drmclock/Src +SOURCE DRMClockServer.cpp +SOURCE DRMClockSession.cpp + +//SOURCE DRMNitzObserver.cpp +SOURCE GPSWatcher.cpp +SOURCE GPSTimeUpdater.cpp + +#else +#ifdef __DRM_OMA2 +SOURCEPATH /sf/mw/drm/omadrm/drmengine/DRMClock/src +SOURCE OMA2NotSupportedWithoutDRMClock:define__DRM_CLOCKvariation.cpp +#endif // __DRM_OMA2 +#endif // __DRM_CLOCK + +// RDB and Process Watcher +SOURCEPATH /sf/mw/drm/omadrm/drmengine/utils/src +SOURCE dbwatcher.cpp +SOURCE dirwatcher.cpp +SOURCE procwatcher.cpp + +LIBRARY drmdcf.lib +LIBRARY drmrights.lib +LIBRARY drmserverinterfaces.lib +LIBRARY euser.lib +LIBRARY estor.lib +LIBRARY efsrv.lib +LIBRARY hash.lib +LIBRARY cryptography.lib +LIBRARY crypto.lib +LIBRARY asn1.lib +LIBRARY x509.lib +LIBRARY x500.lib +LIBRARY pkixcert.lib +LIBRARY drmcrypto.lib +LIBRARY drmkeystorage.lib +LIBRARY edbms.lib +LIBRARY bafl.lib +//LIBRARY etel.lib +//LIBRARY etelmm.lib +LIBRARY abclient.lib +LIBRARY charconv.lib +LIBRARY dcfrep.lib +LIBRARY drmparsers.lib // DRM message parser for RO import +LIBRARY centralrepository.lib // Browser default AP +LIBRARY InetProtUtil.lib // URI parser +LIBRARY flogger.lib +LIBRARY featmgr.lib // Feature Manager +LIBRARY wmdrmfileserverclient.lib +LIBRARY lbs.lib // GPS libraries +LIBRARY eposindicator.lib // GPS positioner indicator lib +#ifdef RD_DRM_METERING +LIBRARY random.lib +#endif + +LIBRARY StarterClient.lib // reset + +#ifdef RD_MULTIPLE_DRIVE +LIBRARY platformenv.lib +#endif + +LIBRARY SysUtil.lib +// LIBRARY commonengine.lib // Backup + +/* +#if !defined(WINS) +MACRO DRM_USE_SERIALNUMBER +LIBRARY etel.lib +#endif +*/ +// Uncomment the following lines to enable internal logging. +/* +macro _DRM_TESTING +USERINCLUDE /sf/mw/drm/omadrm/drmengine/internal/tsrc_internal +SOURCEPATH /sf/mw/drm/omadrm/drmengine/internal/tsrc_internal +LIBRARY drmdebugtools.lib +LIBRARY HAL.lib +LIBRARY charconv.lib +*/ + +#if defined( WINSCW ) +deffile /sf/mw/drm/omadrm/drmengine/bwinscw/RightsServer.def +#elif defined( WINS ) +deffile /sf/mw/drm/omadrm/drmengine/bwins/RightsServer.def +#endif + +//SMPSAFE diff -r 9b61d901414f -r 458d62869c00 breakdeps/DRMEngine/RoapEng.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/breakdeps/DRMEngine/RoapEng.cpp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,2695 @@ +/* +* Copyright (c) 2002-2008 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: Roap engine + * +*/ + + +// INCLUDE FILES + +#include + +#include + +#ifdef RD_MULTIPLE_DRIVE +#include +#include +#else +#include +#endif + +#ifndef __WINS__ +#include +#include +#include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include // CleanupResetAndDestroyPushL dependencies + +#include "cleanupresetanddestroy.h" // CleanupResetAndDestroyPushL +#include "DRMRights.h" +#include "RoapEng.h" +#include "RoapTrigger.h" +#include "wbxmlroaptriggerparser.h" +#include "RoapResponse.h" +#include "RoapMessage.h" +#include "RoapParser.h" +#include "RoapSigner.h" +#include "DeviceHello.h" +#include "RIHello.h" +#include "RegistrationReq.h" +#include "RegistrationResp.h" +#include "RightsReq.h" +#include "RightsResp.h" +#include "JoinDomainReq.h" +#include "JoinDomainResp.h" +#include "LeaveDomainReq.h" +#include "LeaveDomainResp.h" +#ifdef RD_DRM_METERING +#include "MeteringReportReq.h" +#include "MeteringReportResp.h" +#endif +#include "RoapStorageClient.h" +#include "RoapDef.h" +#include "RoapLog.h" +#include "RoapObserver.h" +#include "CmlaCrypto.h" +#include "DRMRIContext.h" +#include "DRMDomainContext.h" +#include "DRMProtectedRoParser.h" +#include "DRMClockClient.h" +#include "DcfRep.h" +#include "DcfEntry.h" +#include "Base64.h" +#include "drmsettingsplugininternalcrkeys.h" + + +#define STUB_C_CLASS_IN_NAMESPACE( n, c ) namespace n { class c: public CBase { private: c(); public: virtual ~c(); }; } n::c::c() {} n::c::~c() {} +#define STUB_C_CLASS( c ) class c : public CBase { private: c(); public: virtual ~c(); }; c::c() {} c::~c() {} +// This class does not do anything. +// It is defined here only to keep binary compatibility, +// because of unintentional class name leak in +// armv5 export history. +// Don't ever use this class for anything. +STUB_C_CLASS_IN_NAMESPACE( Roap , CWbxmlRoapTriggerToXmlParser ) + +// Yet another stub classes because of moved classes +// which have leaked virtual table entries +STUB_C_CLASS( COCSPResponse ) +STUB_C_CLASS( COCSPResponseCertInfo ) + + +using namespace Roap; +// ================= CONSTANTS ======================= +// For parsing multipart content +_LIT8(KCmlaIp1, "http://www.cm-la.com/tech/cmlaip/cmlaip#cmlaip-1"); +_LIT8(KLeaveDomainElement, "leaveDomain"); +_LIT8(KSignedInfoElement, "SignedInfo"); +_LIT(KBOM1, "\xFFFE"); +_LIT(KBOM2, "\xFEFF"); +#ifdef RD_DRM_METERING +_LIT8( KRoapVersion11, "1.1" ); +#endif + +static const TInt KDomainGenerationLength( 3 ); +static const TInt KMinCertChainLength( 3 ); +// ================= LOCAL FUNCTIONS ======================= + +LOCAL_C TBool SortArrays( + RPointerArray& aKeys, + RPointerArray& aMacs, + RPointerArray& aElements, + RArray& aOrder ) + { + TInt i; + TInt j; + TInt index; + HBufC8* temp1 = NULL; + HBufC8* temp2 = NULL; + HBufC8* temp3 = NULL; + TBool isInOrder = ETrue; + + if ( aOrder.Count() != aKeys.Count() || aKeys.Count() != aMacs.Count() + || aMacs.Count() != aElements.Count() ) + { + return EFalse; + } + + for ( i = 0; i < aKeys.Count(); i++ ) + { + index = aOrder[i]; + temp1 = aKeys[i]; + temp2 = aMacs[i]; + temp3 = aElements[i]; + j = i; + while ( ( j > 0 ) && ( aOrder[j - 1] > index ) ) + { + isInOrder = EFalse; + aOrder[j] = aOrder[j - 1]; + aKeys[j] = aKeys[j - 1]; + aMacs[j] = aMacs[j - 1]; + aElements[j] = aElements[j - 1]; + j = j - 1; + } + aOrder[j] = index; + aKeys[j] = temp1; + aMacs[j] = temp2; + aElements[j] = temp3; + } + return isInOrder; + } + +// ================= MEMBER FUNCTIONS ======================= + +// --------------------------------------------------------- +// CRoapEng::NewL() +// --------------------------------------------------------- +// +EXPORT_C CRoapEng* CRoapEng::NewL() + { + CRoapEng* engine = new ( ELeave ) CRoapEng(); + CleanupStack::PushL( engine ); + engine->ConstructL(); + CleanupStack::Pop( engine ); + return engine; + } + +// --------------------------------------------------------- +// CRoapEng::~CRoapEng() +// --------------------------------------------------------- +// +EXPORT_C CRoapEng::~CRoapEng() + { + if ( iStorageClient ) + { + iStorageClient->Close(); + } + delete iStorageClient; + if ( iClockClient ) + { + iClockClient->Close(); + } + delete iClockClient; + delete iParser; + delete iSigner; + delete iDeviceId; + delete iRoParser; + delete iDcfRep; + iRiAlgorithms.ResetAndDestroy(); + } + +// --------------------------------------------------------- +// CRoapEng::~CRoapEng() +// --------------------------------------------------------- +// +void CRoapEng::ConstructL() + { + LOGLIT( "CRoapEng::ConstructL" ) + + CRoapEngBase::ConstructL(); + iParser = CRoapParser::NewL(); + iStorageClient = new ( ELeave ) RRoapStorageClient; + User::LeaveIfError( iStorageClient->Connect() ); + iClockClient = new ( ELeave ) RDRMClockClient; + User::LeaveIfError( iClockClient->Connect() ); + TBuf8 deviceId; + iStorageClient->GetDevicePublicKeyHashL( deviceId ); + iDeviceId = deviceId.AllocL(); + iSigner = CRoapSigner::NewL( *iStorageClient ); + iRoParser = CDrmProtectedRoParser::NewL(); + iDcfRep = CDcfRep::NewL(); + iCertNeeded = ETrue; + iRiSupportsCertCaching = EFalse; + iTransStatus = ENotAsked; + iSelectedAlgorithms = EOma; + iSelectedRoot = KNullDesC8; + iStorageClient->SelectTrustedRootL( KNullDesC8 ); + iDeviceTimeError = EFalse; + iDomainId.SetLength( 0 ); + iSecureTime = ETrue; + iZone = 0; + } + +// --------------------------------------------------------- +// CRoapEng::CRoapEng() +// --------------------------------------------------------- +// +CRoapEng::CRoapEng() : + CRoapEngBase() + { + } + +// --------------------------------------------------------- +// CRoapEng::ParseTriggerL() +// --------------------------------------------------------- +// +CRoapTrigger* CRoapEng::ParseTriggerL( const TDesC8& aTrigger ) + { + LOGLIT( "CRoapEng::ParseTriggerL" ) + + CRoapTrigger* trigger( NULL ); + RBuf8 xmlTrigger; + CleanupClosePushL( xmlTrigger ); + _LIT8( KRoap, "ParseL( aTrigger ) ); + if ( parseError == KErrNone ) + { + xmlTrigger.Assign( b ); + b = NULL; + LOGLIT( " We have a WBXML trigger" ) + } + else + { // OMA BCAST: Check if this is an XML trigger after all.. + LOGLIT( " We have an XML trigger after all" ) + xmlTrigger.CreateL( aTrigger ); + } + CleanupStack::PopAndDestroy( wbParser ); + } + else + { + xmlTrigger.CreateL( aTrigger ); + } + trigger = iParser->ParseRoapTriggerL( xmlTrigger ); + + CleanupStack::PushL( trigger ); + if ( !trigger || !trigger->ValidTrigger() ) + { + User::Leave( KErrRoapGeneral ); + } + + // check that SilentRightsUrl is on the white list + // URL is searched from pre-configured white list + TBool fromPreConfiguredWhiteList( ETrue ); + if ( iStorageClient->WhiteListURLExistsL( *trigger->iRoapUrl, fromPreConfiguredWhiteList ) ) + { + iAllowedToContactRi = ETrue; + } + + if ( trigger->iTriggerType == ELeaveDomainTrigger && trigger->iSignature ) + { + if ( !VerifyTriggerSignatureL( xmlTrigger, *trigger ) ) + { + User::Leave( KErrRoapServerFatal ); + } + } + + CleanupStack::Pop( trigger ); + CleanupStack::PopAndDestroy( &xmlTrigger ); + + return trigger; + } + +// --------------------------------------------------------- +// CRoapEng::GetRIContextL() +// --------------------------------------------------------- +// +void CRoapEng::GetRIContextL( TBool& aRegistered, const TDesC8& aRiId ) + { + LOGLIT( "CRoapEng::GetRIContextL" ) + + CDRMRIContext* context = NULL; + + aRegistered = EFalse; + + // delete old RI context and obtain a new one + delete iStoredRiContext; + iStoredRiContext = NULL; + context = iStorageClient->GetRIContextL( aRiId ); + if ( !context ) + { + return; + } + + iStoredRiContext = context; + iRiSupportsCertCaching = iStoredRiContext->DeviceCertCached(); + iSelectedRoot = iStoredRiContext->SelectedDeviceRoot(); + iStorageClient->SelectTrustedRootL( iSelectedRoot ); + + if ( context->CertificateChain().Count() && context->ExpiryTime() + > GetDrmTimeL() ) + { + aRegistered = ETrue; + iUseRiContextUrl = EFalse; + } + else + { + // Received Context was invalid or expired + iUseRiContextUrl = EFalse; + delete iStoredRiContext; + iStoredRiContext = NULL; + } + } + +// --------------------------------------------------------- +// CRoapEng::GetDomainContextL() +// --------------------------------------------------------- +// +void CRoapEng::GetDomainContextL( + TBool& aIsJoined, + TBool& aIsValidGeneration, + const TDesC8& aDomainId ) + { + LOGLIT( "CRoapEng::GetDomainContextL" ) + + TInt generation = 0; + CDRMDomainContext* context = NULL; + + aIsJoined = EFalse; + aIsValidGeneration = EFalse; + + // last 3 digits are for Domain generation + context = iStorageClient->GetDomainContextL( aDomainId ); + + if ( !context ) + { + return; + } + + if ( context->ExpiryTime() > GetDrmTimeL() || context->ExpiryTime() + == Time::NullTTime() ) + { + aIsJoined = ETrue; + } + + TLex8 lex( aDomainId.Right( KDomainGenerationLength ) ); + lex.Val( generation ); + + if ( context->DomainGeneration() >= generation ) + { + aIsValidGeneration = ETrue; + } + + delete context; + } + +// --------------------------------------------------------- +// CRoapEng::CreateReqMessageL() +// --------------------------------------------------------- +// +void CRoapEng::CreateReqMessageL() + { + LOGLIT( "CRoapEng::CreateReqMessageL" ) + + __ASSERT_ALWAYS( iTrigger, User::Invariant() ); + __ASSERT_ALWAYS( !iRequest, User::Invariant() ); + + switch ( iReqMessage ) + { + case EDeviceHello: + { + iRequest = CreateDeviceHelloL(); + break; + } + case ERegistration: + { + iRequest = CreateRegistrationRequestL(); + break; + } + case EROAcquisition: + { + iRequest = CreateRightsRequestL(); + break; + } + case EJoinDomain: + { + iRequest = CreateJoinDomainRequestL(); + break; + } + case ELeaveDomain: + { + iRequest = CreateLeaveDomainRequestL(); + break; + } +#ifdef RD_DRM_METERING + case EMeteringRequest: + { + iRequest = CreateMeteringReportRequestL(); + break; + } +#endif + default: + { + User::Leave( KErrArgument ); + } + } + } + +// --------------------------------------------------------- +// CRoapEng::CreateDeviceHelloL() +// --------------------------------------------------------- +// +CRoapMessage* CRoapEng::CreateDeviceHelloL() + { + LOGLIT( "CRoapEng::CreateDeviceHelloL" ) + PERFORMANCE_LOGLIT( "Registration protocol started" ) + + RPointerArray idArray; + CDeviceHello* req = CDeviceHello::NewL(); + CleanupStack::PushL( req ); + + // Multi-PKI addition + CleanupResetAndDestroyPushL( idArray ); + CreateDeviceIdHashArrayL( idArray ); + for ( TInt i = 0; i < idArray.Count(); i++ ) + { + req->iDeviceIdArray.AppendL( *idArray[i] ); + } + CleanupStack::PopAndDestroy( &idArray ); + // Multi-PKI + +#ifndef RD_DRM_METERING + req->iVersion.Copy( KRoapVersion ); // Version 1.0 +#else + req->iVersion.Copy( KRoapVersion11 ); +#endif + if ( iTrigger->iNonce ) + { + req->iTriggerNonce = iTrigger->iNonce->AllocL(); + } + CmlaCrypto::SupportedAlgorithmsL( req->iAlgorithms ); + iSelectedAlgorithms = EOma; + + CleanupStack::Pop( req ); + return req; + } + +// --------------------------------------------------------- +// CRoapEng::CreateRegistrationRequestL() +// --------------------------------------------------------- +// +CRoapMessage* CRoapEng::CreateRegistrationRequestL() + { + LOGLIT( "CRoapEng::CreateRegistrationRequestL ->" ) + + __ASSERT_ALWAYS( iResponse, User::Invariant() ); + + CRegistrationReq* req = NULL; + CRIHello* resp = NULL; + RPointerArray trustedRootArray; + HBufC8* temp = NULL; + + resp = STATIC_CAST( CRIHello*, iResponse ); + req = CRegistrationReq::NewL(); + CleanupStack::PushL( req ); + if ( resp->iSession ) + { + req->iSession = resp->iSession->AllocL(); + } + else + { + User::Leave( KErrRoapServerFatal ); + } + + req->iNonce.SetLength( KDeviceNonceLength ); + TRandom::Random( req->iNonce ); + + req->iTime = GetDrmTimeL(); + + // store the nonce for DRM Time sync + iRegReqNonce = req->iNonce; + + if ( iCertNeeded ) + { + req->iCertificateChain = GetCertificateChainL(); + if ( resp->iCertificateCaching ) + { + iCertNeeded = EFalse; + } + } + + // Send all our trusted roots to the RI + CleanupResetAndDestroyPushL( trustedRootArray ); + + LOGLIT( " Getting trusted roots" ) + + iStorageClient->GetTrustedRootsL( trustedRootArray ); + + if ( !trustedRootArray.Count() ) + { + // No trusted roots found! + LOGLIT( " No trusted roots found!" ) + User::Leave( KErrRoapDevice ); + } + for ( TInt i = 0; i < trustedRootArray.Count(); i++ ) + { + temp = trustedRootArray[i]->AllocLC(); + req->iTrustedAuthorities.AppendL( temp ); + CleanupStack::Pop( temp ); + } + + LOGLIT( " Setting server info" ) + if ( resp->iServerInfo && resp->iServerInfo->Size() ) + { + req->iServerInfo = resp->iServerInfo->AllocL(); + } + + if ( iStoredRiContext ) + { + LOGLIT( " RI context available" ) + req->iPeerKeyIdentifier = iStoredRiContext->RIID(); + + if ( iStoredRiContext->OCSPResponse().Count() && !iDeviceTimeError ) + { + req->iOcspInfoStored = ETrue; + req->iOcspResponderKeyId = GetOCSPResponderKeyHashL(); + } + } + if ( resp->iNeedDeviceDetails ) + { + LOGLIT( " Getting device details" ) + GetDeviceDetailsL( req->iDeviceDetailsManufacturer, + req->iDeviceDetailsModel, req->iDeviceDetailsVersion ); + } + + if ( iTrigger->iNonce ) + { + req->iTriggerNonce = iTrigger->iNonce->AllocL(); + } + + CleanupStack::PopAndDestroy( &trustedRootArray ); + CleanupStack::Pop( req ); + + LOGLIT( "CRoapEng::CreateRegistrationRequestL <-" ) + + return req; + } + +// --------------------------------------------------------- +// CRoapEng::CreateRightsRequestL() +// --------------------------------------------------------- +// +CRoapMessage* CRoapEng::CreateRightsRequestL() + { + LOGLIT( "CRoapEng::CreateRightsRequestL" ) + PERFORMANCE_LOGLIT( "RO acquisition protocol started" ) + + __ASSERT_ALWAYS( iStoredRiContext, User::Invariant() ); + + CRightsReq* req = NULL; + RPointerArray ttIDs; + RPointerArray cids; + HBufC8* temp = NULL; + TBuf8 deviceId; + + req = CRightsReq::NewL(); + CleanupStack::PushL( req ); + + req->iNonce.SetLength( KDeviceNonceLength ); + TRandom::Random( req->iNonce ); + + req->iTime = GetDrmTimeL(); + + iStorageClient->GetDevicePublicKeyHashL( deviceId ); + delete iDeviceId; + iDeviceId = NULL; + iDeviceId = deviceId.AllocL(); + req->iDeviceId = *iDeviceId; + + req->iRiId.Copy( iTrigger->iRiId ); + + if ( !iRiSupportsCertCaching ) + { + req->iCertificateChain = GetCertificateChainL(); + } + if ( iTrigger->iDomainId ) + { + req->iDomainId = iTrigger->iDomainId->AllocL(); + } + + for ( TInt i = 0; i < iTrigger->iRoIdList.Count(); i++ ) + { + temp = iTrigger->iRoIdList[i]->AllocLC(); + req->iRoIdList.AppendL( temp ); + CleanupStack::Pop( temp ); + } + + if ( iStoredRiContext ) + { + req->iPeerKeyIdentifier = iStoredRiContext->RIID(); + + if ( iStoredRiContext->OCSPResponse().Count() ) + { + req->iOcspInfoStored = ETrue; + req->iOcspResponderKeyId = GetOCSPResponderKeyHashL(); + } + } + + CleanupResetAndDestroyPushL( cids ); + + CleanupResetAndDestroyPushL( ttIDs ); + + FetchTransactionIDL( ttIDs, cids ); + + for ( TInt i = 0; i < ttIDs.Count() && i < cids.Count(); i++ ) + { + temp = ttIDs[i]->AllocLC(); + req->iTransTrackIDs.AppendL( temp ); + CleanupStack::Pop( temp ); + temp = cids[i]->AllocLC(); + req->iContentIDs.AppendL( temp ); + CleanupStack::Pop( temp ); + } + + CleanupStack::PopAndDestroy( &ttIDs ); + CleanupStack::PopAndDestroy( &cids ); + + if ( iTrigger->iNonce ) + { + req->iTriggerNonce = iTrigger->iNonce->AllocL(); + } + + CleanupStack::Pop( req ); + return req; + } + +// --------------------------------------------------------- +// CRoapEng::CreateJoinDomainRequestL() +// --------------------------------------------------------- +// +CRoapMessage* CRoapEng::CreateJoinDomainRequestL() + { + LOGLIT( "CRoapEng::CreateJoinDomainRequestL" ) + PERFORMANCE_LOGLIT( "Join domain protocol started" ) + + __ASSERT_ALWAYS( iStoredRiContext, User::Invariant() ); + + CJoinDomainReq* req = NULL; + TBuf8 deviceId; + + req = CJoinDomainReq::NewL(); + CleanupStack::PushL( req ); + + req->iNonce.SetLength( KDeviceNonceLength ); + TRandom::Random( req->iNonce ); + + req->iTime = GetDrmTimeL(); + + iStorageClient->GetDevicePublicKeyHashL( deviceId ); + delete iDeviceId; + iDeviceId = NULL; + iDeviceId = deviceId.AllocL(); + req->iDeviceId = *iDeviceId; + + req->iRiId.Copy( iTrigger->iRiId ); + + if ( !iRiSupportsCertCaching ) + { + req->iCertificateChain = GetCertificateChainL(); + } + if ( iTrigger->iDomainId ) + { + req->iDomainId = iTrigger->iDomainId->AllocL(); + iDomainId.Copy( *req->iDomainId ); + } + else if ( iDomainId.Length() && iTrigger->iTriggerType + == ERoAcquisitionTrigger ) + { + req->iDomainId = iDomainId.AllocL(); + } + else + { + User::Leave( KErrRoapServerFatal ); + } + + if ( iStoredRiContext ) + { + req->iPeerKeyIdentifier = iStoredRiContext->RIID(); + + if ( iStoredRiContext->OCSPResponse().Count() ) + { + req->iOcspInfoStored = ETrue; + req->iOcspResponderKeyId = GetOCSPResponderKeyHashL(); + } + } + +#ifdef _DISABLE_HASH_CHAIN_GENERATION + req->iHashChainSupport = EFalse; +#endif + + if ( iTrigger->iNonce ) + { + req->iTriggerNonce = iTrigger->iNonce->AllocL(); + } + + CleanupStack::Pop( req ); + return req; + } + +// --------------------------------------------------------- +// CRoapEng::CreateLeaveDomainRequestL() +// --------------------------------------------------------- +// +CRoapMessage* CRoapEng::CreateLeaveDomainRequestL() + { + LOGLIT( "CRoapEng::CreateLeaveDomainRequestL" ) + PERFORMANCE_LOGLIT( "Leave domain protocol started" ) + + __ASSERT_ALWAYS( iStoredRiContext, User::Invariant() ); + + if ( !iTrigger->iDomainId ) + { + User::Leave( KErrRoapServerFatal ); + } + // delete Domain context before sending LeaveDomain req + TRAPD( ret, iStorageClient->DeleteDomainContextL( *iTrigger->iDomainId )); + + CLeaveDomainReq* req = NULL; + TBuf8 deviceId; + + req = CLeaveDomainReq::NewL(); + CleanupStack::PushL( req ); + + if ( ret == KErrNotFound ) + { + req->iNotMember = ETrue; + } + else + { + req->iNotMember = EFalse; + User::LeaveIfError( ret ); + } + + req->iNonce.SetLength( KDeviceNonceLength ); + TRandom::Random( req->iNonce ); + + req->iTime = GetDrmTimeL(); + + iStorageClient->GetDevicePublicKeyHashL( deviceId ); + delete iDeviceId; + iDeviceId = NULL; + iDeviceId = deviceId.AllocL(); + req->iDeviceId = *iDeviceId; + + req->iRiId.Copy( iTrigger->iRiId ); + + if ( !iRiSupportsCertCaching ) + { + req->iCertificateChain = GetCertificateChainL(); + } + if ( iTrigger->iDomainId ) + { + req->iDomainId = iTrigger->iDomainId->AllocL(); + } + + if ( iTrigger->iNonce ) + { + req->iTriggerNonce = iTrigger->iNonce->AllocL(); + } + + CleanupStack::Pop( req ); + return req; + } +// --------------------------------------------------------- +// CRoapEng::CreateMeteringReportRequestL() +// --------------------------------------------------------- +// +CRoapMessage* CRoapEng::CreateMeteringReportRequestL() + { +#ifndef RD_DRM_METERING + return NULL; +#else + + LOGLIT( "CRoapEng::CreateMeteringReportRequestL" ) + PERFORMANCE_LOGLIT( "Metering report creation started" ) + + CMeteringReportReq* req = NULL; + TBuf8 deviceId; + TBuf8 macKey; + TBool registered( EFalse ); + + req = CMeteringReportReq::NewL(); + CleanupStack::PushL( req ); + req->iAlgorithmInUse = iSelectedAlgorithms; + // check if we are not using OMA algorithms + // and update selected algorithm accordingly + GetRIContextL( registered, iTrigger->iRiId ); + if ( registered && iStoredRiContext ) + { + for ( TInt i = 0; i < iStoredRiContext->Algorithms().Count(); i++ ) + { + if ( iStoredRiContext->Algorithms()[i]->CompareF( KCmlaIp1() ) + == KErrNone ) + { + // note currently assumed that only + // 1 of 7 ppossible algorithms used + req->iAlgorithmInUse = ECmlaIp1; + break; + } + } + } + + // generate DeviceNonce + req->iNonce.SetLength( KDeviceNonceLength ); + TRandom::Random( req->iNonce ); + + // generate MeteringNonce + req->iReportNonce.SetLength( KDeviceNonceLength ); + TRandom::Random( req->iReportNonce ); + + // fetch secure time for request + req->iTime = GetDrmTimeL(); + + // insert DeviceId + iStorageClient->GetDevicePublicKeyHashL( deviceId ); + delete iDeviceId; + iDeviceId = NULL; + iDeviceId = deviceId.AllocL(); + req->iDeviceId = *iDeviceId; + + // insert RiId + req->iRiId.Copy( iTrigger->iRiId ); + + // insert Certificate chain if needed + if ( !iRiSupportsCertCaching ) + { + req->iCertificateChain = GetCertificateChainL(); + } + + // add trigger Nonce + if ( iTrigger->iNonce ) + { + req->iTriggerNonce = iTrigger->iNonce->AllocL(); + } + + // Get from server encrypted metering report mac key as plain, + // MEK and MAC key as encypted, and hash of + // PKI public key used in encryition + req->iCipherValue = iStorageClient->GetMeteringDataL( req->iRiId, macKey, + req->iEncKeyHash, req->iEncryptedMekAndMak ); + + // calculate mac over + req->InsertMacL( macKey ); + + CleanupStack::Pop( req ); + return req; + +#endif //RD_DRM_METERING + } + +// --------------------------------------------------------- +// CRoapEng::HandleRoapResponseL() +// --------------------------------------------------------- +// +void CRoapEng::HandleRoapResponseL( const TDesC8& aXmlResponse ) + { + LOGLIT( "CRoapEng::HandleRoapMessageL" ) + + delete iResponse; + iResponse = NULL; + + switch ( iReqMessage ) + { + case EDeviceHello: + { + HandleRIHelloPduL( aXmlResponse ); + break; + } + case ERegistration: + { + HandleReqResponsePduL( aXmlResponse ); + break; + } + case EROAcquisition: + { + HandleRightsResponsePduL( aXmlResponse, EFalse ); + break; + } + case EJoinDomain: + { + HandleJoinDomainResponsePduL( aXmlResponse ); + break; + } + case ELeaveDomain: + { + HandleLeaveDomainResponsePduL( aXmlResponse ); + break; + } +#ifdef RD_DRM_METERING + case EMeteringRequest: + { + HandleMeteringReportResponsePduL( aXmlResponse ); + break; + } +#endif + default: + { + User::Leave( KErrArgument ); + } + } + } + +// --------------------------------------------------------- +// CRoapEng::HandleRIHelloPduL() +// --------------------------------------------------------- +// +void CRoapEng::HandleRIHelloPduL( const TDesC8& aRiHello ) + { + LOGLIT( "CRoapEng::HandleRIHelloPduL" ) + + CRIHello* resp = NULL; + HBufC8* temp = NULL; + + resp = iParser->ParseRIHelloL( aRiHello ); + iRoapStatus = resp->iStatus; + iResponse = resp; + if ( iRoapStatus == ESuccess ) + { + iCertNeeded = ETrue; + iRiSupportsCertCaching = EFalse; + + if ( resp->iPeerKeyIdentifier ) + { + iRiSupportsCertCaching = ETrue; + if ( resp->iPeerKeyId.Length() ) + { + if ( resp->iPeerKeyId.CompareF( *iDeviceId ) == KErrNone ) + { + iCertNeeded = EFalse; + } + } + else + { + iCertNeeded = EFalse; + } + } + else if ( resp->iCertificateCaching ) + { + iRiSupportsCertCaching = ETrue; + } + + if ( resp->iAlgorithms.Count() ) + { + iRiAlgorithms.ResetAndDestroy(); + for ( TInt i = 0; i < resp->iAlgorithms.Count(); i++ ) + { + if ( resp->iAlgorithms[i]->CompareF( KCmlaIp1() ) == KErrNone ) + { + iSelectedAlgorithms = ECmlaIp1; + } + temp = resp->iAlgorithms[i]->AllocLC(); + iRiAlgorithms.AppendL( temp ); + CleanupStack::Pop( temp ); + } + } + iRiId.Copy( resp->iRiId ); + iRiVersion.Copy( resp->iSelectedVersion ); + + /*** + This is needed when the multiple PKIs are supported. + ***/ + if ( resp->iTrustedAuthorities.Count() ) + { + // select the first matching root from the list + LOGLIT( "Choose the first matching trust anchor" ) + iStorageClient->SelectTrustedRootL( resp->iTrustedAuthorities, + iSelectedRoot ); + LOGLIT( "The trust anchor selected" ) + DETAILLOGHEX( iSelectedRoot.Ptr(), iSelectedRoot.Length() ) + } + else + { + if ( iStoredRiContext && iStoredRiContext->RIID() == iRiId ) + { + if ( iSelectedRoot != iStoredRiContext->SelectedDeviceRoot() ) + { + DETAILLOGLIT( "Changing trusted root to that of saved RI context" ) + DETAILLOGLIT( "old root" ) + DETAILLOGHEX( iSelectedRoot.Ptr(), iSelectedRoot.Length() ) + + iSelectedRoot = iStoredRiContext->SelectedDeviceRoot(); + iStorageClient->SelectTrustedRootL( iSelectedRoot ); + } + DETAILLOGLIT( "Using trusted root of saved RI context" ) + DETAILLOGHEX( iSelectedRoot.Ptr(), iSelectedRoot.Length() ) + } + else + { + DETAILLOGLIT( "Using default trusted root" ) + iSelectedRoot = KNullDesC8; + iStorageClient->SelectTrustedRootL( iSelectedRoot ); + } + } + + iSigner->AddRequestL( aRiHello ); + } + else if ( resp->iErrorUrl ) + { + if ( iObserver ) + { + iObserver->ErrorUrlL( *resp->iErrorUrl ); + } + } + } + +// --------------------------------------------------------- +// CRoapEng::HandleReqResponsePduL() +// --------------------------------------------------------- +// +void CRoapEng::HandleReqResponsePduL( const TDesC8& aRegResp ) + { + LOGLIT( "CRoapEng::HandleReqResponsePduL" ) + + CRegistrationResp* resp = NULL; + CDRMRIContext* context = NULL; + CX509Certificate* cert = NULL; + TTime riExpiry; + TBool status = EFalse; + TUint8 riCertCaching = EFalse; + + resp = iParser->ParseRegistrationRespL( aRegResp ); + iRoapStatus = resp->iStatus; + iResponse = resp; + if ( iRoapStatus == ESuccess ) + { + if ( resp->iOcspResponse.Count() > 0 ) + { + // adjust DRM Time according to OCSP response + // All needed verifications done in server side + TBool deviceTimeUpdated( EFalse ); + if ( resp->iCertificateChain.Count() > 0 ) + { + deviceTimeUpdated = iStorageClient->UpdateDrmTimeL( + resp->iCertificateChain, resp->iOcspResponse, + iRegReqNonce ); + } + else if ( iStoredRiContext ) + { + deviceTimeUpdated = iStorageClient->UpdateDrmTimeL( + iStoredRiContext->CertificateChain(), + resp->iOcspResponse, iRegReqNonce ); + } + if ( deviceTimeUpdated ) + { + LOGLIT( "drm time updated" ) + iDeviceTimeError = EFalse; + } + } + + if ( !iStoredRiContext || ( resp->iCertificateChain.Count() + && resp->iOcspResponse.Count() ) ) + { + status = VerifyCertificateChainL( resp->iCertificateChain, + resp->iOcspResponse ); + if ( !status ) + { + LOGLIT( "Certificate chain validation failed" ) + User::Leave( KErrRoapServerFatal ); + } + status = ValidateRiIdL( iRiId, *resp->iCertificateChain[0] ); + if ( !status ) + { + LOGLIT( "RI ID validation failed" ) + User::Leave( KErrRoapServerFatal ); + } + } + + if ( iStoredRiContext ) + { + // if we have already stored certificates -> use those. + status = VerifySignatureL( aRegResp, *resp->iSignature, + iStoredRiContext->CertificateChain() ); + } + else + { + // otherwise use the received certificates + status = VerifySignatureL( aRegResp, *resp->iSignature, + resp->iCertificateChain ); + } + + if ( !status ) + { + LOGLIT( "Signature verification failed" ) + User::Leave( KErrRoapServerFatal ); + } + + if ( resp->iCertificateChain.Count() ) + { + // Validate RI certificate + cert = CX509Certificate::NewLC( *resp->iCertificateChain[0] ); + + status = ValidateRiCertificateL( cert ); + if ( !status ) + { + User::LeaveIfError( KErrRoapServerFatal ); + } + + riExpiry = cert->ValidityPeriod().Finish(); + + iRiSupportsCertCaching ? riCertCaching = ETrue : riCertCaching + = EFalse; + + context = CDRMRIContext::NewLC( iRiId, *iRiAlias, iRiVersion, + iRiAlgorithms, resp->iWhiteList, *resp->iRiUrl, riExpiry, + resp->iCertificateChain, resp->iOcspResponse, riCertCaching, + iSelectedRoot, ETrue ); + + iStorageClient->AddRIContextL( *context ); + delete iStoredRiContext; + iStoredRiContext = context; + CleanupStack::Pop( context ); + CleanupStack::PopAndDestroy( cert ); + } + } + else + { + if ( resp->iErrorUrl ) + { + if ( iObserver ) + { + iObserver->ErrorUrlL( *resp->iErrorUrl ); + } + } + iSigner->ResetResponses(); + } + + PERFORMANCE_LOGLIT( "Registration protocol completed" ) + } + +// --------------------------------------------------------- +// CRoapEng::HandleRightsResponseL() +// --------------------------------------------------------- +// +void CRoapEng::HandleRightsResponsePduL( + const TDesC8& aRightsResp, + TBool aOnePass ) + { + LOGLIT( "CRoapEng::HandleRightsResponsePduL" ) + + CRightsResp* resp = NULL; + TBool status = EFalse; + + resp = iParser->ParseRightsRespL( aRightsResp ); + + CleanupStack::PushL( resp ); + + if ( resp->iStatus == ESuccess ) + { + if ( !aOnePass ) + { + // 2-pass protocol + __ASSERT_ALWAYS( iStoredRiContext, User::Invariant() ); + + CRightsReq* request = NULL; + request = STATIC_CAST( CRightsReq*, iRequest ); + if ( resp->iDeviceId.CompareF( request->iDeviceId ) != KErrNone + || resp->iRiId.CompareF( request->iRiId ) != KErrNone + || resp->iNonce->CompareF( request->iNonce ) != KErrNone ) + { + User::Leave( KErrRoapServerFatal ); + } + } + else + { + LOGLIT( "1-pass ROAP" ) + // 1-pass protocol + TBool registered = EFalse; + GetRIContextL( registered, resp->iRiId ); + if ( !registered ) + { + // Recoverable error by re-registering the device + // (after receiving user consent or iv device belongs to whiteliust) + LOGLIT( "Device not registered to RI" ) + User::Leave( KErrRoapNotRegistered ); + } + if ( resp->iDeviceId.CompareF( *iDeviceId ) != KErrNone ) + { + // Unrecoverable error + LOGLIT( "Device ID mismatch!" ) + User::Leave( KErrRoapServerFatal ); + } + } + + if ( !iStoredRiContext || ( resp->iCertificateChain.Count() + && resp->iOcspResponse.Count() ) ) + { + status = VerifyCertificateChainL( resp->iCertificateChain, + resp->iOcspResponse ); + if ( !status ) + { + LOGLIT( "Certificate chain validation failed" ) + User::Leave( KErrRoapServerFatal ); + } + status = ValidateRiIdL( resp->iRiId, *resp->iCertificateChain[0] ); + if ( !status ) + { + LOGLIT( "RI ID validation failed" ) + User::Leave( KErrRoapServerFatal ); + } + } + + status = VerifySignatureL( aRightsResp, *resp->iSignature, + iStoredRiContext->CertificateChain() ); + if ( !status ) + { + LOGLIT( "Signature verification failed" ) + User::Leave( KErrRoapServerFatal ); + } + + iReturnedROs.ResetAndDestroy(); + TRAPD( r, iRoParser->ParseAndStoreL( aRightsResp, iReturnedROs )); + + if ( r == KErrRightsServerDomainNotRegistered ) + { + // perform implicit Join Domain + LOGLIT( "Domain RO received - Not joined" ) + LOGLIT( "Perform impicit Join Domain before storing the RO" ) + + HBufC8* domainID = NULL; + + domainID = iRoParser->GetDomainIdL( aRightsResp ); + + if ( domainID && domainID->Length() <= KDomainIdLength ) + { + iDomainId.Copy( *domainID ); + delete domainID; + domainID = NULL; + } + else + { + LOGLIT( "No Domain ID available!" ) + User::Leave( KErrRoapServerFatal ); + } + + delete iDomainRightsResp; + iDomainRightsResp = NULL; + iDomainRightsResp = aRightsResp.AllocL(); + iImplicitJoinDomain = ETrue; + } + else + { + User::LeaveIfError( r ); + + if ( !aOnePass ) + { + if ( iObserver ) + { + iObserver->RightsObjectDetailsL( iReturnedROs ); // pass RO details to UI + } + } + } + + TRAP( r, InsertTransactionIDL( resp->iTransTrackIDs, resp->iContentIDs ) ); + TRAP( r, InsertDomainRosL() ); + + // Device DRM Time is insecure, but server thinks that the time is correct + // -> Set DRM Time as secure + if ( !iSecureTime ) + { + SetDrmTimeSecureL(); + } + } + else + { + if ( resp->iErrorUrl ) + { + if ( iObserver ) + { + iObserver->ErrorUrlL( *resp->iErrorUrl ); + } + } + iSigner->ResetResponses(); + } + + CleanupStack::Pop( resp ); + + if ( !aOnePass ) + { + iRoapStatus = resp->iStatus; + iResponse = resp; + } + + PERFORMANCE_LOGLIT( "RO acquisition protocol completed" ) + } + +// --------------------------------------------------------- +// CRoapEng::HandleJoinDomainResponseL() +// --------------------------------------------------------- +// +void CRoapEng::HandleJoinDomainResponsePduL( const TDesC8& aJoinResp ) + { + LOGLIT( "CRoapEng::HandleJoinDomainResponsePduL" ) + + __ASSERT_ALWAYS( iStoredRiContext, User::Invariant() ); + + CJoinDomainResp* resp = NULL; + CDRMDomainContext* context = NULL; + RPointerArray domainKeyElements; + TBool status = EFalse; + + CleanupResetAndDestroyPushL( domainKeyElements ); + + resp = iParser->ParseJoinDomainRespL( aJoinResp, domainKeyElements ); + + iResponse = resp; + iRoapStatus = resp->iStatus; + + if ( iRoapStatus == ESuccess ) + { + if ( resp->iDomainKeyRiId != resp->iRiId ) + { + LOGLIT( "resp->iDomainKeyRiId != resp->iRiId" ) + User::Leave( KErrRoapServerFatal ); + } + + if ( !iStoredRiContext || ( resp->iCertificateChain.Count() + && resp->iOcspResponse.Count() ) ) + { + status = VerifyCertificateChainL( resp->iCertificateChain, + resp->iOcspResponse ); + if ( !status ) + { + LOGLIT( "Certificate chain validation failed" ) + User::Leave( KErrRoapServerFatal ); + } + status = ValidateRiIdL( resp->iRiId, *resp->iCertificateChain[0] ); + if ( !status ) + { + LOGLIT( "RI ID validation failed" ) + User::Leave( KErrRoapServerFatal ); + } + } + + status = VerifySignatureL( aJoinResp, *resp->iSignature, + iStoredRiContext->CertificateChain() ); + if ( !status ) + { + LOGLIT( "Signature verification failed" ) + User::Leave( KErrRoapServerFatal ); + } + + if ( resp->iDomainKeys.Count() > 1 && resp->iDomainKeyIDs.Count() > 1 + && resp->iDomainKeys.Count() == resp->iDomainKeyIDs.Count() ) + { + // Sort domain keys by generation (000 generation is first) + TLex8 lex; + TInt generation = 0; + RArray generations; + CleanupClosePushL( generations ); + + for ( TInt i = 0; i < resp->iDomainKeyIDs.Count(); i++ ) + { + lex = resp->iDomainKeyIDs[i]->Right( KDomainGenerationLength ); + lex.Val( generation ); + generations.AppendL( generation ); + } + + SortArrays( resp->iDomainKeys, resp->iMacs, domainKeyElements, + generations ); + + CleanupStack::PopAndDestroy( &generations ); + } + + if ( !resp->iDomainKeys.Count() ) + { + LOGLIT( "No valid domain keys present!" ) + User::Leave( KErrRoapServerFatal ); + } + +#ifdef _DISABLE_HASH_CHAIN_GENERATION + resp->iHashChainSupport = EFalse; +#endif + + if ( resp->iHashChainSupport ) + { + if ( resp->iDomainKeys.Count() > 1 ) + { + LOGLIT( "More than one Domain key present, hash chain key generation is supported!" ) + // Might be KErrRoapServerFatal server error + } + } + + context = CDRMDomainContext::NewLC( iDomainId, + resp->iDomainExpiration, resp->iHashChainSupport, + resp->iDomainKeys, resp->iRiId, + iStoredRiContext->RightsIssuerURL() ); + iStorageClient->AddDomainContextL( *context, resp->iMacs, + domainKeyElements, resp->iTransportScheme ); + iDomainId.SetLength( 0 ); + CleanupStack::PopAndDestroy( context ); + + if ( iDomainRightsResp ) + { + // It's a implicit Join Domain case + // We still need to store the domain RO + StoreDomainRightsL(); + } + + // Device DRM Time is insecure, but server thinks that the time is correct + // -> Set DRM Time as secure + if ( !iSecureTime ) + { + SetDrmTimeSecureL(); + } + } + else + { + if ( resp->iErrorUrl ) + { + if ( iObserver ) + { + iObserver->ErrorUrlL( *resp->iErrorUrl ); + } + } + iSigner->ResetResponses(); + } + CleanupStack::PopAndDestroy( &domainKeyElements ); + } + +// --------------------------------------------------------- +// CRoapEng::HandleLeaveDomainResponseL() +// --------------------------------------------------------- +// +void CRoapEng::HandleLeaveDomainResponsePduL( const TDesC8& aLeaveResp ) + { + LOGLIT( "CRoapEng::HandleLeaveDomainResponsePduL" ) + + __ASSERT_ALWAYS( iStoredRiContext, User::Invariant() ); + + CLeaveDomainResp* resp = NULL; + resp = iParser->ParseLeaveDomainRespL( aLeaveResp ); + iRoapStatus = resp->iStatus; + iResponse = resp; + if ( iRoapStatus == ESuccess ) + { + + } + else if ( resp->iErrorUrl ) + { + if ( iObserver ) + { + iObserver->ErrorUrlL( *resp->iErrorUrl ); + } + } + + PERFORMANCE_LOGLIT( "Leave domain protocol completed" ) + } + +// --------------------------------------------------------- +// CRoapEng::HandleMeteringReportResponsePduL() +// --------------------------------------------------------- +// +#ifndef RD_DRM_METERING +void CRoapEng::HandleMeteringReportResponsePduL( const TDesC8& /*aMeteringResp*/) + { + } +#else +void CRoapEng::HandleMeteringReportResponsePduL( const TDesC8& aMeteringResp ) + { + LOGLIT( "CRoapEng::HandleMeteringReportResponsePduL" ) + __ASSERT_ALWAYS( iStoredRiContext, User::Invariant() ); + + CMeteringResp* resp = NULL; + CMeteringReportReq* request = NULL; + + resp = iParser->ParseMeteringRespL( aMeteringResp ); + + request = static_cast ( iRequest ); + + iRoapStatus = resp->iStatus; + iResponse = resp; + if ( iRoapStatus == ESuccess ) + { + if ( resp->iDeviceId.CompareF( *iDeviceId ) != KErrNone + || resp->iDeviceNonce->CompareF( request->iNonce ) != KErrNone ) + { + LOGLIT( "Mismatch in deviceId or in nonce" ) + LOGLIT( "Observed DeviceId" ) + LOGHEX( resp->iDeviceId.Ptr(), resp->iDeviceId.Length() ) + LOGLIT( "Expected DeviceId" ) + LOGHEX( request->iDeviceId.Ptr(), request->iDeviceId.Length() ) + LOGLIT( "Observed nonce" ) + LOGHEX( resp->iDeviceNonce->Ptr(), resp->iDeviceNonce->Length() ) + LOGLIT( "Expected nonce" ) + User::Leave( KErrRoapServerFatal ); + } + + if ( !iStoredRiContext || ( resp->iCertificateChain.Count() + && resp->iOcspResponse.Count() ) ) + { + if ( !VerifyCertificateChainL( resp->iCertificateChain, + resp->iOcspResponse ) ) + { + LOGLIT( "Certificate chain validation failed" ) + User::Leave( KErrRoapServerFatal ); + } + if ( !ValidateRiIdL( resp->iRiId, *resp->iCertificateChain[0] ) ) + { + LOGLIT( "RI ID validation failed" ) + User::Leave( KErrRoapServerFatal ); + } + } + + if ( !VerifySignatureL( aMeteringResp, *resp->iSignature, + iStoredRiContext->CertificateChain() ) ) + { + LOGLIT( "Signature verification failed" ) + User::Leave( KErrRoapServerFatal ); + } + + // Everything is fine, we can delete metering data + iStorageClient->DeleteMeteringDataL( resp->iRiId ); + + // notify PostResponseUrl for iObserver + if ( resp->iPrUrl ) + { + HBufC8* prUrl( resp->iPrUrl ); + LOGLIT( "PrUrl" ) + LOGHEX( prUrl->Ptr(), prUrl->Length() ) + if ( iObserver ) + { + iObserver->PostResponseUrlL( *prUrl ); + LOGLIT( "Notified observer with PostResponseUrl" ) + } + else + { + LOGLIT( "Warning no observer for PostResponseUrl" ) + } + } + } + return; + } +#endif //RD_DRM_METERING +// --------------------------------------------------------- +// CRoapEng::HandleMultipartL() +// --------------------------------------------------------- +// +void CRoapEng::HandleMultipartL() + { + LOGLIT( "CRoapEng::HandleMultipartL" ) + + TInt rightsErr( KErrNone ); + TInt err( KErrNone ); + TInt docErr( KErrNone ); + TDataType type = TDataType(); + TBool mmcAllowed( EFalse ); + HBufC* contentName( NULL ); + RBuf newPath; + TUid app_uid; + RBuf rootPath; + + TRAP( rightsErr, HandleRoapResponseL( iRoapResp->ProtocolUnit() ) ); + + newPath.CreateL( KMaxFileName ); + CleanupClosePushL( newPath ); + + CDocumentHandler* docHandler( CDocumentHandler::NewLC() ); + + if ( iRoapResp->DcfFileName().Left( 1 ).CompareF( _L ("e") ) == 0 ) + { + mmcAllowed = ETrue; + } + + RFs fs; + User::LeaveIfError( fs.Connect() ); + CleanupClosePushL( fs ); + +#ifndef RD_MULTIPLE_DRIVE + rootPath.CreateL( mmcAllowed ? + PathInfo::MemoryCardRootPath() : + PathInfo::PhoneMemoryRootPath() ); + +#else //RD_MULTIPLE_DRIVE + _LIT( KSysDriveRoot, "_:\\Data\\"); + _LIT( KMassDriveRoot, "_:\\" ); + TInt driveNumber( -1 ); + TChar driveLetter; + + if ( mmcAllowed ) + { + // Set root path to memory card root + rootPath.CreateL( KMassDriveRoot() ); + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultMassStorage, driveNumber ); + } + else + { + // Set root path to system root + rootPath.CreateL( KSysDriveRoot() ); + DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber ); + } + fs.DriveToChar( driveNumber, driveLetter ); + __ASSERT_ALWAYS( rootPath.Length()>0, User::Invariant() ); + rootPath[0] = (TUint)driveLetter; + + +#endif + CleanupClosePushL( rootPath ); + + iRoapResp->GetContentNameLC( contentName ); + + if ( contentName && contentName->Length() + && fs.IsValidName( *contentName ) ) + { + if ( !rightsErr ) + { + TRAP( err, docErr = docHandler->SilentMoveL( iRoapResp->DcfFileName(), + *contentName, rootPath, type, KEntryAttNormal ) ); + } + else + { + // when an error occured during RO storing -> show "saved to" note + TRAP( err, docErr = docHandler->MoveL( iRoapResp->DcfFileName(), + *contentName, type, KEntryAttNormal ) ); + } + + } + else + { + if ( !rightsErr ) + { + // use the default name + User::LeaveIfError( docHandler->SilentMoveL( + iRoapResp->DcfFileName(), KNullDesC(), rootPath, type, + KEntryAttNormal ) ); + } + else + { + // when an error occured during RO storing -> show "saved to" note + docHandler->MoveL( iRoapResp->DcfFileName(), KNullDesC(), type, + KEntryAttNormal ); + } + } + + if ( err || docErr ) + { + if ( !rightsErr ) + { + // use the default name + User::LeaveIfError( docHandler->SilentMoveL( + iRoapResp->DcfFileName(), KNullDesC(), rootPath, type, + KEntryAttNormal ) ); + } + else + { + // when an error occured during RO storing -> show "saved to" note + docHandler->MoveL( iRoapResp->DcfFileName(), KNullDesC(), type, + KEntryAttNormal ); + } + } + User::LeaveIfError( rightsErr ); + + User::LeaveIfError( docHandler->GetPath( newPath ) ); + User::LeaveIfError( docHandler->HandlerAppUid( app_uid ) ); + + if ( iObserver ) + { + iObserver->ContentDetailsL( newPath, type.Des8(), app_uid ); + } + + CleanupStack::PopAndDestroy( contentName ); + CleanupStack::PopAndDestroy( &rootPath ); + + CleanupStack::PopAndDestroy( &fs ); + CleanupStack::PopAndDestroy( docHandler ); + CleanupStack::PopAndDestroy( &newPath ); + } + +// --------------------------------------------------------- +// CRoapEng::SignMessageL() +// --------------------------------------------------------- +// +HBufC8* CRoapEng::SignMessageL( const TDesC8& aMessage ) const + { + LOGLIT( "CRoapEng::SignMessageL" ) + HBufC8* r = NULL; + + if ( iReqMessage == EDeviceHello ) + { + // Device Hello always resets signing chain!! + iSigner->ResetRequests(); + iSigner->ResetResponses(); + // Device Hello or RI Hello is not signed + iSigner->AddRequestL( aMessage ); + r = aMessage.AllocL(); + } + else + { + r = iSigner->SignAndAddRequestL( aMessage ); + iSigner->ResetRequests(); + + if ( iReqMessage == ERegistration ) + { + // Add signed request to the signer for verifying signature on + // response (for Registration protocol only). + iSigner->AddResponseL( *r ); + } + } + return r; + } + +// --------------------------------------------------------- +// CRoapEng::VerifySignatureL() +// --------------------------------------------------------- +// +TBool CRoapEng::VerifySignatureL( + const TDesC8& aMessage, + const TDesC8& aSignature, + const RPointerArray& aCertificateChain ) const + { + LOGLIT( "CRoapEng::VerifySignatureL" ) + + TBool isValid = ETrue; + + if ( iReqMessage != EDeviceHello && iReqMessage != ELeaveDomain ) + { + // RI Hello and Leave Domain resp are not signed + isValid = iSigner->VerifyAndAddResponseL( aMessage, aSignature, + aCertificateChain ); + iSigner->ResetResponses(); + } + +#ifdef _DISABLE_SIGNATURE_CHECK + isValid = ETrue; +#endif + return isValid; + } + +// --------------------------------------------------------- +// CRoapEng::VerifyTriggerSignatureL() +// --------------------------------------------------------- +// +TBool CRoapEng::VerifyTriggerSignatureL( + const TDesC8& aXmlTrigger, + const CRoapTrigger& aTrigger ) const + { + LOGLIT( "CRoapEng::ValidateTriggerSignatureL" ) + + TPtrC8 element( KNullDesC8 ); + TPtrC8 signedInfo( KNullDesC8 ); + CDRMDomainContext* context( NULL ); + HBufC8* domainKey( NULL ); + HBufC8* unwrappedMacKey( NULL ); + CSHA1* digest( NULL ); + CMessageDigest* hMac( NULL ); + TBool result( ETrue ); + TInt pos( 0 ); + TInt generation( 0 ); + + element.Set( iParser->ExtractElement( aXmlTrigger, KLeaveDomainElement(), + pos ) ); + pos = 0; + signedInfo.Set( iParser->ExtractElement( aXmlTrigger, + KSignedInfoElement(), pos ) ); + + if ( !element.Length() || !signedInfo.Length() || !aTrigger.iEncKey + || !aTrigger.iSignature ) + { + User::Leave( KErrRoapServerFatal ); + } + + context = iStorageClient->GetDomainContextL( *aTrigger.iDomainId ); + + if ( !context ) + { + // we are not member of the domain + LOGLIT( "No DomainContext for the domain -> Cannot verify Trigger signature" ) + return ETrue; + } + CleanupStack::PushL( context ); + + TLex8 lex( aTrigger.iDomainId->Right( KDomainGenerationLength ) ); + lex.Val( generation ); + domainKey = context->DomainKeyL( generation ); + User::LeaveIfNull( domainKey ); + CleanupStack::PushL( domainKey ); + + unwrappedMacKey = OmaCrypto::AesUnwrapL( *domainKey, *aTrigger.iEncKey ); + CleanupStack::PopAndDestroy( domainKey ); + CleanupStack::PushL( unwrappedMacKey ); + + // hash the leaveDomain element + digest = CSHA1::NewL(); + CleanupStack::PushL( digest ); + digest->Update( element ); + + if ( digest->Final().CompareF( *aTrigger.iDigestValue ) ) + { + LOGLIT( "Reference Validation failed!" ) + result = EFalse; + } + + if ( result ) + { + // calculate HMAC signature + hMac = CMessageDigestFactory::NewHMACLC( CMessageDigest::ESHA1, + *unwrappedMacKey ); + hMac->Update( signedInfo ); + + if ( hMac->Final().CompareF( *aTrigger.iSignature ) != 0 ) + { + LOGLIT( "Signature Validation failed!" ) + result = EFalse; + } + CleanupStack::PopAndDestroy( hMac ); + } + + CleanupStack::PopAndDestroy( digest ); + CleanupStack::PopAndDestroy( unwrappedMacKey ); + CleanupStack::PopAndDestroy( context ); + + if ( !result ) + { + LOGLIT( "Trigger signature check failed!" ) + } + +#ifdef _DISABLE_SIGNATURE_CHECK + result = ETrue; +#endif + return result; + } + +// --------------------------------------------------------- +// CRoapEng::VerifyCertificateChainL() +// --------------------------------------------------------- +// +TBool CRoapEng::VerifyCertificateChainL( + const RPointerArray& aCertificateChain, + const RPointerArray& aOcspResponses ) const + { + LOGLIT( "CRoapEng::VerifyCertificateChainL" ) + + CX509Certificate* cert = NULL; + CX509Certificate* signingCert = NULL; + CX509Certificate* riCA = NULL; + TBool result = EFalse; + RPointerArray serialNums; + CX500DistinguishedName* rootDistName = NULL; + HBufC* rootName = NULL; + HBufC8* rootCert = NULL; + HBufC8* temp = NULL; + + if ( !aCertificateChain.Count() || !aOcspResponses.Count() ) + { + User::Leave( KErrRoapServerFatal ); + } + + // Get the last cert from the chain. It is signed by some of our trusted anchor + riCA = CX509Certificate::NewLC( + *( aCertificateChain[aCertificateChain.Count() - 1] ) ); + rootDistName = CX500DistinguishedName::NewLC( riCA->IssuerName() ); + rootName = rootDistName->DisplayNameL(); + CleanupStack::PushL( rootName ); + // Get the correct root cert for validating the whole chain + rootCert = iStorageClient->GetRootCertificateL( *rootName ); + CleanupStack::PopAndDestroy( rootName ); + CleanupStack::PopAndDestroy( rootDistName ); + CleanupStack::PopAndDestroy( riCA ); + + if ( !rootCert ) + { + LOGLIT( "No root certificate present!" ) + LOGLIT( "Certificate chain verification failed." ) + return EFalse; + } + CleanupStack::PushL( rootCert ); + + CleanupResetAndDestroyPushL( serialNums ); + + for ( TInt i = 0; i < aCertificateChain.Count(); i++ ) + { + cert = CX509Certificate::NewLC( *aCertificateChain[i] ); + temp = cert->SerialNumber().AllocLC(); + serialNums.AppendL( temp ); + CleanupStack::Pop( temp ); + if ( aCertificateChain.Count() - 1 == i ) + { + // signingCert = Trusted root cert + signingCert = CX509Certificate::NewLC( *rootCert ); + } + else + { + signingCert = CX509Certificate::NewLC( *aCertificateChain[i + 1] ); + } + result = cert->VerifySignatureL( signingCert->PublicKey().KeyData() ); + +#ifdef _DISABLE_CERT_CHECK + result = ETrue; +#endif + CleanupStack::PopAndDestroy( signingCert ); + CleanupStack::PopAndDestroy( cert ); + if ( !result ) + { + LOGLIT( "Certificate chain verification failed." ) + CleanupStack::PopAndDestroy( 2, rootCert ); + return result; + } + } + + if ( aCertificateChain.Count() >= 2 ) + { + result = VerifyOcspResponsesL( aOcspResponses, *aCertificateChain[1], + serialNums ); + + if ( !result ) + { + // CoreMedia's OCSP responder cert is signed by the root -> against CMLA spec + LOGLIT( "Try to verify OCSP response cert using root cert" ) + result = VerifyOcspResponsesL( aOcspResponses, *rootCert, + serialNums ); + } + } + else if ( aCertificateChain.Count() == 1 ) + { + // There is only one cert in the cert chain -> the OCSP response cert is verified with root cert + result = VerifyOcspResponsesL( aOcspResponses, *rootCert, serialNums ); + } + else + { + result = EFalse; + } + + if ( iStoredRiContext && aCertificateChain.Count() && result ) + { + cert = CX509Certificate::NewLC( *aCertificateChain[0] ); + if ( iStoredRiContext->ExpiryTime() < cert->ValidityPeriod().Finish() ) + { + iStoredRiContext->SetCertificateChainL( aCertificateChain ); + iStoredRiContext->SetOCSPResponseL( aOcspResponses ); + + // update RI Context + iStorageClient->AddRIContextL( *iStoredRiContext ); + } + CleanupStack::PopAndDestroy( cert ); + } + + CleanupStack::PopAndDestroy( 2, rootCert ); // serialNums, rootCert + +#ifdef _ROAP_TESTING + if ( result ) + { + LOGLIT( "Certificate chain verification ok." ) + } + else + { + LOGLIT( "Certificate chain verification failed." ) + } +#endif +#ifdef _DISABLE_CERT_CHECK + result = ETrue; +#endif + + return result; + } + +// --------------------------------------------------------- +// CRoapEng::VerifyOcspResponsesL() +// --------------------------------------------------------- +// +TBool CRoapEng::VerifyOcspResponsesL( + const RPointerArray& aOcspResponses, + const TDesC8& aRiCaCert, + const RPointerArray& aCertSerialNums ) const + { + LOGLIT( "CRoapEng::VerifyOcspResponsesL" ) + +#ifdef _DISABLE_OCSP_CHECK + TBool result( ETrue ); +#else + // Get verification result from the server + TBool result( iStorageClient->VerifyOcspResponsesL( aOcspResponses, + aRiCaCert, aCertSerialNums ) ); +#endif + +#ifdef _ROAP_TESTING + if ( result ) + { + LOGLIT( "OCSP response verification ok." ) + } + else + { + LOGLIT( "OCSP response verification failed." ) + } +#endif + + return result; + } + +// --------------------------------------------------------- +// CRoapEng::ValidateRiCertificateL() +// --------------------------------------------------------- +// +TBool CRoapEng::ValidateRiCertificateL( const CX509Certificate* aCert ) + { + LOGLIT( "CRoapEng::ValidateRiCertificateL" ) + + TBool ret = ETrue; + const CX509CertExtension* ext = NULL; + CX509KeyUsageExt* keyUsageExt = NULL; + CX509ExtendedKeyUsageExt* extendedKeyUsage = NULL; + TTime riExpiry; + TInt count = 0; + + if ( iSelectedAlgorithms == ECmlaIp1 ) + { + // Check RI certificate extensions only in CMLA case + ext = aCert->Extension( KKeyUsage() ); + if ( !ext || !( ext->Critical() ) ) + { + LOGLIT( "RI cert KeyUsage extension missing or not critical!" ) + ret = EFalse; + } + + if ( ext && ret ) + { + keyUsageExt = CX509KeyUsageExt::NewLC( ext->Data() ); + if ( !keyUsageExt->IsSet( EX509DigitalSignature ) ) + { + LOGLIT( "DigitalSignature bit is not set in KeyUsageExt of RI cert!" ) + ret = EFalse; + } + CleanupStack::PopAndDestroy( keyUsageExt ); + } + + ext = aCert->Extension( KExtendedKeyUsage() ); + if ( !ext || !( ext->Critical() ) ) + { + LOGLIT( "RI cert ExtendedKeyUsage extension missing or not critical!" ) + ret = EFalse; + } + + if ( ext && ret ) + { + ret = EFalse; + extendedKeyUsage = CX509ExtendedKeyUsageExt::NewLC( ext->Data() ); + count = extendedKeyUsage->KeyUsages().Count(); + for ( TInt i = 0; i < count && !ret; i++ ) + { + if ( extendedKeyUsage->KeyUsages().At( i )->CompareF( + KOmaKpRightsIssuerOid() ) == 0 ) + { + ret = ETrue; + } + } + if ( !ret ) + { + LOGLIT( "OmaKpRightsIssuer OID is not set in ExtendedKeyUsageExt of RI cert!" ) + } + CleanupStack::PopAndDestroy( extendedKeyUsage ); + } + } + + riExpiry = aCert->ValidityPeriod().Finish(); + + if ( riExpiry < GetDrmTimeL() ) + { + LOGLIT( "RI Context certificate is expired!" ) + ret = EFalse; + } +#ifdef _DISABLE_CERT_CHECK + ret = ETrue; +#endif + return ret; + } + +// --------------------------------------------------------- +// CRoapEng::GetCertificateChainL() +// --------------------------------------------------------- +// +RPointerArray CRoapEng::GetCertificateChainL() const + { + LOGLIT( "CRoapEng::GetCertificateChainL ->" ) + + TInt err = KErrNone; + RPointerArray certificateChain; + HBufC8* root = NULL; + + CleanupResetAndDestroyPushL( certificateChain ); + + err = iStorageClient->GetDeviceCertificateChainL( certificateChain ); + + if ( err ) + { + User::Leave( err ); + } + + if ( certificateChain.Count() < KMinCertChainLength ) + { + // the CMLA chain must always contain: + // the device certificate, + // at lest one signing certificate (device CA), + // and the root certificate + DETAILLOGLIT( "Got improper certificate chain!!" ) + // Leaving in production devices. + User::Leave( KErrRoapDevice ); + __ASSERT_DEBUG( ETrue, User::Invariant() ); + } + + // delete and remove the root certificate (it's always the last one in the list) + root = certificateChain[certificateChain.Count() - 1]; + delete root; + certificateChain.Remove( certificateChain.Count() - 1 ); + + CleanupStack::Pop( &certificateChain ); + + LOGLIT( "CRoapEng::GetCertificateChainL <-" ) + + return certificateChain; + } + +// --------------------------------------------------------- +// CRoapEng::GetDeviceDetailsL() +// --------------------------------------------------------- +// +void CRoapEng::GetDeviceDetailsL( + HBufC8*& aManufacturer, + HBufC8*& aModel, + HBufC8*& aVersion ) + { + LOGLIT( "-> CRoapEng::GetDeviceDetailsL" ) + +#if 0 + TInt numPhone = 0; + TUint32 caps = 0; + TName tsyName; + RMobilePhone phone; + RTelServer etelServer; + RTelServer::TPhoneInfo phoneInfo; + HBufC* version = NULL; + + User::LeaveIfError( etelServer.Connect() ); + + CleanupClosePushL( etelServer ); + + User::LeaveIfError( etelServer.LoadPhoneModule( KMmTsyModuleName ) ); + User::LeaveIfError( etelServer.EnumeratePhones( numPhone) ); + + for (TInt i(0); i < numPhone; i++) + { + User::LeaveIfError( etelServer.GetPhoneInfo( i, phoneInfo ) ); + User::LeaveIfError( etelServer.GetTsyName( i,tsyName ) ); + + if ( tsyName.CompareF( KMmTsyModuleName ) == 0) + { + break; + } + } + + User::LeaveIfError( phone.Open( etelServer, phoneInfo.iName ) ); + CleanupClosePushL( phone ); + + phone.GetIdentityCaps( caps ); + if ( !( caps & RMobilePhone::KCapsGetManufacturer ) && + !( caps & RMobilePhone::KCapsGetModel ) ) + { + User::Leave( KErrRoapGeneral ); + } + + RMobilePhone::TMobilePhoneIdentityV1 details; + TRequestStatus status; + + phone.GetPhoneId( status, details ); + User::WaitForRequest( status ); + + User::LeaveIfError( status.Int() ); + + HBufC8* manufacturer( HBufC8::NewLC( details.iManufacturer.Length() ) ); + manufacturer->Des().Copy( details.iManufacturer ); + HBufC8* model( HBufC8::NewLC( details.iModel.Length() ) ); + model->Des().Copy( details.iModel ); + + version = HBufC::NewLC( KSysUtilVersionTextLength ); + TPtr ptr( version->Des() ); + User::LeaveIfError( SysUtil::GetSWVersion( ptr ) ); + + // remove possible BOM from the end + if ( ptr.Right( KBOM1().Length() ).CompareF( KBOM1 ) == KErrNone ) + { + ptr.Delete( ptr.Length() - KBOM1().Length(), KBOM1().Length() ); + } + if ( ptr.Right( KBOM2().Length() ).CompareF( KBOM2 ) == KErrNone ) + { + ptr.Delete( ptr.Length() - KBOM2().Length(), KBOM2().Length() ); + } + + aVersion = CnvUtfConverter::ConvertFromUnicodeToUtf8L( ptr ); + + CleanupStack::PopAndDestroy( version ); + CleanupStack::Pop( model ); + CleanupStack::Pop( manufacturer ); + aManufacturer = manufacturer; + aModel = model; + CleanupStack::PopAndDestroy( &phone ); + CleanupStack::PopAndDestroy( &etelServer ); +#else + aManufacturer = _L8("Nokia").AllocL(); + aModel = _L8("Emulator").AllocL(); + aVersion = _L8("9.0").AllocL(); +#endif + + LOGLIT( "Device details:" ) + LOGLIT( " Manufacturer: " ) + LOG( aManufacturer->Des() ) + LOGLIT( " Model: " ) + LOG( aModel->Des() ) + LOGLIT( " Revision: " ) + LOG( aVersion->Des() ) + + LOGLIT( "<- CRoapEng::GetDeviceDetailsL" ) + } + +// --------------------------------------------------------- +// CRoapEng::FetchTransactionIDL() +// --------------------------------------------------------- +// +void CRoapEng::FetchTransactionIDL( + RPointerArray& aTransIDs, + RPointerArray& aContentIDs ) + { + LOGLIT( "CRoapEng::FetchTransactionIDL" ) + + __ASSERT_ALWAYS( iTrigger, User::Invariant() ); + + RArray array; + TInt err = KErrNone; + + CleanupClosePushL( array ); + + if ( !iTrigger->iContentIdList.Count() ) + { + CleanupStack::PopAndDestroy( &array ); + return; + } + + if ( iTransStatus == ENotAsked && iObserver ) + { + UpdateTransactionTrackingStatusL(); + } + if ( iTransStatus == EAllowed ) + { + for ( TInt i = 0; i < iTrigger->iContentIdList.Count(); i++ ) + { + TPair pair; + pair.iCid = iTrigger->iContentIdList[i]->Alloc(); // duplicate contentID, + pair.iTtid = NULL; // pair.iCid is deleted by iRequest + err = array.Append( pair ); + if ( err ) + { + delete pair.iCid; + pair.iCid = NULL; + } + } + + TRAP_IGNORE(iDcfRep->GetTtidL( array ) ); + + for ( TInt i = 0; i < array.Count(); i++ ) + { + if ( array[i].iTtid && array[i].iCid && array[i].iTtid->Length() + && array[i].iCid->Length() ) + { + err = aContentIDs.Append( array[i].iCid ); + if ( !err ) + { + aTransIDs.Append( array[i].iTtid ); + } + else + { + delete array[i].iCid; + array[i].iCid = NULL; + delete array[i].iTtid; + array[i].iTtid = NULL; + } + } + else if ( array[i].iTtid || array[i].iCid ) + { + delete array[i].iTtid; + array[i].iTtid = NULL; + delete array[i].iCid; + array[i].iCid = NULL; + } + } + } + CleanupStack::PopAndDestroy( &array ); + } + +// --------------------------------------------------------- +// CRoapEng::InsertTransactionIDL() +// --------------------------------------------------------- +// +void CRoapEng::InsertTransactionIDL( + RPointerArray& aTransIDs, + RPointerArray& aContentIDs ) + { + LOGLIT( "CRoapEng::InsertTransactionIDL" ) + + RArray array; + TRequestStatus status; + + CleanupClosePushL( array ); + + if ( !aTransIDs.Count() || !aContentIDs.Count() ) + { + LOGLIT( "Insert ttID: Wrong input data" ) + CleanupStack::PopAndDestroy( &array ); + return; + } + + if ( aTransIDs.Count() != aContentIDs.Count() ) + { + LOGLIT( "Insert ttID: ttID.Count != cid.Count" ) + CleanupStack::PopAndDestroy( &array ); + return; + } + + if ( iTransStatus == ENotAsked && iObserver ) + { + UpdateTransactionTrackingStatusL(); + } + if ( iTransStatus == EAllowed ) + { + for ( TInt i = 0; i < aContentIDs.Count() && i < aTransIDs.Count(); i++ ) + { + TPair pair; + pair.iCid = aContentIDs[i]; + pair.iTtid = aTransIDs[i]; + array.Append( pair ); + } + + iDcfRep->SetTtid( array, status ); + User::WaitForRequest( status ); + } + + CleanupStack::PopAndDestroy( &array ); + } + +// --------------------------------------------------------- +// CRoapEng::GetOCSPResponderKeyHashL() +// --------------------------------------------------------- +// +HBufC8* CRoapEng::GetOCSPResponderKeyHashL() const + { + LOGLIT( "CRoapEng::GetOCSPResponderKeyHashL" ) + + if ( !iStoredRiContext ) + { + User::Leave( KErrRoapNotRegistered ); + } + return iStorageClient->GetOcspResponderIdL( iStoredRiContext->RIID() ); + } + +// --------------------------------------------------------- +// CRoapEng::GetDrmTimeL() +// --------------------------------------------------------- +// +TTime CRoapEng::GetDrmTimeL() + { + LOGLIT( "CRoapEng::GetDrmTimeL" ) + + TTime drmTime; + DRMClock::ESecurityLevel secureTime; + TInt zone( 0 ); + + User::LeaveIfError( iClockClient->GetSecureTime( drmTime, zone, + secureTime ) ); + + if ( secureTime == DRMClock::KInsecure ) + { + iSecureTime = EFalse; + } + else + { + iSecureTime = ETrue; + } + + return drmTime; + } + +// --------------------------------------------------------- +// CRoapEng::SetDrmTimeSecureL() +// --------------------------------------------------------- +// +void CRoapEng::SetDrmTimeSecureL() + { + LOGLIT( "CRoapEng::SetDrmTimeSecureL" ) + + TTime drmTime; + DRMClock::ESecurityLevel secureTime; + TInt zone( 0 ); + + User::LeaveIfError( iClockClient->GetSecureTime( drmTime, zone, + secureTime ) ); + User::LeaveIfError( iClockClient->UpdateSecureTime( drmTime, zone ) ); + + iSecureTime = ETrue; + } + +// --------------------------------------------------------- +// CRoapEng::AdjustDrmTime() +// --------------------------------------------------------- +// +void CRoapEng::AdjustDrmTimeL( + const RPointerArray& aOcspResponses, + TDesC8& aRegReqNonce ) const + { + // To be removed on next API change. + // Replace calls with direct call to RRoapStorageClient. + LOGLIT( "CRoapEng::AdjustDrmTime calling server" ) + if ( aOcspResponses.Count() > 0 ) + { + iStorageClient->UpdateDrmTimeL( iStoredRiContext->CertificateChain(), + aOcspResponses, aRegReqNonce ); + } + else + { + LOGLIT( "No OCSP responses present." ) + } + } + +// --------------------------------------------------------- +// CRoapEng::StoreDomainRightsL() +// --------------------------------------------------------- +// +void CRoapEng::StoreDomainRightsL() + { + LOGLIT( "CRoapEng::StoreDomainRightsL" ) + + RPointerArray returnedROs; + + CleanupResetAndDestroyPushL( returnedROs ); + + iRoParser->ParseAndStoreL( *iDomainRightsResp, returnedROs ); + + if ( iObserver ) + { + iObserver->RightsObjectDetailsL( returnedROs ); // pass RO details to UI + } + + delete iDomainRightsResp; + iDomainRightsResp = NULL; + + iImplicitJoinDomain = EFalse; + + CleanupStack::PopAndDestroy( &returnedROs ); + } + +// --------------------------------------------------------- +// CRoapEng::InsertDomainRosL() +// --------------------------------------------------------- +// +void CRoapEng::InsertDomainRosL() + { + CDcfRep* rep = NULL; + CDcfEntry* entry = NULL; + CContent* content = NULL; + TPtr8 ptr( NULL, 0 ); + TInt i; + RFile file; + RFs fs; + TInt error( 0 ); + + User::LeaveIfError( fs.Connect() ); + CleanupClosePushL( fs ); + rep = CDcfRep::NewL(); + CleanupStack::PushL( rep ); + for ( i = 0; i < iReturnedROs.Count(); i++ ) + { + if ( iReturnedROs[i]->GetPermission().iDomainID ) + { + rep->OrderListL( *iReturnedROs[i]->GetAsset().iUid ); + entry = rep->NextL(); + while ( entry ) + { + CleanupStack::PushL( entry ); + error = file.Open( fs, entry->FileName(), EFileWrite + | EFileShareReadersOrWriters ); + if ( !error ) + { + CleanupClosePushL( file ); + content = CContent::NewLC( file ); + content->AgentSpecificCommand( EEmbedDomainRo, + KNullDesC8, ptr ); + CleanupStack::PopAndDestroy( 2, &file ); // content, file + } + CleanupStack::PopAndDestroy( entry ); + entry = rep->NextL(); + } + } + } + CleanupStack::PopAndDestroy( 2, &fs ); // rep, fs + } + +// --------------------------------------------------------- +// CRoapEng::MapStatusL() +// --------------------------------------------------------- +// +TInt CRoapEng::MapStatusL() + { + LOGLIT( "CRoapEng::MapStatusL" ) + + if ( iRoapStatus == ESuccess ) + { + LOGLIT( "ROAP Status: success " ) + return KErrNone; + } + + if ( iRoapStatus == ENotRegistered || iRoapStatus == EDeviceTimeError ) + { + // Initiate registration protocol + LOG2( _L ( "Not Registered! Status: %d" ), iRoapStatus ) + + if ( iRoapStatus == EDeviceTimeError ) + { + iDeviceTimeError = ETrue; + } + + return KErrRoapNotRegistered; + } + + LOG2( _L ( "ROAP Error! Status: %d" ), iRoapStatus ) + + switch ( iRoapStatus ) + { + case EUnknownError: + case EAbort: + { + User::Leave( KErrRoapServer ); + } + case ENotSupported: + case EAccessDenied: + case ENotFound: + case EMalformedRequest: + case EUnknownRequest: + case EUnknownCriticalExtension: + case EUnsupportedVersion: + case EUnsupportedAlgorithm: + case ESignatureError: + case EInvalidDCFHash: + { + User::Leave( KErrRoapServerFatal ); + } + case ENoCertificateChain: + case EInvalidCertificateChain: + case ETrustedRootCertificateNotPresent: + { + User::Leave( KErrRoapDevice ); + } + case EInvalidDomain: + { + User::Leave( KErrRoapInvalidDomain ); + } + case EDomainFull: + { + User::Leave( KErrRoapDomainFull ); + } + default: + { + User::Leave( KErrRoapUnsupported ); + } + } + return KErrNone; + } + +// --------------------------------------------------------- +// CRoapEng::ValidateRiIdL() +// +// Validates that RI ID equals to public key hash of RI certificate +// --------------------------------------------------------- +// +TBool CRoapEng::ValidateRiIdL( TDesC8& aRiId, TDesC8& aCertBuf ) + { + TBool valid = EFalse; + CX509Certificate* riCert = NULL; + CSHA1* hash = NULL; + HBufC8* publicKeyHash = NULL; + + riCert = CX509Certificate::NewLC( aCertBuf ); + + // hash the SubjectPublicKeyInfo element + hash = CSHA1::NewL(); + CleanupStack::PushL( hash ); + hash->Hash( *riCert->DataElementEncoding( + CX509Certificate::ESubjectPublicKeyInfo ) ); + publicKeyHash = hash->Final().AllocLC(); + + if ( aRiId.Compare( *publicKeyHash ) == KErrNone ) + { + valid = ETrue; + } + + CleanupStack::PopAndDestroy( publicKeyHash ); + CleanupStack::PopAndDestroy( hash ); + CleanupStack::PopAndDestroy( riCert ); + + return valid; + } + +// --------------------------------------------------------- +// CRoapEng::UpdateTransactionTrackingStatusL() +// +// Update the status of transaction tracking variable +// --------------------------------------------------------- +// +void CRoapEng::UpdateTransactionTrackingStatusL() + { + TInt value = KErrNone; + CRepository* repository = CRepository::NewL( KCRUidDRMSettings ); + repository->Get( KDRMSettingsTransactionTracking, value ); + delete repository; + iTransStatus = value ? EAllowed : EForbidden; + } + +// --------------------------------------------------------- +// CRoapEng::CreateDeviceIdHashArrayL() +// --------------------------------------------------------- +// +TInt CRoapEng::CreateDeviceIdHashArrayL( RPointerArray& aIdArray ) + { + TInt err( KErrNone ); + RPointerArray certChain; + CSHA1* hasher = NULL; + HBufC8* publicKey = NULL; + CX509Certificate* cert = NULL; + + err = iStorageClient->GetDeviceCertificateChainL( certChain ); + + CleanupResetAndDestroyPushL( certChain ); + + hasher = CSHA1::NewL(); + CleanupStack::PushL( hasher ); + // take the hash of device certificate + if (certChain.Count()<=0) + { + LOGLIT( "Could get Device id Hash!!!" ) + User::Leave( KErrGeneral ); + } + cert = CX509Certificate::NewL( *certChain[0] ); + CleanupStack::PushL( cert ); + publicKey = cert->DataElementEncoding( + CX509Certificate::ESubjectPublicKeyInfo )->AllocLC(); + + hasher->Hash( *publicKey ); + + HBufC8 *elem( hasher->Final().AllocLC() ); + aIdArray.AppendL( elem ); + CleanupStack::Pop( elem ); + + CleanupStack::PopAndDestroy( publicKey ); + CleanupStack::PopAndDestroy( cert ); + + CleanupStack::PopAndDestroy( hasher ); + CleanupStack::PopAndDestroy( &certChain ); + return err; + } + +// End of file diff -r 9b61d901414f -r 458d62869c00 group/bld.inf --- a/group/bld.inf Wed Oct 27 09:59:12 2010 +0100 +++ b/group/bld.inf Wed Oct 27 15:25:50 2010 +0100 @@ -26,6 +26,7 @@ // based on sf/os/devicesrv ../startup/ssmcmdlists.mmp ../startup/ssmstartuppolicy.mmp +../startup/customcmds.mmp // based on sf/os/ossrv ../breakdeps/backend.mmp @@ -46,3 +47,8 @@ ../perfopts/openvg.mmp ../perfopts/openvgu.mmp +// based on /sf/mw/drm +../breakdeps/DRMEngine/ROAPHandler.mmp +../breakdeps/DRMEngine/RightsServer.mmp +../breakdeps/DRMEngine/DrmStdKeyStorage.mmp + diff -r 9b61d901414f -r 458d62869c00 hacks/EComServer.mmp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hacks/EComServer.mmp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,73 @@ +// Copyright (c) 1997-2009 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: +// ecomserver.exe Plug-in server framework +// When macro defined trace messages are compiled in and sent to RDebug +// This line must always be commented before submitting to the MCL. See EComDebug.h +MACRO ECOM_TRACE +// EPOCHEAPSIZE +// Investigations were carried out for defect INC115057. It was found (using RDir rather +// than CDir) that after a scan of around 1150 plug-ins the committed heap size increased +// from 3980 to 618380 bytes. After a re-scan the committed heap size was still 618380. +// The max is set to 2MB to avoid overflows when the number of plug-ins a licensee has is larger. +// The min is set to 192K. This is approximately 85% of the techview committed heap after bootup +// so all devices will need at least this. (In techview environment with 317 plug-ins the committed +// heap size after bootup was 233K) +// +// + +/** + @file +*/ + +EPOCHEAPSIZE 0x00030000 0x00200000 + +TARGET ecomserver.exe + +targettype EXE + +// Dynamic Dll UID followed by the unique UID for this executable +UID 0x1000008D 0x10009D8F +VENDORID 0x70000001 +CAPABILITY ProtServ +SOURCEPATH ../../Framework/frame + +// And keep this server side +SOURCE EComServerStart.cpp +SOURCE EComServer.cpp EComServerSession.cpp resolvercache.cpp +SOURCE Registrar.cpp RegistryData.cpp DefaultResolver.cpp +SOURCE RegistryResolveTransaction.cpp +SOURCE ParseImplementationData.cpp +SOURCE Discoverer.cpp BackupNotifier.cpp +SOURCE DowngradePath.cpp + +SOURCE ImplementationInformation.cpp RomOnlyResolver.cpp +SOURCE EComEntry.cpp +SOURCE clientrequest.cpp +SOURCE EComEntryBase.cpp +SOURCE ServerStartupManager.cpp +SOURCE DriveInfo.cpp +SOURCE FileUtils.cpp +SOURCE EComPerformance.cpp +#ifdef __ECOM_SERVER_TESTABILITY__ +SOURCE TestHarnessDomainMember.cpp +#endif +SOURCE EComPatchDataConstantv2.cpp + +USERINCLUDE ../../Framework/inc ../../Test_Bed/inc +OS_LAYER_SYSTEMINCLUDE_SYMBIAN + +LIBRARY euser.lib efsrv.lib estor.lib bafl.lib domaincli.lib +LIBRARY bsul.lib hal.lib + +SMPSAFE diff -r 9b61d901414f -r 458d62869c00 hacks/cl_file.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hacks/cl_file.cpp Wed Oct 27 15:25:50 2010 +0100 @@ -0,0 +1,3646 @@ +// Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of the License "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: +// f32\sfsrv\cl_file.cpp +// +// + +#include "cl_std.h" + +static _LIT_SECURITY_POLICY_S1(KFileServerPolicy,KFileServerUidValue,ECapabilityTCB); + +EFSRV_EXPORT_C TInt RFile::Adopt(RFs& aFs, TInt aHandle) +/** +Adopts an already open file. + +@param aFs The file server session. +@param aHandle The handle number of the already opened file + +@return KErrNone if successful, + KErrBadHandle if the sub-session handle is invalid, + otherwise one of the other system-wide error codes. + +@deprecated +*/ + { + + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileAdopt, MODULEUID, aFs.Handle(), aHandle); + + // duplicate the sub-session handle; don't panic if it's invalid. + RFile file; + TInt r = file.CreateSubSession(aFs, EFsFileDuplicate, TIpcArgs(aHandle, EFalse)); + if (r == KErrArgument) + { + TRACE1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptReturn, MODULEUID, KErrBadHandle); + return KErrBadHandle; + } + else if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptReturn, MODULEUID, r); + return r; + } + // adopt the duplicated handle + r = CreateAutoCloseSubSession(aFs, EFsFileAdopt, TIpcArgs(file.SubSessionHandle(), KFileAdopt32)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptReturn, MODULEUID, r, Session().Handle(), SubSessionHandle()); + + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::AdoptFromServer(TInt aFsHandle, TInt aFileHandle) +/** +Allows a client to adopt an already open file from a server. + +Assumes that the server's RFs and RFile handles have been sent to the +client using TransferToClient(). + +This RFile will own it's RFs session so that when the sub-session (RFile) +is closed so will the RFs session. + +@param aFsHandle The file server session (RFs) handle +@param aFileHandle The file (RFile) handle of the already opened file + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromServer, MODULEUID, aFsHandle, aFileHandle); + + RFs fs; + TInt r = fs.SetReturnedHandle(aFsHandle, KFileServerPolicy); + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromServerReturn, MODULEUID, r); + return r; + } + r = CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(aFileHandle, KFileAdopt32)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromServerReturn, MODULEUID, r, Session().Handle(), SubSessionHandle()); + + return r; + } + + +EFSRV_EXPORT_C TInt RFile::AdoptFromClient(const RMessage2& aMsg, TInt aFsHandleIndex, TInt aFileHandleIndex) +/** +Allows a server to adopt an already open file from a client. +The client's RFs and RFile handles are contained in message slots within aMsg. + +Assumes that the client's RFs and RFile handles have been sent to the server +using TransferToServer(). + + +This RFile will own it's RFs session so that when the sub-session (RFile) +is closed so will the RFs session. + +@param aMsg The message received from the client +@param aFsHandleIndex The index that identifies the message slot + of a file server session (RFs) handle +@param aFileHandleIndex The index that identifies the message slot + of the sub-session (RFile) handle of the already opened file + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. +*/ + { + TInt fileHandle = NULL; + + TInt r = KErrNone; + if (aFileHandleIndex == 0) + fileHandle = aMsg.Int0(); + else if (aFileHandleIndex == 1) + fileHandle = aMsg.Int1(); + else if (aFileHandleIndex == 2) + fileHandle = aMsg.Int2(); + else if (aFileHandleIndex == 3) + fileHandle = aMsg.Int3(); + else + r = KErrArgument; + +#ifdef SYMBIAN_FTRACE_ENABLE + TInt handle = NULL; + if (aFsHandleIndex == 0) + handle = aMsg.Int0(); + else if (aFsHandleIndex == 1) + handle = aMsg.Int1(); + else if (aFsHandleIndex == 2) + handle = aMsg.Int2(); + else if (aFsHandleIndex == 3) + handle = aMsg.Int3(); + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromClient, MODULEUID, handle, fileHandle, aFsHandleIndex, aFileHandleIndex); +#endif + + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromClientReturn, MODULEUID, r); + return r; + } + + // Duplicates the file server (RFs) session handle identified by an + // existing handle contained in the message slot at index aFsHandleIndex + RFs fs; + r = fs.Open(aMsg, aFsHandleIndex, KFileServerPolicy); + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromClientReturn, MODULEUID, r); + return r; + } + + r = CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(fileHandle, KFileAdopt32)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromClientReturn, MODULEUID, r, Session().Handle(), SubSessionHandle()); + + return r; + } + + +EFSRV_EXPORT_C TInt RFile::AdoptFromCreator(TInt aFsHandleIndex, TInt aFileHandleIndex) +/** +Allows a server to adopt an already open file from a client process. +The client's file-server (RFs) and file (RFile) handles are contained in +this process's environment data slots. + +Assumes that the client's RFs and RFile handles have been sent to the server process +using TransferToProcess(). + +This RFile will own it's RFs session so that when the sub-session (RFile) +is closed so will the RFs session. + +@param aFsHandleIndex An index that identifies the slot in the process + environment data that contains the file server session (RFs) handle +@param aFileHandleIndex An index that identifies the slot in the process + environment data that contains the sub-session (RFile) handle + of the already opened file + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. +*/ + { + TInt fileHandle = NULL; + + TInt r = User::GetTIntParameter(aFileHandleIndex, fileHandle); + + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromCreator, MODULEUID, fileHandle, aFsHandleIndex, aFileHandleIndex); + + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromCreatorReturn, MODULEUID, r); + return r; + } + + + // Duplicates the file server (RFs) session handle identified by an + // existing handle contained in the environment slot at index aFsHandleIndex + RFs fs; + r = fs.Open(aFsHandleIndex, KFileServerPolicy); + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromCreatorReturn, MODULEUID, r); + return r; + } + + r = CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(fileHandle, KFileAdopt32)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromCreatorReturn, MODULEUID, r, Session().Handle(), SubSessionHandle()); + + return r; + } + + + +/** +Make a duplicate of the passed file handle in the same thread. + +By default, any thread in the process can use the duplicated handle to access the +file. However, specifying EOwnerThread as the second parameter to this function, +means that only the creating thread can use the handle. + +@param aFile The file handle to duplicate +@param aType An enumeration whose enumerators define the ownership of this + handle. If not explicitly specified, EOwnerProcess is taken + as default. + +@return one of the other system-wide error codes. +*/ +EFSRV_EXPORT_C TInt RFile::Duplicate(const RFile& aFile, TOwnerType aType) + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileDuplicate, MODULEUID, aFile.Session().Handle(), aFile.SubSessionHandle(), aType); + + RFs fs; + fs.SetHandle(aFile.Session().Handle()); + + // Need to make a duplicate of the session handle in the current thread, + // otherwise closing one session will close both sub-sessions. + TInt r = fs.Duplicate(RThread(), aType); + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileDuplicateReturn, MODULEUID, r); + return r; + } + + // duplicate the sub-session handle + TInt dupSubSessionHandle; + r = aFile.DuplicateHandle(dupSubSessionHandle); + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileDuplicateReturn, MODULEUID, r); + return r; + } + + // adopt the duplicated sub-session handle + r = CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(dupSubSessionHandle, KFileDuplicate)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileDuplicateReturn, MODULEUID, r, Session().Handle(), SubSessionHandle()); + + return r; + } + + +// Makes a duplicate of this file (RFile) handle in the current thread and +// returns it in aSubSessionHandle. +// The duplicate file handle will effectively be in limbo (although still +// owned by the session) until : +// (1) the session handle is duplicated into another process - +// this happens in one of : TransferToClient(), TransferToProcess() or +// AdoptFromClient() and +// (2) the sub-session handle is transferred to the other process - using AdoptXXX() +// +TInt RFile::DuplicateHandle(TInt& aSubSessionHandle) const + { + RFs fs; + fs.SetHandle(Session().Handle()); + RFile file; + + // duplicate the sub-session handle; panic if it's invalid. + TInt r = file.CreateSubSession(fs, EFsFileDuplicate, TIpcArgs(SubSessionHandle(), ETrue)); + + // return the duplicated handle + // Note that this handle needs to be adopted before it can be used + aSubSessionHandle = file.SubSessionHandle(); + + return r; + } + + +/** +Transfers an already open file to a server. + +Before this function can be called, the file server session which owns this file handle +must first be marked as shareable by calling RFs::ShareProtected(). + +This function packages handle details for this file into 2 arguments of a TIpcArgs object. +When these arguments are sent in an IPC message, the server which receives them may +call AdoptFromClient() to open a new RFile object which refers to the same file as this. + +@param aIpcArgs The IPC message arguments. +@param aFsHandleIndex An index that identifies an argument in aIpcArgs where the + file server session handle will be stored. + This argument must not be used for anything else otherwise the + results will be unpredictable. +@param aFileHandleIndex An index that identifies an argument in aIpcArgs where the + file handle will be stored. + This argument must not be used for anything else otherwise the + results will be unpredictable. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +*/ +EFSRV_EXPORT_C TInt RFile::TransferToServer(TIpcArgs& aIpcArgs, TInt aFsHandleIndex, TInt aFileHandleIndex) const + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToServer, MODULEUID, Session().Handle(), SubSessionHandle(), aFsHandleIndex, aFileHandleIndex); + + if ((aFsHandleIndex < 0) || (aFsHandleIndex > (KMaxMessageArguments-2))) + { + TRACE1(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToServerReturn, MODULEUID, (TUint) KErrArgument); + return KErrArgument; + } + + TInt dupSubSessionHandle; + TInt r = DuplicateHandle(dupSubSessionHandle); + if (r == KErrNone) + { + aIpcArgs.Set(aFsHandleIndex, Session()); + aIpcArgs.Set(aFileHandleIndex, dupSubSessionHandle); + } + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToServerReturn, MODULEUID, r); + return r; + } + +/** +Transfers an already open file from a server to a client. + +Before this function can be called, the file server session which owns this file handle +must first be marked as shareable by calling RFs::ShareProtected(). + +The file (RFile) handle is written to the client's address space to the package +buffer in the message address slot in aMsg identified by aFileHandleIndex. + +If no error occurs, then the message is completed with the file-server (RFs) +session handle. + +When the message completes, the client may call AdoptFromServer() to open +a new RFile object which refers to the same file as this. + +Note that if an error occurs then the message is not completed. + +@param aMsg A message received from the client +@param aFileHandleIndex Identifies the message slot that contains a package + buffer pointing to an address in the client's address space + to receive the file (RFile) handle + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. +*/ +EFSRV_EXPORT_C TInt RFile::TransferToClient(const RMessage2& aMsg, TInt aFileHandleIndex) const + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToClient, MODULEUID, Session().Handle(), SubSessionHandle(), aFileHandleIndex); + + if (TUint(aFileHandleIndex) >= TUint(KMaxMessageArguments)) + { + TRACE1(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToClientReturn, MODULEUID, (TUint) KErrArgument); + return KErrArgument; + } + + TInt dupSubSessionHandle; + TInt r = DuplicateHandle(dupSubSessionHandle); + if (r == KErrNone) + r = aMsg.Write(aFileHandleIndex, TPckgC(dupSubSessionHandle)); + + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToClientReturn, MODULEUID, r); + return r; + } + + aMsg.Complete(Session()); + + TRACE1(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToClientReturn, MODULEUID, r); + + return r; + } + + +/** +Transfers an already open file to another process. + +Before this function can be called, the file server session which owns this file handle +must first be marked as shareable by calling RFs::ShareProtected(). + +This function packages handle details for this file into 2 arguments in another +process's environment data slots. +When the other process runs, it may call AdoptFromCreator() to open a new RFile +object which refers to the same file as this. + +@param aProcess A handle to another process. +@param aFsHandleIndex An index that identifies a slot in the process's + environment data which on exit will contain the file server + session (RFs) handle + This slot must not be used for anything else otherwise the + results will be unpredictable. +@param aFileHandleIndex An index that identifies a slot in the process's + environment data which on exit will contain the file + (RFile) handle. + This slot must not be used for anything else otherwise the + results will be unpredictable. +@return KErrNone if successful, otherwise one of the other system-wide + error codes. +*/ +// NB slot 0 is reserved for the command line +EFSRV_EXPORT_C TInt RFile::TransferToProcess(RProcess& aProcess, TInt aFsHandleIndex, TInt aFileHandleIndex) const + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToProcess, MODULEUID, Session().Handle(), SubSessionHandle(), aFsHandleIndex, aFileHandleIndex); + + TInt dupSubSessionHandle; + TInt r = DuplicateHandle(dupSubSessionHandle); + + if (r == KErrNone) + r = aProcess.SetParameter(aFsHandleIndex, RHandleBase(Session())); + + if (r == KErrNone) + r = aProcess.SetParameter(aFileHandleIndex, dupSubSessionHandle); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileTransferToProcessReturn, MODULEUID, r); + + return r; + } + + +EFSRV_EXPORT_C TInt RFile::Name(TDes& aName) const +/** +Gets the final part of a filename + +This is used to retrieve the name and extension of a file that has been +passed from one process to another using the RFile::AdoptXXX() methods. + +@param aName On return, contains the name of the file, including the name and + extension but excluding the drive letter and path. + +@return KErrNone if successful, otherwise one of the other + system-wide error codes. + +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileName, MODULEUID, Session().Handle(), SubSessionHandle()); + + TInt r = SendReceive(EFsFileName, TIpcArgs(&aName)); + + TRACERETMULT2(UTF::EBorder, UTraceModuleEfsrv::EFileNameReturn, MODULEUID, r, aName); + + return r; + } + + +EFSRV_EXPORT_C TInt RFile::FullName(TDes& aName) const +/** +Gets the full filename + +This is used to retrieve the full filename, including drive and path, +of a file that has been passed from one process to another using the +RFile::AdoptXXX() methods. + +@param aName On return, contains the full name of the file, including drive and path. + +@return KErrNone if successful, otherwise one of the other + system-wide error codes. + +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileFullName, MODULEUID, Session().Handle(), SubSessionHandle()); + + TInt r = SendReceive(EFsFileFullName, TIpcArgs(&aName)); + + TRACERETMULT2(UTF::EBorder, UTraceModuleEfsrv::EFileFullNameReturn, MODULEUID, r, aName); + + return r; + } + + + +EFSRV_EXPORT_C TInt RFile::Open(RFs& aFs,const TDesC& aName,TUint aMode) +/** +Opens an existing file for reading or writing. + +If the file does not already exist, an error is returned. + +Notes: + +1. To close the file, use Close() + +2. Attempting to open a file with the read-only attribute using the EFileWrite + access mode results in an error. + +3. Attempting to open a file which is greater than or equal to 2GByte (2,147,483,648 bytes) + will fail with KErrTooBig + +4. After a file has been opened, the current write position is set to the start + of the file. + If necessary, use RFile::Seek() to move to a different position within + the file. + +@param aFs The file server session. +@param aName The name of the file. Any path components (i.e. drive letter + or directory), which are not specified, are taken from + the session path.The file name shall not contain wild cards + ('?' or '*' characters) and illegal characters like + '<', '>', ':', '"', '/', '|' and '\000'. Backslash '\\' character + is allowed only as a path delimiter. The filename containing only + white space characters (See TChar::IsSpace()) is also illegal. + +@param aMode The mode in which the file is opened. See TFileMode. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@see TFileMode + +@capability Dependent If the path for aName is /Sys and aMode is neither + EFileShareReadersOnly nor EFileRead then Tcb capability is required. +@capability Dependent If the path for aName is /Sys and aMode is either + EFileShareReadersOnly or EFileRead then Allfiles capability is required. +@capability Dependent If the path for aName begins with /Private and does not match this process' + SID then AllFiles capability is required. +@capability Dependent If the path for aName begins with /Resource and aMode is neither + EFileShareReadersOrWriters|EFileRead nor EFileShareReadersOnly + nor EFileRead then Tcb capability is required. + +*/ + { + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileOpen, MODULEUID, aFs.Handle(), aMode, aName); + + aMode &= ~EFileBigFile; + TInt r = CreateSubSession(aFs,EFsFileOpen,TIpcArgs(&aName,aMode)); + + //TomP - temp file logging. + RDebug::Print(_L("RFile::Open, file= %S, errorcode=%d"), &aName, r); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileOpenReturn, MODULEUID, r, SubSessionHandle()); + + return r; + } + + +EFSRV_EXPORT_C void RFile::Close() +/** +Closes the file. + +Any open files are closed when the file server session is closed. + +Close() is guaranteed to return, and provides no indication whether +it completed successfully or not. When closing a file you have written to, +you should ensure that data is committed to the file by invoking RFile::Flush() +before closing. If Flush() completes successfully, Close() is essentially a +no-operation. +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileClose, MODULEUID, Session().Handle(), SubSessionHandle()); + +#if defined (SYMBIAN_FTRACE_ENABLE) && defined(__DLL__) + // Need to close the handle to the trace LDD if this is an auto-close subsession + // as these close their parent session by calling RHandleBase::Close(), i.e. they + // bypass RFs::Close() which would normally be responsible for closing the LDD + TInt h = Session().Handle() ^ CObjectIx::ENoClose; + if ( h != NULL && (!(h & CObjectIx::ENoClose)) ) + { + RFTRACE_CLOSE; + } +#endif + + CloseSubSession(EFsFileSubClose); + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileCloseReturn, MODULEUID); + } + + +EFSRV_EXPORT_C TInt RFile::Create(RFs& aFs,const TDesC& aName,TUint aMode) +/** +Creates and opens a new file for writing. + +If the file already exists, an error is returned. + +If the resulting path does not exist, then the operation cannot proceed and +the function returns an error code. + +Notes: + +1. To close the file, use Close() + +2. It automatically sets the file's archive attribute. + +@param aFs The file server session. +@param aName The name of the file. Any path components (i.e. drive letter + or directory), which are not specified, are taken from + the session path. The file name shall not contain wild cards + ('?' or '*' characters) and illegal characters like + '<', '>', ':', '"', '/', '|' and '\000'. Backslash '\\' character + is allowed only as a path delimiter. The filename containing only + white space characters (See TChar::IsSpace()) is also illegal. + +@param aMode The mode in which the file is opened. The access mode is + automatically set to EFileWrite. See TFileMode. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@see TFileMode + +@capability Dependent If the path in aName starts with /Sys then capability Tcb is required +@capability Dependent If the path in aName starts with /Resource then capability Tcb is required +@capability Dependent If the path in aName starts with /Private and does not match this process' + SID then AllFiles capability is required. + +*/ + { + aMode &= ~EFileBigFile; + + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileCreate, MODULEUID, aFs.Handle(), aMode, aName); + + TInt r = CreateSubSession(aFs,EFsFileCreate,TIpcArgs(&aName,aMode)); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileCreateReturn, MODULEUID, r, SubSessionHandle()); + + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Replace(RFs& aFs,const TDesC& aName,TUint aMode) +/** +Opens a file for writing, replacing the content of any existing file of the +same name if it exists, or creating a new file if it does not exist. + +If the resulting path exists, then: + +- the length of an existing file with the same filename is re-set to zero + +- a new file is created, if no existing file with the same filename can be found. + +If the resulting path does not exist, then the operation cannot proceed and +the function returns an error code. + +Notes: + +- To close the file, use Close(), defined in the base class RFsBase. + +- It automatically sets the file's archive attribute. + +@param aFs The file server session. +@param aName The name of the file. Any path components (i.e. drive letter + or directory), which are not specified, are taken from + the session path. The file name shall not contain wild cards + ('?' or '*' characters) and illegal characters like + '<', '>', ':', '"', '/', '|' and '\000'. Backslash '\\' character + is allowed only as a path delimiter. The filename containing only + white space characters (See TChar::IsSpace()) is also illegal. + +@param aMode The mode in which the file is opened. The access mode is + automatically set to EFileWrite. See TFileMode. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@see TFileMode + +@capability Dependent If the path in aName starts with /Sys then capability Tcb is required +@capability Dependent If the path in aName starts with /Resource then capability Tcb is required +@capability Dependent If the path in aName starts with /Private and does not match this process' + SID then AllFiles capability is required. + +*/ + { + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileReplace, MODULEUID, aFs.Handle(), aMode, aName); + aMode &= ~EFileBigFile; + TInt r = CreateSubSession(aFs,EFsFileReplace,TIpcArgs(&aName,aMode)); + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileReplaceReturn, MODULEUID, r, SubSessionHandle()); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Temp(RFs& aFs,const TDesC& aPath,TFileName& aName,TUint aMode) +/** +Creates and opens a temporary file with a unique name for writing and reading. + +Notes: + +1. To close the file, use Close() + +@param aFs The file server session. +@param aPath The directory in which the file is created. +@param aName On return, contains the full path and file name of the file. + The filename is guaranteed to be unique within the directory + specified by aPath. +@param aMode The mode in which the file is opened. The access mode is + automatically set to EFileWrite. See TFileMode. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@see TFileMode + +@capability Dependent If aPath starts with /Sys then capability Tcb is required +@capability Dependent If aPath starts with /Resource then capability Tcb is required +@capability Dependent If aPath starts with /Private and does not match this process' + SID then AllFiles capability is required. +*/ + { + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileTemp, MODULEUID, aFs.Handle(), aPath, aMode); + aMode &= ~EFileBigFile; + TInt r = CreateSubSession(aFs,EFsFileTemp,TIpcArgs(&aPath,aMode,&aName)); + TRACERETMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileTempReturn, MODULEUID, r, SubSessionHandle(), aName); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Read(TDes8& aDes) const +/** +Reads from the file at the current position. + +This is a synchronous function. + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into +it. Therefore, when reading through a file,the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. + +@param aDes Descriptor into which binary data is read. Any existing contents + are overwritten. On return, its length is set to the number of + bytes read. +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@see TDesC8::Length +*/ + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileRead1, MODULEUID, Session().Handle(), SubSessionHandle(), aDes.MaxLength()); + + TInt r = SendReceive(EFsFileRead,TIpcArgs(&aDes,aDes.MaxLength(),I64LOW(KCurrentPosition64))); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileRead1Return, MODULEUID, r, aDes.Length()); + + return r; + } + + + + +EFSRV_EXPORT_C void RFile::Read(TDes8& aDes,TRequestStatus& aStatus) const +/** +Reads from the file at the current position. + +This is an asynchronous function. + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into +it. Therefore, when reading through a file,the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. + +@param aDes Descriptor into which binary data is read. Any existing contents + are overwritten. On return, its length is set to the number of + bytes read. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aStatus Request status. On completion contains: + KErrNone, if successful, otherwise one of the other system-wide error codes. + +@see TDesC8::Length +*/ + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileRead2, MODULEUID, Session().Handle(), SubSessionHandle(), aDes.MaxLength(), &aStatus); + + RSubSessionBase::SendReceive(EFsFileRead,TIpcArgs(&aDes,aDes.MaxLength(),I64LOW(KCurrentPosition64)),aStatus); + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileRead2Return, MODULEUID); + } + + + + +EFSRV_EXPORT_C TInt RFile::Read(TDes8& aDes,TInt aLength) const +/** +Reads the specified number of bytes of binary data from the file at the current position. + +This is a synchronous function. + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into +it. Therefore, when reading through a file,the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. +Assuming aLength is less than the maximum length of the descriptor, the only circumstances +in which Read() can return fewer bytes than requested, is when the end of +file is reached or if an error occurs. + +@param aDes Descriptor into which binary data is read. Any existing + contents are overwritten. On return, its length is set to + the number of bytes read. + +@param aLength The number of bytes to be read from the file into the descriptor. + If an attempt is made to read more bytes than the descriptor's + maximum length, the function returns KErrOverflow. + This value must not be negative, otherwise the function + returns KErrArgument. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileRead1, MODULEUID, Session().Handle(), SubSessionHandle(), aLength); + + if (aLength==0) + { + aDes.Zero(); + return(KErrNone); + } + else if(aLength>aDes.MaxLength()) + { + return(KErrOverflow); + } + TInt r = SendReceive(EFsFileRead,TIpcArgs(&aDes,aLength,I64LOW(KCurrentPosition64))); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileRead1Return, MODULEUID, r, aDes.Length()); + + return r; + } + + + + +EFSRV_EXPORT_C void RFile::Read(TDes8& aDes,TInt aLength,TRequestStatus& aStatus) const +/** +Reads a specified number of bytes of binary data from the file at the current position. + +This is an asynchronous function. + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. +Assuming aLength is less than the maximum length of the descriptor, the only +circumstances in which Read() can return fewer bytes than requested is when +the end of file is reached or if an error has occurred. + +@param aDes Descriptor into which binary data is read. Any existing + contents are overwritten. On return, its length is set to the + number of bytes read. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aLength The number of bytes to be read from the file into the descriptor. + If an attempt is made to read more bytes than the descriptor's + maximum length, then the function updates aStatus parameter with KErrOverflow. + It must not be negative otherwise the function updates aStatus with KErrArgument. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. +*/ + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileRead2, MODULEUID, Session().Handle(), SubSessionHandle(), aLength, &aStatus); + + if (aLength==0) + { + aDes.Zero(); + TRequestStatus* req=(&aStatus); + User::RequestComplete(req,KErrNone); + return; + } + else if(aLength>aDes.MaxLength()) + { + TRequestStatus* req=(&aStatus); + User::RequestComplete(req,KErrOverflow); + return; + } + + RSubSessionBase::SendReceive(EFsFileRead,TIpcArgs(&aDes,aLength,I64LOW(KCurrentPosition64)),aStatus); + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileRead2Return, MODULEUID); + } + + + + +EFSRV_EXPORT_C TInt RFile::Read(TInt aPos,TDes8& aDes) const +/** +Reads from the file at the specified offset within the file + +This is a synchronous function. + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, reading + begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing content + is overwritten. On return, its length is set to the number of + bytes read. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileRead3, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aDes.MaxLength()); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + + TInt r = SendReceive(EFsFileRead,TIpcArgs(&aDes,aDes.MaxLength(),aPos)); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileRead3Return, MODULEUID, r, aDes.Length()); + + return r; + } + + + + +EFSRV_EXPORT_C void RFile::Read(TInt aPos,TDes8& aDes,TRequestStatus& aStatus) const +/** +Reads from the file at the specified offset within the file. + +This is an asynchronous function. + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + content is overwritten. On return, its length is set to + the number of bytes read. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aStatus The request status. On completion, contains an error code of KErrNone + if successful, otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileRead4, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aDes.MaxLength(), &aStatus); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + RSubSessionBase::SendReceive(EFsFileRead,TIpcArgs(&aDes,aDes.MaxLength(),aPos),aStatus); + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileRead4Return, MODULEUID); + } + + + + +EFSRV_EXPORT_C TInt RFile::Read(TInt aPos,TDes8& aDes,TInt aLength) const +/** +Reads the specified number of bytes of binary data from the file at a specified +offset within the file. + +This is a synchronous function. + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. +Assuming aLength is less than the maximum length of the descriptor, the only +circumstances in which Read() can return fewer bytes than requested is when +the end of file is reached or if an error has occurred. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + contents are overwritten. On return, its length is set to + the number of bytes read. +@param aLength The number of bytes to read from the file into the descriptor. + If an attempt is made to read more bytes than the descriptor's + maximum length, then the function updates aStatus parameter with KErrOverflow. + It must not be negative otherwise the function updates aStatus with KErrArgument. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileRead3, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aLength); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + if (aLength==0) + { + aDes.Zero(); + return(KErrNone); + } + else if(aLength>aDes.MaxLength()) + { + return(KErrOverflow); + } + + TInt r = SendReceive(EFsFileRead,TIpcArgs(&aDes,aLength,aPos)); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileRead3Return, MODULEUID, r, aDes.Length()); + + return r; + } + + + + +EFSRV_EXPORT_C void RFile::Read(TInt aPos,TDes8& aDes,TInt aLength,TRequestStatus& aStatus) const +/** +Reads the specified number of bytes of binary data from the file at a specified +offset within the file. + +This is an asynchronous function. + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. +Assuming aLength is less than the maximum length of the descriptor, the only +circumstances in which Read() can return fewer bytes than requested is when +the end of file is reached or if an error has occurred. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + contents are overwritten. On return, its length is set to + the number of bytes read. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aLength The number of bytes to read from the file into the descriptor. + If an attempt is made to read more bytes than the descriptor's + maximum length, then the function returns KErrOverflow. + It must not be negative otherwise the function returns KErrArgument. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileRead4, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aLength, &aStatus); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + if (aLength==0) + { + aDes.Zero(); + TRequestStatus* req=(&aStatus); + User::RequestComplete(req,KErrNone); + return; + } + else if(aLength>aDes.MaxLength()) + { + TRequestStatus* req=(&aStatus); + User::RequestComplete(req,KErrOverflow); + return; + } + + RSubSessionBase::SendReceive(EFsFileRead,TIpcArgs(&aDes,aLength,aPos),aStatus); + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileRead4Return, MODULEUID); + } + + + + +EFSRV_EXPORT_C void RFile::ReadCancel(TRequestStatus& aStatus) const +/** +Cancels a specific outstanding asynchronous read request. + +The outstanding request completes with KErrCancel. + +@param aStat The request status object identified with the original + asynchronous read. +*/ + { + if(aStatus != KRequestPending) + return; + SendReceive(EFsFileReadCancel, TIpcArgs(&aStatus)); + } + + + + +EFSRV_EXPORT_C void RFile::ReadCancel() const +/** +Cancels all outstanding asynchronous read requests for this subsession. + +All outstanding requests complete with KErrCancel. +*/ + { + SendReceive(EFsFileReadCancel, TIpcArgs(NULL)); + } + + + + +EFSRV_EXPORT_C TInt RFile::Write(const TDesC8& aDes) +/** +Writes to the file at the current offset within the file. + +This is a synchronous function. + +NB Attempting to extend the file to 2 GByte or greater will fail with KErrTooBig + +@param aDes The descriptor from which binary data is written. + The function writes the entire contents of aDes to the file. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1, MODULEUID, Session().Handle(), SubSessionHandle(), aDes.Length()); + TInt r = SendReceive(EFsFileWrite,TIpcArgs(&aDes,aDes.Length(),I64LOW(KCurrentPosition64))); + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1Return, MODULEUID, r); + return r; + } + + +EFSRV_EXPORT_C void RFile::Write(const TDesC8& aDes,TRequestStatus& aStatus) +/** +Writes to the file at the current offset within the file. + +This is an asynchronous function. + +NB Attempting to extend the file to 2 GByte or greater will fail with KErrTooBig + +@param aDes The descriptor from which binary data is written. + The function writes the entire contents of aDes to the file. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. +*/ + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2, MODULEUID, Session().Handle(), SubSessionHandle(), aDes.Length(), &aStatus); + + RSubSessionBase::SendReceive(EFsFileWrite,TIpcArgs(&aDes,aDes.Length(),I64LOW(KCurrentPosition64)),aStatus); + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2Return, MODULEUID); + } + + + + +EFSRV_EXPORT_C TInt RFile::Write(const TDesC8& aDes,TInt aLength) +/** +Writes a portion of a descriptor to the file at the current offset within +the file. + +This is a synchronous function. + +NB Attempting to extend the file to 2 GByte or greater will fail with KErrTooBig + +@param aDes The descriptor from which binary data is written. +@param aLength The number of bytes to be written from the descriptor. + This must not be greater than the length of the descriptor. + It must not be negative. + +@return KErrNone if successful; KErrArgument if aLength is negative; + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 27 in debug mode, if aLength is greater than the length + of the descriptor aDes. +*/ + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1, MODULEUID, Session().Handle(), SubSessionHandle(), aLength); + + __ASSERT_DEBUG(aDes.Length()>=aLength,Panic(EBadLength)); + TInt r = SendReceive(EFsFileWrite,TIpcArgs(&aDes,aLength,I64LOW(KCurrentPosition64))); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1Return, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C void RFile::Write(const TDesC8& aDes,TInt aLength,TRequestStatus& aStatus) +/** +Writes a portion of a descriptor to the file at the current offset +within the file. + +This is an asynchronous function. + +NB Attempting to extend the file to 2 GByte or greater will fail with KErrTooBig + +@param aDes The descriptor from which binary data is written. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aLength The number of bytes to be written from the descriptor. + This must not be greater than the length of the descriptor. + It must not be negative. + +@param aStatus Request status. On completion contains KErrNone if successful; + KErrArgument if aLength is negative; + otherwise one of the other system-wide error codes. + +*/ + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2, MODULEUID, Session().Handle(), SubSessionHandle(), aLength, &aStatus); + + RSubSessionBase::SendReceive(EFsFileWrite,TIpcArgs(&aDes,aLength,I64LOW(KCurrentPosition64)),aStatus); + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2Return, MODULEUID); + } + + + + + +EFSRV_EXPORT_C TInt RFile::Write(TInt aPos,const TDesC8& aDes) +/** +Writes to the file at the specified offset within the file + +This is a synchronous function. + +NB Attempting to extend the file to 2 GByte or greater will fail with KErrTooBig + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. The function writes + the entire contents of aDes to the file. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileWrite3, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aDes.Length()); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + TInt r = SendReceive(EFsFileWrite,TIpcArgs(&aDes,aDes.Length(),aPos)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileWrite3Return, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C void RFile::Write(TInt aPos,const TDesC8& aDes,TRequestStatus& aStatus) +/** +Writes to the file at the specified offset within the file + +This is an asynchronous function. + +NB Attempting to extend the file to 2 GByte or greater will fail with KErrTooBig + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. The function + writes the entire contents of aDes to the file. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileWrite4, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aDes.Length(), &aStatus); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + RSubSessionBase::SendReceive(EFsFileWrite,TIpcArgs(&aDes,aDes.Length(),aPos),aStatus); + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileWrite4Return, MODULEUID); + } + + + + +EFSRV_EXPORT_C TInt RFile::Write(TInt aPos,const TDesC8& aDes,TInt aLength) +/** +Writes the specified number of bytes to the file at the specified offset within the file. + +This is a synchronous function. + +NB Attempting to extend the file to 2 GByte or greater will fail with KErrTooBig + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. +@param aLength The number of bytes to be written from aDes . + It must not be negative. + +@return KErrNone if successful; KErrArgument if aLength is negative; + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1, MODULEUID, Session().Handle(), SubSessionHandle(), aLength); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + TInt r = SendReceive(EFsFileWrite,TIpcArgs(&aDes,aLength,aPos)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1Return, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C void RFile::Write(TInt aPos,const TDesC8& aDes,TInt aLength,TRequestStatus& aStatus) +/** +Writes the specified number of bytes to the file at the specified offset within the file. + +This is an asynchronous function. + +NB Attempting to extend the file to 2 GByte or greater will fail with KErrTooBig + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aLength The number of bytes to be written from aDes. + It must not be negative. + +@param aStatus Request status. On completion contains KErrNone if successful; + KErrArgument if aLength is negative; + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aLength, &aStatus); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + RSubSessionBase::SendReceive(EFsFileWrite,TIpcArgs(&aDes,aLength,aPos),aStatus); + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2Return, MODULEUID); + } + + + + +EFSRV_EXPORT_C TInt RFile::Lock(TInt aPos,TInt aLength) const +/** +Locks a region within the file as defined by a range of bytes. + +This ensures that those bytes are accessible +only through the RFile object which claims the lock. To re-allow access by +other programs to the locked region, it must either be unlocked or the file +closed. Locking can be used to synchronize operations on a file when more +than one program has access to the file in EFileShareAny mode. + +More than one distinct region of a file can be locked, but an error is returned +if more than one lock is placed on the same region. Different RFile objects +can lock different parts of the same file as long as the file is opened in +EFileShareAny mode. The locked region may extend beyond the end of a file; +this prevents the file from being extended by other programs. + +@param aPos Position in file from which to lock; this is the offset from + the beginning of the file. +@param aLength Number of bytes to lock. + +@return KErrNone if successful; KErrArgument if aPos+aLength>2G-1 boundary; + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 17 if aLength is not greater than zero, +@panic FSCLIENT 19 if aPos is negative. + +*/ + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileLock, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aLength); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + + TInt r = SendReceive(EFsFileLock,TIpcArgs(aPos,aLength)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileLockReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::UnLock(TInt aPos,TInt aLength) const +/** +Unlocks a region within the file as defined by a range of bytes. + +A lock can only be removed by the RFile object which claimed the lock. + +A portion of a locked region cannot be unlocked. The entire locked region +must be unlocked otherwise an error is returned. If any byte within +the specified range of bytes to unlock is not locked, an error is returned. + +@param aPos Position in file from which to unlock; this is the offset from + the beginning of the file. +@param aLength Number of bytes to unlock. + +@return KErrNone if successful; KErrArgument if aPos+aLength>2G-1 boundary; + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 18 if aLength is not greater than zero, +@panic FSCLIENT 19 if aPos is negative. +*/ + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileUnLock, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aLength); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + TInt r = SendReceive(EFsFileUnLock,TIpcArgs(aPos,aLength)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileUnLockReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Seek(TSeek aMode,TInt& aPos) const +/** +Sets the the current file position. + +The function can also be used to get the current file +position without changing it. The file position is the position at which +reading and writing takes place. The start of the file is position zero. + +To retrieve the current file position without changing it, specify ESeekCurrent +for the seek mode, and zero for the offset. + +If the seek mode is ESeekStart, then: + +1. the function does not modify the aPos argument, + +2. the function returns an error if the offset specified is negative. + +If the seek mode is ESeekAddress, an error is returned if: + +1. the file is not in ROM, + +2. the offset specified is greater than the size of the file. + +@param aMode Seek mode. Controls the destination of the seek operation. +@param aPos Offset from location specified in aMode. Can be negative. + On return contains the new file position. + If the seek mode is either ESeekCurrent or ESeekEnd and the offset + specifies a position before the start of the file + or beyond the end of the file, then on return, aPos is set to + the new file position (either the start or the end of the file). + If the seek mode is ESeekAddress, aPos returns the address of + the byte at the specified offset within the file. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileSeek, MODULEUID, Session().Handle(), SubSessionHandle(), aMode, aPos, 0); + + TInt64 newPos = aPos; + TPckg pkNewPos(newPos); + TInt r = SendReceive(EFsFileSeek|KIpcArgSlot2Desc,TIpcArgs(aPos,aMode,&pkNewPos)); + if(KErrNone == r) + aPos = I64LOW(newPos); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileSeekReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Flush() +/** +Commits data to the storage device and flushes internal buffers without closing +the file. + +Although RFile::Close() also flushes internal buffers, it is often useful +to call Flush() before a file is closed. This is because Close() returns no +error information, so there is no way of telling whether the final data was +written to the file successfully or not. Once data has been flushed, Close() +is effectively a no-operation. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileFlush, MODULEUID, Session().Handle(), SubSessionHandle(), NULL); + + TInt r = RSubSessionBase::SendReceive(EFsFileFlush); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileFlushReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C void RFile::Flush(TRequestStatus& aStatus) +/** +Commits data to the storage device and flushes internal buffers without closing +the file. + +Although RFile::Close() also flushes internal buffers, it is often useful +to call Flush() before a file is closed. This is because Close() returns no +error information, so there is no way of telling whether the final data was +written to the file successfully or not. Once data has been flushed, Close() +is effectively a no-operation. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. +*/ + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileFlush, MODULEUID, Session().Handle(), SubSessionHandle(), &aStatus); + + RSubSessionBase::SendReceive(EFsFileFlush, aStatus); + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileFlushReturn, MODULEUID); + } + + + + +EFSRV_EXPORT_C TInt RFile::Size(TInt& aSize) const +/** +Gets the current file size. + +@param aSize On return, the size of the file in bytes. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileSize, MODULEUID, Session().Handle(), SubSessionHandle()); + + TInt64 size = aSize; + TPckg pkSize(size); + TInt r = SendReceive(EFsFileSize|KIpcArgSlot0Desc,TIpcArgs(&pkSize)); + if(KErrNone != r) + return r; + aSize = I64LOW(size); +#ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API + if (size > KMaxTInt) + return (KErrTooBig); +#endif + + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileSizeReturn, MODULEUID, r, aSize); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::SetSize(TInt aSize) +/** +Sets the file size. + +If the size of the file is reduced, data may be lost from +the end of the file. + +Note: + +1. The current file position remains unchanged unless SetSize() reduces the size + of the file in such a way that the current file position is now beyond + the end of the file. In this case, the current file position is set to + the end of file. + +2. If the file was not opened for writing, an error is returned. + +@param aSize The new size of the file, in bytes. This value must not be negative, otherwise the function raises a panic. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 20 If aSize is negative. + +*/ + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileSetSize, MODULEUID, Session().Handle(), SubSessionHandle(), aSize, 0); + + TInt r = SendReceive(EFsFileSetSize,TIpcArgs(aSize)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileSetSizeReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Att(TUint& aVal) const +/** +Gets the file's attributes. + +@param aVal A bitmask which, on return, contains the file’s attributes. + For more information, see KEntryAttNormal and the other + file/directory attributes. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@see KEntryAttNormal +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileAtt, MODULEUID, Session().Handle(), SubSessionHandle()); + + TPtr8 a((TUint8*)&aVal,sizeof(TUint)); + + TInt r = SendReceive(EFsFileAtt,TIpcArgs(&a)); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileAttReturn, MODULEUID, r, aVal); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::SetAtt(TUint aSetAttMask,TUint aClearAttMask) +/** +Sets or clears file attributes using two bitmasks. + +The first mask controls which attributes are set. +The second controls which attributes are cleared. + +Notes: + +1. The file must have been opened for writing, or an error is returned. + +2. A panic is raised if any attribute is specified in both bitmasks. + +3. An attempt to set or clear the KEntryAttDir, KEntryAttVolume or KEntryAttRemote + attributes have no effect. + +4. The new attribute values take effect when the file is flushed or closed (which + implies a flush). + +@param aSetAttMask A bitmask indicating the file attributes to be set +@param aClearAttMask A bitmask indicating the attributes to be cleared. For + more information see KEntryAttNormal, and the other + file/directory attributes. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 21 if the same attribute bit is set in both bitmasks. +*/ + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileSetAtt, MODULEUID, Session().Handle(), SubSessionHandle(), aSetAttMask, aClearAttMask); + + __ASSERT_ALWAYS((aSetAttMask&aClearAttMask)==0,Panic(EAttributesIllegal)); + + TInt r = SendReceive(EFsFileSetAtt,TIpcArgs(aSetAttMask,aClearAttMask)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileSetAttReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Modified(TTime& aTime) const +/** +Gets local date and time the file was last modified, in universal time. + +@param aTime On return, contains the date and time the file was last modified in UTC. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileModified, MODULEUID, Session().Handle(), SubSessionHandle()); + + TPtr8 t((TUint8*)&aTime,sizeof(TTime)); + TInt r = SendReceive(EFsFileModified,TIpcArgs(&t)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileModifiedReturn, MODULEUID, r, I64LOW(aTime.Int64()), I64HIGH(aTime.Int64())); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::SetModified(const TTime& aTime) +/** +Sets the date and time the file was last modified. UTC date and time should be used. + +Notes: + +1. The file must have been opened for writing, or an error is returned. + +2. The new modified time takes effect when the file is flushed or closed (which + implies a flush). + +@param aTime The new date and time the file was last modified, in universal time. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileSetModified, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aTime.Int64()), I64HIGH(aTime.Int64())); + + TPtrC8 t((TUint8*)&aTime,sizeof(TTime)); + TInt r = SendReceive(EFsFileSetModified,TIpcArgs(&t)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileSetModifiedReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Set(const TTime& aTime,TUint aMask,TUint aVal) +/** +Sets the file’s attributes, and the date and time it was last modified. + +It combines the functionality of SetAtt() and SetModified() + +An attempt to set or clear the KEntryAttDir, KEntryAttVolume or KEntryAttRemote +attributes have no effect. + +@param aTime The new date and time the file was last modified. UTC date and time should be used. +@param aMask A bitmask indicating the file attributes to be set +@param aVal A bitmask indicating the attributes to be cleared. For + more information see KEntryAttNormal, and the other + file/directory attributes. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 21 if the same attribute bit is set in both bitmasks. + +@see RFile::SetModified +@see RFile::SetAtt +*/ + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileSet, MODULEUID, + Session().Handle(), SubSessionHandle(), I64LOW(aTime.Int64()), I64HIGH(aTime.Int64()), aMask, aVal); + + __ASSERT_ALWAYS((aVal&aMask)==0,Panic(EAttributesIllegal)); + TPtrC8 t((TUint8*)&aTime,sizeof(TTime)); + TInt r = SendReceive(EFsFileSet,TIpcArgs(&t,aMask,aVal)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileSetReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::ChangeMode(TFileMode aNewMode) +/** +Switches an open file's access mode between EFileShareExclusive and EFileShareReadersOnly. + +This allows or disallows read-only access without having to close and re-open the file. + +@param aNewMode The new access mode. + +@return KErrNone, if successful; + KErrArgument, if aNewMode has any value other than the two specified; + KErrAccessDenied, if: + a) the function is called when the current file share + mode is EFileShareAny; + b) the file has multiple readers, and an attempt is made + to change the share mode to EFileShareExclusive; + c) the file has been opened for writing in EFileShareExclusive mode, and an + attempt is made to change the access mode to EFileShareReadersOnly. + +@capability Dependent If the path starts with /Resource then capability DiskAdmin is required + +*/ + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileChangeMode, MODULEUID, Session().Handle(), SubSessionHandle(), aNewMode); + + if (aNewMode!=EFileShareExclusive && aNewMode!=EFileShareReadersOnly) + return(KErrArgument); + TInt r = SendReceive(EFsFileChangeMode,TIpcArgs(aNewMode)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileChangeModeReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Rename(const TDesC& aNewName) +/** +Renames a file. + +If aNewName specifies a different directory to the one in which +the file is currently located, then the file is moved. + +No other process may have access to the file, that is, the file must have +been opened in EFileShareExclusive share mode, or an error is returned. The +file must have been opened for writing (using EFileWrite access mode). An +error is returned if a file with the new filename already exists in the target +directory. + +The file or directory may not be moved to another device by this means, either +explicitly (by another drive specified in the name) or implicitly (because +the directory has been mapped to another device with RFs::SetSubst()). + +Note that the function builds up the new file specification by using all +of the path components specified +in aNewName (directory path, filename and extension), +then adding any missing components from the current file specification, and +finally adding any missing components from the session path. A consequence +of this is that you cannot rename a file to remove its extension. An alternative +to this function is RFs::Rename() which renames the file using the new name +as provided. + +@param aNewName The new file name and/or directory path. No part may contain + wildcard characters or an error is returned. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@capability Dependent If aNewName starts with /Sys then capability Tcb is required +@capability Dependent If aNewName starts with /Resource then capability Tcb is required +@capability Dependent If aNewName starts with /Private and does not match this process' + SID then AllFiles capability is required. + +*/ + { + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileRename, MODULEUID, Session().Handle(), SubSessionHandle(), aNewName); + + TInt r = SendReceive(EFsFileRename,TIpcArgs(&aNewName)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileRenameReturn, MODULEUID, r); + return r; + } + + + + +EFSRV_EXPORT_C TInt RFile::Drive(TInt &aDriveNumber, TDriveInfo &aDriveInfo) const +/** +Gets information about the drive on which this file resides. + +@param aDriveNumber On return, the drive number. + +@param aDriveInfo On return, contains information describing the drive + and the medium mounted on it. The value of TDriveInfo::iType + shows whether the drive contains media. + +@return KErrNone, if successful, otherwise one of the other + system-wide error codes + +@see RFs::Drive +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileDrive, MODULEUID, Session().Handle(), SubSessionHandle()); + + TPckg pki(aDriveNumber); + TPckg pkdi(aDriveInfo); + TInt r = SendReceive(EFsFileDrive,TIpcArgs(&pki,&pkdi)); + + TRACERET4(UTF::EBorder, UTraceModuleEfsrv::EFileDriveReturn, MODULEUID, r, aDriveInfo.iDriveAtt, aDriveInfo.iMediaAtt, aDriveInfo.iType); + return r; + } + + +TInt RFile::Clamp(RFileClamp& aHandle) +/** +Instructs the File Server that the file is not to be modified on storage media. + +@param aHandle On return, a handle to the file. + +@return KErrNone, if successful, otherwise one of the other + system-wide error codes + +@see RFs::Unclamp +*/ + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileClamp, MODULEUID, Session().Handle(), SubSessionHandle()); + + TPckg pkHandle(aHandle); + TInt r = SendReceive(EFsFileClamp,TIpcArgs(& pkHandle)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileClampReturn, MODULEUID, r); + return r; + } + +/** +Fetches the Block Map of a file. Each file in the file system will consist of +a number of groups of blocks. Each group represents a number of contiguous blocks. +Such a group is represented by the TBlockMapEntry class. The full Block Map representing +the file may be determined by repeatedly calling RFile::BlockMap until KErrCompletion is +returned. + +Note: + +1. If the Block Map for the whole file is not required, then a start and end position + for a section of the file can be specified. Both of these parameters specify offsets + from the start of the file in bytes. + +@param aInfo A structure describing a group of block maps. + +@param aStartPos A start position for a desired section of the file. + +@param aEndPos An end position for a desired section of the file. If not passed, then the end of the + file is assumed. + +@return KErrNone until the end of the file or the file section is successfully reached; + KErrCompletion if the end of the file is reached; + KErrNotSupported if the file system does not support Block Mapping or the media is either removable or not pageable. +*/ +EFSRV_EXPORT_C TInt RFile::BlockMap(SBlockMapInfo& aInfo, TInt64& aStartPos, TInt64 aEndPos, TInt aBlockMapUsage) const + { + TRACE7(UTF::EBorder, UTraceModuleEfsrv::EFileBlockMap, MODULEUID, + Session().Handle(), SubSessionHandle(), I64LOW(aStartPos), I64HIGH(aEndPos), I64LOW(aEndPos), I64HIGH(aEndPos), aBlockMapUsage); + + SBlockMapArgs args; + args.iStartPos = aStartPos; + args.iEndPos = aEndPos; + TPckg pkInfo(aInfo); + TPckg pkArgs(args); + TInt r = SendReceive(EFsBlockMap, TIpcArgs(&pkInfo, &pkArgs, aBlockMapUsage)); + if(r==KErrNone) + aStartPos = args.iStartPos; + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileBlockMapReturn, MODULEUID, r); + return r; + } + + +#ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API +/** +Opens an existing file for reading or writing. + +If the file does not already exist, an error is returned. + +This is equivalent to calling RFile::Open except that this function +can open files of size greater than 2GB - 1 also. + +Notes: + +1. To close the file, use Close() + +2. Attempting to open a file with the read-only attribute using the EFileWrite + access mode results in an error. + +3. After a file has been opened, the current write position is set to the start + of the file. + If necessary, use RFile64::Seek() to move to a different position within + the file. + +4. It enables big file support to handle files whose size are greater then 2GB-1 + +@param aFs The file server session. +@param aName The name of the file. Any path components (i.e. drive letter + or directory), which are not specified, are taken from + the session path. +@param aMode The mode in which the file is opened. See TFileMode. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@see TFileMode +@see RFile::Open() + +@capability Dependent If the path for aName is /Sys and aMode is neither + EFileShareReadersOnly nor EFileRead then Tcb capability is required. +@capability Dependent If the path for aName is /Sys and aMode is either + EFileShareReadersOnly or EFileRead then Allfiles capability is required. +@capability Dependent If the path for aName begins with /Private and does not match this process' + SID then AllFiles capability is required. +@capability Dependent If the path for aName begins with /Resource and aMode is neither + EFileShareReadersOrWriters|EFileRead nor EFileShareReadersOnly + nor EFileRead then Tcb capability is required. + +*/ +EFSRV_EXPORT_C TInt RFile64::Open(RFs& aFs,const TDesC& aName,TUint aFileMode) + { + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileOpen, MODULEUID, aFs.Handle(), aFileMode, aName); + + TInt r = CreateSubSession(aFs,EFsFileOpen,TIpcArgs(&aName,aFileMode|EFileBigFile)); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileOpenReturn, MODULEUID, r, SubSessionHandle()); + return r; + } + +/** +Creates and opens a new file for writing. + +If the file already exists, an error is returned. + +If the resulting path does not exist, then the operation cannot proceed and +the function returns an error code. + +This is equivalent to calling RFile::Create except that the file created with +this function can grow beyond 2GB - 1 also. + +Notes: + +1. To close the file, use Close() + +2. It automatically sets the file's archive attribute. + +3. It enables big file support to handle files whose size are greater then 2GB-1 + + +@param aFs The file server session. +@param aName The name of the file. Any path components (i.e. drive letter + or directory), which are not specified, are taken from + the session path. +@param aMode The mode in which the file is opened. The access mode is + automatically set to EFileWrite. See TFileMode. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@see RFile::Create() +@see TFileMode + +@capability Dependent If the path in aName starts with /Sys then capability Tcb is required +@capability Dependent If the path in aName starts with /Resource then capability Tcb is required +@capability Dependent If the path in aName starts with /Private and does not match this process' + SID then AllFiles capability is required. + +*/ +EFSRV_EXPORT_C TInt RFile64::Create(RFs& aFs,const TDesC& aName,TUint aFileMode) + { + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileCreate, MODULEUID, aFs.Handle(), aFileMode, aName); + + TInt r = CreateSubSession(aFs,EFsFileCreate,TIpcArgs(&aName,aFileMode|EFileBigFile)); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileCreateReturn, MODULEUID, r, SubSessionHandle()); + return r; + } + +/** +Opens a file for writing, replacing the content of any existing file of the +same name if it exists, or creating a new file if it does not exist. + +This is equivalent to calling RFile::Replace except that the file created or replaced +with this function can grow beyond 2GB - 1 also. + + +If the resulting path exists, then: + +- the length of an existing file with the same filename is re-set to zero + +- a new file is created, if no existing file with the same filename can be found. + +If the resulting path does not exist, then the operation cannot proceed and +the function returns an error code. + +Notes: + +- To close the file, use Close(), defined in the base class RFsBase. + +- It automatically sets the file's archive attribute. + +- It enables big file support to handle files whose size are greater then 2GB-1 + + +@param aFs The file server session. +@param aName The name of the file. Any path components (i.e. drive letter + or directory), which are not specified, are taken from + the session path. +@param aMode The mode in which the file is opened. The access mode is + automatically set to EFileWrite. See TFileMode. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@see TFileMode +@see RFile::Replace() + +@capability Dependent If the path in aName starts with /Sys then capability Tcb is required +@capability Dependent If the path in aName starts with /Resource then capability Tcb is required +@capability Dependent If the path in aName starts with /Private and does not match this process' + SID then AllFiles capability is required. + +*/ +EFSRV_EXPORT_C TInt RFile64::Replace(RFs& aFs,const TDesC& aName,TUint aFileMode) + { + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileReplace, MODULEUID, aFs.Handle(), aFileMode, aName); + + TInt r = CreateSubSession(aFs,EFsFileReplace,TIpcArgs(&aName,aFileMode|EFileBigFile)); + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileReplaceReturn, MODULEUID, r, SubSessionHandle()); + return r; + } + + +/** +Creates and opens a temporary file with a unique name for writing and reading. +This is equivalent to calling RFile::Temp except that the file created +with this function can grow beyond 2GB - 1 also. + + +Notes: + +1. To close the file, use Close() +2. It enables big file support to handle files whose size are greater then 2GB-1 + +@param aFs The file server session. +@param aPath The directory in which the file is created. +@param aName On return, contains the full path and file name of the file. + The filename is guaranteed to be unique within the directory + specified by aPath. +@param aMode The mode in which the file is opened. The access mode is + automatically set to EFileWrite. See TFileMode. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@see TFileMode +@see RFile::Temp() + +@capability Dependent If aPath starts with /Sys then capability Tcb is required +@capability Dependent If aPath starts with /Resource then capability Tcb is required +@capability Dependent If aPath starts with /Private and does not match this process' + SID then AllFiles capability is required. +*/ +EFSRV_EXPORT_C TInt RFile64::Temp(RFs& aFs,const TDesC& aPath,TFileName& aName,TUint aFileMode) + { + TRACEMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileTemp, MODULEUID, aFs.Handle(), aPath, aFileMode); + TInt r = CreateSubSession(aFs,EFsFileTemp,TIpcArgs(&aPath,aFileMode|EFileBigFile,&aName)); + TRACERETMULT3(UTF::EBorder, UTraceModuleEfsrv::EFileTempReturn, MODULEUID, r, SubSessionHandle(), aName); + return r; + } + + +/** +Allows a server to adopt an already open file from a client. +The client's RFs and RFile or RFile64 handles are contained in message slots within aMsg. + +Assumes that the client's RFs and RFile or RFile64 handles have been sent to the server +using TransferToServer(). + +This is equivalent to calling RFile::AdoptFromClient +except that the file adopted can be enlarged to sizes beyond 2GB-1. + +Note: +If a RFile handle is received from the client then enlarging the file beyond +2GB-1 might result in inconsistent behaviour by the client, since it(client) would +not be able to handle files of size greater than 2GB-1. + +If a RFile64 handle is received from the client then enlarging the file beyond +2GB-1 should not cause any issues since the client would be +capable of handling files of size greater than 2GB-1. + +This RFile or RFile64 will own it's RFs session so that when the sub-session (RFile or RFile64) +is closed so will the RFs session. + +@param aMsg The message received from the client +@param aFsHandleIndex The index that identifies the message slot + of a file server session (RFs) handle +@param aFileHandleIndex The index that identifies the message slot + of the sub-session (RFile or RFile64) handle of the already opened file + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. +*/ +EFSRV_EXPORT_C TInt RFile64::AdoptFromClient(const RMessage2& aMsg, TInt aFsHandleIndex, TInt aFileHandleIndex) + { + TInt fileHandle = NULL; + + TInt r = KErrNone; + if (aFileHandleIndex == 0) + fileHandle = aMsg.Int0(); + else if (aFileHandleIndex == 1) + fileHandle = aMsg.Int1(); + else if (aFileHandleIndex == 2) + fileHandle = aMsg.Int2(); + else if (aFileHandleIndex == 3) + fileHandle = aMsg.Int3(); + else + r = KErrArgument; + +#ifdef SYMBIAN_FTRACE_ENABLE + TInt handle = NULL; + if (aFsHandleIndex == 0) + handle = aMsg.Int0(); + else if (aFsHandleIndex == 1) + handle = aMsg.Int1(); + else if (aFsHandleIndex == 2) + handle = aMsg.Int2(); + else if (aFsHandleIndex == 3) + handle = aMsg.Int3(); + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromClient, MODULEUID, handle, fileHandle, aFsHandleIndex, aFileHandleIndex); +#endif + + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromClientReturn, MODULEUID, r); + return r; + } + + // Duplicates the file server (RFs) session handle identified by an + // existing handle contained in the message slot at index aFsHandleIndex + RFs fs; + r = fs.Open(aMsg, aFsHandleIndex, KFileServerPolicy); + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromClientReturn, MODULEUID, r); + return r; + } + + //return CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(fileHandle)); + // Slot 1: Indicate Large File Supportis required. + r = CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(fileHandle, KFileAdopt64)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromClientReturn, MODULEUID, r, Session().Handle(), SubSessionHandle()); + + return r; + } + + +/** +Allows a client to adopt an already open file from a server. + +Assumes that the server's RFs and RFile or RFile64 handles have been sent to the +client using TransferToClient(). + +This is equivalent to calling RFile::AdoptFromServer +except that the file adopted can be enlarged to sizes beyond 2GB-1. + +Note: +If a RFile handle is received from the server then enlarging the file beyond +2GB-1 might result in inconsistent behaviour by the server, since it(server) would +not be able to handle files of size greater than 2GB-1. + +If a RFile64 handle is received from the server then enlarging the file beyond +2GB-1 should not cause any issues since the server would be capable of +handling files of size greater than 2GB-1. + +This RFile or RFile64 will own it's RFs session so that when the sub-session (RFile or RFile64) +is closed so will the RFs session. + +@param aFsHandle The file server session (RFs) handle +@param aFileHandle The file (RFile or RFile64) handle of the already opened file + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. +*/ +EFSRV_EXPORT_C TInt RFile64::AdoptFromServer(TInt aFsHandle, TInt aFileHandle) + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromServer, MODULEUID, aFsHandle, aFileHandle); + + RFs fs; + TInt r = fs.SetReturnedHandle(aFsHandle, KFileServerPolicy); + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromServerReturn, MODULEUID, r); + return r; + } + + //return(CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(aFileHandle))); + // Slot 1: Indicate Large File Supportis required. + r = CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(aFileHandle, KFileAdopt64)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromServerReturn, MODULEUID, r, Session().Handle(), SubSessionHandle()); + + return r; + } + + +/** +Allows a server to adopt an already open file from a client process. +The client's file-server (RFs) and file (RFile or RFile64) handles are contained in +this process's environment data slots. + +Assumes that the client's RFs and RFile or RFile64 handles have been sent to the server process +using TransferToProcess(). + +This is equivalent to calling RFile::AdoptFromCreator +except that the file adopted can be enlarged to sizes beyond 2GB-1. + +Note: +If a RFile handle is received from the client then enlarging the file beyond +2GB-1 might result in inconsistent behaviour by the client, since it(client) would +not be able to handle files of size greater than 2GB-1. + +If a RFile64 handle is received from the client then enlarging the file beyond +2GB-1 should not cause any issues since the client would be capable of +handling files of size greater than 2GB-1. + +This RFile or RFile64 will own it's RFs session so that when the sub-session (RFile or RFile64) +is closed so will the RFs session. + +@param aFsHandleIndex An index that identifies the slot in the process + environment data that contains the file server session (RFs) handle +@param aFileHandleIndex An index that identifies the slot in the process + environment data that contains the sub-session (RFile or RFile64) handle + of the already opened file + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. +*/ +EFSRV_EXPORT_C TInt RFile64::AdoptFromCreator(TInt aFsHandleIndex, TInt aFileHandleIndex) + { + TInt fileHandle; + TInt r = User::GetTIntParameter(aFileHandleIndex, fileHandle); + + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromCreator, MODULEUID, fileHandle, aFsHandleIndex, aFileHandleIndex); + + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromCreatorReturn, MODULEUID, r); + return r; + } + + + // Duplicates the file server (RFs) session handle identified by an + // existing handle contained in the environment slot at index aFsHandleIndex + RFs fs; + r = fs.Open(aFsHandleIndex, KFileServerPolicy); + if (r != KErrNone) + { + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromCreatorReturn, MODULEUID, r); + return r; + } + + //return(CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(fileHandle))); + // Slot 1: Indicate Large File Supportis required. + r = CreateAutoCloseSubSession(fs, EFsFileAdopt, TIpcArgs(fileHandle, KFileAdopt64)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileAdoptFromCreatorReturn, MODULEUID, r, Session().Handle(), SubSessionHandle()); + + return r; + } + + +/** +Reads from the file at the specified offset within the file + +This is a synchronous function. + +This is equivalent to calling RFile::Read(TInt, TDes8&) except that this function +accepts TInt64, instead of TInt, as its first parameter. This allows to specify +the read position beyond 2GB-1. + +@see RFile::Read(TInt aPos, TDes8& aDes) + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, reading + begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing content + is overwritten. On return, its length is set to the number of + bytes read. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ +EFSRV_EXPORT_C TInt RFile64::Read(TInt64 aPos, TDes8& aDes) const + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileRead3, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aPos), I64HIGH(aPos), aDes.MaxLength()); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + + TInt r; + if (!(I64HIGH(aPos+1))) + { + r = SendReceive(EFsFileRead,TIpcArgs(&aDes,aDes.MaxLength(),I64LOW(aPos))); + } + else + { + TPckgC pkPos(aPos); + r = SendReceive(EFsFileRead|KIpcArgSlot2Desc,TIpcArgs(&aDes,aDes.MaxLength(),&pkPos)); + } + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileRead3Return, MODULEUID, r, aDes.Length()); + + return r; + } + + +/** +Reads from the file at the specified offset within the file. + +This is an asynchronous function. + +This is equivalent to calling RFile::Read(TInt, TDes8&, TRequestStatus&) except +that this function accepts TInt64, instead of TInt, as its first parameter. +This allows to specify the read position beyond 2GB-1. + +@see RFile::Read(TInt aPos, TDes8& aDes, TRequestStatus& aStatus) + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + content is overwritten. On return, its length is set to + the number of bytes read. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aStatus The request status. On completion, contains an error code of KErrNone + if successful, otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ +EFSRV_EXPORT_C void RFile64::Read(TInt64 aPos, TDes8& aDes, TRequestStatus& aStatus) const + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileRead4, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aPos), I64HIGH(aPos), aDes.MaxLength(), &aStatus); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + if (!(I64HIGH(aPos+1))) + { + RSubSessionBase::SendReceive(EFsFileRead,TIpcArgs(&aDes,aDes.MaxLength(),I64LOW(aPos)),aStatus); + } + else + { + TPckgC pkPos(aPos); + RSubSessionBase::SendReceive(EFsFileRead|KIpcArgSlot2Desc,TIpcArgs(&aDes,aDes.MaxLength(),&pkPos),aStatus); + } + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileRead4Return, MODULEUID); + } + + +/** +Reads the specified number of bytes of binary data from the file at a specified +offset within the file. + +This is a synchronous function. + +This is equivalent to calling RFile::Read(TInt, TDes8&, TInt) except +that this function accepts TInt64, instead of TInt, as its first parameter. +This allows to specify the read position beyond 2GB-1. + +@see RFile::Read(TInt aPos, TDes8& aDes, TInt aLength) + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. +Assuming aLength is less than the maximum length of the descriptor, the only +circumstances in which Read() can return fewer bytes than requested is when +the end of file is reached or if an error has occurred. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + contents are overwritten. On return, its length is set to + the number of bytes read. +@param aLength The number of bytes to read from the file into the descriptor. + If an attempt is made to read more bytes than the descriptor's + maximum length, then the function updates aStatus parameter with KErrOverflow. + It must not be negative otherwise the function updates aStatus with KErrArgument. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ +EFSRV_EXPORT_C TInt RFile64::Read(TInt64 aPos, TDes8& aDes, TInt aLength) const + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileRead3, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aPos), I64HIGH(aPos), aLength); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + if (aLength==0) + { + aDes.Zero(); + return(KErrNone); + } + else if(aLength>aDes.MaxLength()) + { + return(KErrOverflow); + } + + TInt r; + if (!(I64HIGH(aPos+1))) + { + r = SendReceive(EFsFileRead,TIpcArgs(&aDes,aLength,I64LOW(aPos))); + } + else + { + TPckgC pkPos(aPos); + r = SendReceive(EFsFileRead|KIpcArgSlot2Desc,TIpcArgs(&aDes,aLength,&pkPos)); + } + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileRead3Return, MODULEUID, r, aDes.Length()); + + return r; + } + + +/** +Reads the specified number of bytes of binary data from the file at a specified +offset within the file. + +This is an asynchronous function. + +This is equivalent to calling RFile::Read(TInt, TDes8&, TInt, TRequestStatus&) except +that this function accepts TInt64, instead of TInt, as its first parameter. +This allows to specify the read position beyond 2GB-1. + +@see RFile::Read(TInt aPos, TDes8& aDes,TInt aLength,TRequestStatus& aStatus) + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. +Assuming aLength is less than the maximum length of the descriptor, the only +circumstances in which Read() can return fewer bytes than requested is when +the end of file is reached or if an error has occurred. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + contents are overwritten. On return, its length is set to + the number of bytes read. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aLength The number of bytes to read from the file into the descriptor. + If an attempt is made to read more bytes than the descriptor's + maximum length, then the function returns KErrOverflow. + It must not be negative otherwise the function returns KErrArgument. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ +EFSRV_EXPORT_C void RFile64::Read(TInt64 aPos, TDes8& aDes, TInt aLength,TRequestStatus& aStatus) const + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileRead4, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aPos), I64HIGH(aPos), aLength, &aStatus); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + if (aLength==0) + { + aDes.Zero(); + TRequestStatus* req=(&aStatus); + User::RequestComplete(req,KErrNone); + return; + } + else if(aLength>aDes.MaxLength()) + { + TRequestStatus* req=(&aStatus); + User::RequestComplete(req,KErrOverflow); + return; + } + + if (!(I64HIGH(aPos+1))) + { + RSubSessionBase::SendReceive(EFsFileRead,TIpcArgs(&aDes,aLength,I64LOW(aPos)),aStatus); + } + else + { + TPckgC pkPos(aPos); + RSubSessionBase::SendReceive(EFsFileRead|KIpcArgSlot2Desc,TIpcArgs(&aDes,aLength,&pkPos),aStatus); + } + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileRead4Return, MODULEUID); + } + + +/** +Writes to the file at the specified offset within the file + +This is a synchronous function. + +This is equivalent to calling RFile::Write(TInt, TDes8&) except +that this function accepts TInt64, instead of TInt, as its first parameter. +This allows to specify the write position beyond 2GB-1. + +@see RFile::Write(TInt aPos, TDes8& aDes) + + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. The function writes + the entire contents of aDes to the file. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ +EFSRV_EXPORT_C TInt RFile64::Write(TInt64 aPos, const TDesC8& aDes) + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileWrite3, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aPos), I64HIGH(aPos), aDes.Length()); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + + TInt r; + if (!(I64HIGH(aPos+1))) + { + r = SendReceive(EFsFileWrite,TIpcArgs(&aDes,aDes.Length(),I64LOW(aPos))); + } + else + { + TPckgC pkPos(aPos); + r = SendReceive(EFsFileWrite|KIpcArgSlot2Desc,TIpcArgs(&aDes,aDes.Length(),&pkPos)); + } + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileWrite3Return, MODULEUID, r); + return r; + } + + +/** +Writes to the file at the specified offset within the file + +This is an asynchronous function. + +This is equivalent to calling RFile::Write(TInt, TDes8&, TRequestStatus&) except +that this function accepts TInt64, instead of TInt, as its first parameter. +This allows to specify the write position beyond 2GB-1. + +@see RFile::Write(TInt aPos, TDes8& aDes, TRequestStatus& aStatus) + + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. The function + writes the entire contents of aDes to the file. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ +EFSRV_EXPORT_C void RFile64::Write(TInt64 aPos, const TDesC8& aDes,TRequestStatus& aStatus) + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileWrite4, MODULEUID, Session().Handle(), SubSessionHandle(), aDes.Length(), &aStatus); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + + if (!(I64HIGH(aPos+1))) + { + RSubSessionBase::SendReceive(EFsFileWrite,TIpcArgs(&aDes,aDes.Length(),I64LOW(aPos)),aStatus); + } + else + { + TPckgC pkPos(aPos); + RSubSessionBase::SendReceive(EFsFileWrite|KIpcArgSlot2Desc,TIpcArgs(&aDes,aDes.Length(),&pkPos),aStatus); + } + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileWrite4Return, MODULEUID); + } + + +/** +Writes the specified number of bytes to the file at the specified offset within the file. + +This is a synchronous function. + +This is equivalent to calling RFile::Write(TInt, TDes8&, TInt) except +that this function accepts TInt64, instead of TInt, as its first parameter. +This allows to specify the write position beyond 2GB-1. + +@see RFile::Write(TInt aPos, TDes8& aDes, TInt aLength) + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. +@param aLength The number of bytes to be written from aDes . + It must not be negative. + +@return KErrNone if successful; KErrArgument if aLength is negative; + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ +EFSRV_EXPORT_C TInt RFile64::Write(TInt64 aPos, const TDesC8& aDes,TInt aLength) + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1, MODULEUID, Session().Handle(), SubSessionHandle(), aLength); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + + TInt r; + if (!(I64HIGH(aPos+1))) + { + r = SendReceive(EFsFileWrite,TIpcArgs(&aDes,aLength,I64LOW(aPos))); + } + else + { + TPckgC pkPos(aPos); + r = SendReceive(EFsFileWrite|KIpcArgSlot2Desc,TIpcArgs(&aDes,aLength,&pkPos)); + } + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1Return, MODULEUID, r); + return r; + } + + +/** +Writes the specified number of bytes to the file at the specified offset within the file. + +This is an asynchronous function. + +This is equivalent to calling RFile::Write(TInt, TDes8&, TInt, TRequestStatus&) except +that this function accepts TInt64, instead of TInt, as its first parameter. +This allows to specify the write position beyond 2GB-1. + +@see RFile::Write(TInt aPos, TDes8& aDes, TInt aLength, TRequestStatus &aStatus) + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aLength The number of bytes to be written from aDes. + It must not be negative. + +@param aStatus Request status. On completion contains KErrNone if successful; + KErrArgument if aLength is negative; + otherwise one of the other system-wide error codes. + +@panic FSCLIENT 19 if aPos is negative. +*/ +EFSRV_EXPORT_C void RFile64::Write(TInt64 aPos, const TDesC8& aDes,TInt aLength,TRequestStatus& aStatus) + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aPos), I64HIGH(aPos), aLength, &aStatus); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + + if (!(I64HIGH(aPos+1))) + { + RSubSessionBase::SendReceive(EFsFileWrite,TIpcArgs(&aDes,aLength,I64LOW(aPos)),aStatus); + } + else + { + TPckgC pkPos(aPos); + RSubSessionBase::SendReceive(EFsFileWrite|KIpcArgSlot2Desc,TIpcArgs(&aDes,aLength,&pkPos),aStatus); + } + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2Return, MODULEUID); + } + + +/** +Sets the the current file position. + +The function can also be used to get the current file +position without changing it. The file position is the position at which +reading and writing takes place. The start of the file is position zero. + +To retrieve the current file position without changing it, specify ESeekCurrent +for the seek mode, and zero for the offset. + +This is equivalent to calling RFile::Seek except that this function accepts +a reference to TInt64, instead of TInt, as its second parameter. +This allows to seek to positions beyond 2GB-1. + +@see RFile::Seek() + +If the seek mode is ESeekStart, then: + +1. the function does not modify the aPos argument, + +2. the function returns an error if the offset specified is negative. + +If the seek mode is ESeekAddress, an error is returned if: + +1. the file is not in ROM, + +2. the offset specified is greater than the size of the file. + +@param aMode Seek mode. Controls the destination of the seek operation. +@param aPos Offset from location specified in aMode. Can be negative. + On return contains the new file position. + If the seek mode is either ESeekCurrent or ESeekEnd and the offset + specifies a position before the start of the file + or beyond the end of the file, then on return, aPos is set to + the new file position (either the start or the end of the file). + If the seek mode is ESeekAddress, aPos returns the address of + the byte at the specified offset within the file. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ +EFSRV_EXPORT_C TInt RFile64::Seek(TSeek aMode, TInt64& aPos) const + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileSeek, MODULEUID, Session().Handle(), SubSessionHandle(), aMode, aPos, 0); + + TPckgC pkOffset(aPos); + TPckg pkNewPos(aPos); + TInt r = SendReceive(EFsFileSeek|KIpcArgSlot0Desc|KIpcArgSlot2Desc,TIpcArgs(&pkOffset,aMode,&pkNewPos)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileSeekReturn, MODULEUID, r); + return r; + } + + +/** +Gets the current file size. + +This is equivalent to calling RFile::Size except that this function accepts +a reference to TInt64, instead of TInt, as its first parameter. +This allows to query file sizes, which are greater than 2GB-1 + +@see RFile::Size() + + +@param aSize On return, the size of the file in bytes. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. +*/ +EFSRV_EXPORT_C TInt RFile64::Size(TInt64& aSize) const + { + TRACE2(UTF::EBorder, UTraceModuleEfsrv::EFileSize2, MODULEUID, Session().Handle(), SubSessionHandle()); + + TPckg pkSize(aSize); + TInt r = SendReceive(EFsFileSize|KIpcArgSlot0Desc,TIpcArgs(&pkSize)); + + TRACERET3(UTF::EBorder, UTraceModuleEfsrv::EFileSize2Return, MODULEUID, r, I64LOW(aSize), I64HIGH(aSize)); + return r; + } + + +/** +Sets the file size. + +If the size of the file is reduced, data may be lost from +the end of the file. + +This is equivalent to calling RFile::SetSize except that this function accepts +a reference to TInt64, instead of TInt, as its first parameter. +This allows to set file sizes to greater than 2GB-1 + +@see RFile::SetSize() + + +Note: + +1. The current file position remains unchanged unless SetSize() reduces the size + of the file in such a way that the current file position is now beyond + the end of the file. In this case, the current file position is set to + the end of file. + +2. If the file was not opened for writing, an error is returned. + +@param aSize The new size of the file, in bytes. This value must not be negative, otherwise the function raises a panic. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 20 If aSize is negative. +*/ +EFSRV_EXPORT_C TInt RFile64::SetSize(TInt64 aSize) + { + TRACE4(UTF::EBorder, UTraceModuleEfsrv::EFileSetSize, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aSize), I64HIGH(aSize)); + + TPckgC pkSize(aSize); + TInt r = SendReceive(EFsFileSetSize|KIpcArgSlot0Desc, TIpcArgs(&pkSize)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileSetSizeReturn, MODULEUID, r); + return r; + } + + +/** +Locks a region within the file as defined by a range of bytes. + +This ensures that those bytes are accessible +only through the RFile object which claims the lock. To re-allow access by +other programs to the locked region, it must either be unlocked or the file +closed. Locking can be used to synchronize operations on a file when more +than one program has access to the file in EFileShareAny mode. + +More than one distinct region of a file can be locked, but an error is returned +if more than one lock is placed on the same region. Different RFile objects +can lock different parts of the same file as long as the file is opened in +EFileShareAny mode. The locked region may extend beyond the end of a file; +this prevents the file from being extended by other programs. + +This is equivalent to calling RFile::Lock except that this function accepts +TInt64 parameters instead of TInt parameters. +This allows to to lock positions in file beyond 2GB-1. + +@see RFile::Lock() + +@param aPos Position in file from which to lock; this is the offset from + the beginning of the file. +@param aLength Number of bytes to lock. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 17 if aLength is not greater than zero, +*/ +EFSRV_EXPORT_C TInt RFile64::Lock(TInt64 aPos, TInt64 aLength) const + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileLock, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aPos), I64HIGH(aPos), aLength); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + TPckgC pkPos(aPos); + TPckgC pkLength(aLength); + + TInt r; + + if(aPos <= KMaxTInt && aLength <= KMaxTInt) + r = SendReceive(EFsFileLock,TIpcArgs(I64LOW(aPos), I64LOW(aLength))); + else if(aPos <= KMaxTInt) + r = SendReceive(EFsFileLock|KIpcArgSlot1Desc,TIpcArgs(I64LOW(aPos), &pkLength)); + else if(aLength <= KMaxTInt) + r = SendReceive(EFsFileLock|KIpcArgSlot0Desc,TIpcArgs(&pkPos, I64LOW(aLength))); + else + r = SendReceive(EFsFileLock|KIpcArgSlot0Desc|KIpcArgSlot1Desc,TIpcArgs(&pkPos, &pkLength)); + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileLockReturn, MODULEUID, r); + return r; + } + + +/** +Unlocks a region within the file as defined by a range of bytes. + +A lock can only be removed by the RFile object which claimed the lock. + +A portion of a locked region cannot be unlocked. The entire locked region +must be unlocked otherwise an error is returned. If any byte within +the specified range of bytes to unlock is not locked, an error is returned. + +This is equivalent to calling RFile::UnLock except that this function accepts +TInt64 parameters instead of TInt parameters. +This allows to to unlock positions in file beyond 2GB-1. + +@see RFile::UnLock() + +@param aPos Position in file from which to unlock; this is the offset from + the beginning of the file. +@param aLength Number of bytes to unlock. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +@panic FSCLIENT 18 if aLength is not greater than zero, +*/ +EFSRV_EXPORT_C TInt RFile64::UnLock(TInt64 aPos, TInt64 aLength) const + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileUnLock, MODULEUID, Session().Handle(), SubSessionHandle(), I64LOW(aPos), I64HIGH(aPos), aLength); + + __ASSERT_ALWAYS(aPos>=0,Panic(EPosNegative)); + + TPckgC pkPos(aPos); + TPckgC pkLength(aLength); + + TInt r; + + if(aPos <= KMaxTInt && aLength <= KMaxTInt) + r = SendReceive(EFsFileUnLock,TIpcArgs(I64LOW(aPos), I64LOW(aLength))); + else if(aPos <= KMaxTInt) + r = SendReceive(EFsFileUnLock|KIpcArgSlot1Desc,TIpcArgs(I64LOW(aPos), &pkLength)); + else if(aLength <= KMaxTInt) + r = SendReceive(EFsFileUnLock|KIpcArgSlot0Desc,TIpcArgs(&pkPos, I64LOW(aLength))); + else + r = SendReceive(EFsFileUnLock|KIpcArgSlot0Desc|KIpcArgSlot1Desc,TIpcArgs(&pkPos, &pkLength)); + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileUnLockReturn, MODULEUID, r); + return r; + } + + +/** +Reads from the file at the specified offset within the file + +This is a synchronous function. + +This is equivalent to calling RFile::Read(TInt, TDes8&) or RFile64::Read(TInt64, TDes8&) +except that this function accepts TUint, instead of TInt or TInt64, as its first parameter. + +This function is provided for gradual migration of a client from 32-bit RFile APIs +to 64-bit RFile64 APIs. It is protected under _F32_STRICT_64_BIT_MIGRATION +macro. If the macro is defined, then it hides this overload, which would then throw +compile-time errors for any user code that uses TUint parameter for RFile64::Read. + + +@see RFile::Read(TInt aPos, TDes8& aDes) +@see RFile64::Read(TInt aPos, TDes8& aDes) + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, reading + begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing content + is overwritten. On return, its length is set to the number of + bytes read. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +*/ +EFSRV_EXPORT_C TInt RFile64::Read(TUint aPos,TDes8& aDes) const + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileRead3, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aDes.MaxLength()); + + TInt r; + if(!(aPos + 1)) + { + r = SendReceive(EFsFileRead,TIpcArgs(&aDes,aDes.MaxLength(),aPos)); + } + else + { + TInt64 pos = aPos; + TPckgC pkPos(pos); + r = SendReceive(EFsFileRead|KIpcArgSlot2Desc,TIpcArgs(&aDes,aDes.MaxLength(),&pkPos)); + } + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileRead3Return, MODULEUID, r, aDes.Length()); + + return r; + } + + +/** +Reads from the file at the specified offset within the file. + +This is an asynchronous function. + +This is equivalent to calling RFile::Read(TInt, TDes8&, TRequestStatus&) or +RFile64::Read(TInt64, TDes8&, TRequestStatus&) except that this function +accepts TUint, instead of TInt or TInt64, as its first parameter. + +This function is provided for gradual migration of a client from 32-bit RFile APIs +to 64-bit RFile64 APIs. It is protected under _F32_STRICT_64_BIT_MIGRATION +macro. If the macro is defined, then it hides this overload, which would then throw +compile-time errors for any user code that uses TUint parameter for RFile64::Read. + +@see RFile::Read(TInt aPos, TDes8& aDes, TRequestStatus& aStatus) +@see RFile64::Read(TInt aPos, TDes8& aDes, TRequestStatus& aStatus) + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + content is overwritten. On return, its length is set to + the number of bytes read. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aStatus The request status. On completion, contains an error code of KErrNone + if successful, otherwise one of the other system-wide error codes. + +*/ +EFSRV_EXPORT_C void RFile64::Read(TUint aPos,TDes8& aDes,TRequestStatus& aStatus) const + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileRead4, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aDes.MaxLength(), &aStatus); + + if(!(aPos + 1)) + { + RSubSessionBase::SendReceive(EFsFileRead,TIpcArgs(&aDes,aDes.MaxLength(),aPos),aStatus); + } + else + { + TInt64 pos = aPos; + TPckgC pkPos(pos); + RSubSessionBase::SendReceive(EFsFileRead|KIpcArgSlot2Desc,TIpcArgs(&aDes,aDes.MaxLength(),&pkPos),aStatus); + } + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileRead4Return, MODULEUID); + } + + +/** +Reads the specified number of bytes of binary data from the file at a specified +offset within the file. + +This is a synchronous function. + +This is equivalent to calling RFile::Read(TInt, TDes8&, TInt) or +RFile64::Read(TInt64, TDes8&, TInt) except that this function +accepts TUint, instead of TInt or TInt64, as its first parameter. + +This function is provided for gradual migration of a client from 32-bit RFile APIs +to 64-bit RFile64 APIs. It is protected under _F32_STRICT_64_BIT_MIGRATION +macro. If the macro is defined, then it hides this overload, which would then throw +compile-time errors for any user code that uses TUint parameter for RFile64::Read. + + +@see RFile::Read(TInt aPos, TDes8& aDes,TInt aLength) +@see RFile64::Read(TInt aPos, TDes8& aDes,TInt aLength) + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. +Assuming aLength is less than the maximum length of the descriptor, the only +circumstances in which Read() can return fewer bytes than requested is when +the end of file is reached or if an error has occurred. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + contents are overwritten. On return, its length is set to + the number of bytes read. +@param aLength The number of bytes to read from the file into the descriptor. + If an attempt is made to read more bytes than the descriptor's + maximum length, then the function updates aStatus parameter with KErrOverflow. + It must not be negative otherwise the function updates aStatus with KErrArgument. + +@return KErrNone if successful, otherwise one of the other system-wide + error codes. + +*/ +EFSRV_EXPORT_C TInt RFile64::Read(TUint aPos,TDes8& aDes,TInt aLength) const + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileRead3, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aLength); + + if (aLength==0) + { + aDes.Zero(); + return(KErrNone); + } + else if(aLength>aDes.MaxLength()) + { + return(KErrOverflow); + } + + TInt r; + if(!(aPos + 1)) + { + r = SendReceive(EFsFileRead,TIpcArgs(&aDes,aLength,aPos)); + } + else + { + TInt64 pos = aPos; + TPckgC pkPos(pos); + r = SendReceive(EFsFileRead|KIpcArgSlot2Desc,TIpcArgs(&aDes,aLength,&pkPos)); + } + + TRACERET2(UTF::EBorder, UTraceModuleEfsrv::EFileRead3Return, MODULEUID, r, aDes.Length()); + + return r; + } + + +/** +Reads the specified number of bytes of binary data from the file at a specified +offset within the file. + +This is an asynchronous function. + +This is equivalent to calling RFile::Read(TInt, TDes8&, TInt,TRequestStatus&) or +RFile64::Read(TInt64, TDes8&, TInt, TRequestStatus&) except that this function +accepts TUint, instead of TInt or TInt64, as its first parameter. + +This function is provided for gradual migration of a client from 32-bit RFile APIs +to 64-bit RFile64 APIs. It is protected under _F32_STRICT_64_BIT_MIGRATION +macro. If the macro is defined, then it hides this overload, which would then throw +compile-time errors for any user code that uses TUint parameter for RFile64::Read. + + +@see RFile::Read(TInt aPos, TDes8& aDes,TInt aLength,TRequestStatus& aStatus) +@see RFile64::Read(TInt aPos, TDes8& aDes,TInt aLength,TRequestStatus& aStatus) + +Note that when an attempt is made to read beyond the end of the file, +no error is returned. +The descriptor's length is set to the number of bytes read into it. +Therefore, when reading through a file, the end of file has been reached +when the descriptor length, as returned by TDesC8::Length(), is zero. +Assuming aLength is less than the maximum length of the descriptor, the only +circumstances in which Read() can return fewer bytes than requested is when +the end of file is reached or if an error has occurred. + +@param aPos Position of first byte to be read. This is an offset from + the start of the file. If no position is specified, + reading begins at the current file position. + If aPos is beyond the end of the file, the function returns + a zero length descriptor. + +@param aDes The descriptor into which binary data is read. Any existing + contents are overwritten. On return, its length is set to + the number of bytes read. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aLength The number of bytes to read from the file into the descriptor. + If an attempt is made to read more bytes than the descriptor's + maximum length, then the function returns KErrOverflow. + It must not be negative otherwise the function returns KErrArgument. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. + +*/ +EFSRV_EXPORT_C void RFile64::Read(TUint aPos,TDes8& aDes,TInt aLength,TRequestStatus& aStatus) const + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileRead4, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aLength, &aStatus); + + if (aLength==0) + { + aDes.Zero(); + TRequestStatus* req=(&aStatus); + User::RequestComplete(req,KErrNone); + return; + } + else if(aLength>aDes.MaxLength()) + { + TRequestStatus* req=(&aStatus); + User::RequestComplete(req,KErrOverflow); + return; + } + + if(!(aPos + 1)) + { + RSubSessionBase::SendReceive(EFsFileRead,TIpcArgs(&aDes,aLength,aPos),aStatus); + } + else + { + TInt64 pos = aPos; + TPckgC pkPos(pos); + RSubSessionBase::SendReceive(EFsFileRead|KIpcArgSlot2Desc,TIpcArgs(&aDes,aLength,&pkPos),aStatus); + } + + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileRead4Return, MODULEUID); + } + + +/** +Writes to the file at the specified offset within the file + +This is a synchronous function. + +This is equivalent to calling RFile::Write(TInt, TDes8&) or +RFile64::Write(TInt64, TDes8&) except that this function +accepts TUint, instead of TInt or TInt64, as its first parameter. + +This function is provided for gradual migration of a client from 32-bit RFile APIs +to 64-bit RFile64 APIs. It is protected under _F32_STRICT_64_BIT_MIGRATION +macro. If the macro is defined, then it hides this overload, which would then throw +compile-time errors for any user code that uses TUint parameter for RFile64::Read. + + +@see RFile::Write(TInt aPos, TDes8& aDes) +@see RFile64::Write(TInt aPos, TDes8& aDes) + + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. The function writes + the entire contents of aDes to the file. + +@return KErrNone if successful, otherwise one of the other system-wide error + codes. + +*/ +EFSRV_EXPORT_C TInt RFile64::Write(TUint aPos,const TDesC8& aDes) + { + TRACE5(UTF::EBorder, UTraceModuleEfsrv::EFileWrite3, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aDes.Length()); + + TInt r; + if(!(aPos + 1)) + { + r = SendReceive(EFsFileWrite,TIpcArgs(&aDes,aDes.Length(),aPos)); + } + else + { + TInt64 pos = aPos; + TPckgC pkPos(pos); + r = SendReceive(EFsFileWrite|KIpcArgSlot2Desc,TIpcArgs(&aDes,aDes.Length(),&pkPos)); + } + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileWrite3Return, MODULEUID, r); + return r; + } + + +/** +Writes to the file at the specified offset within the file + +This is an asynchronous function. + +This is equivalent to calling RFile::Write(TInt, TDes8&,TRequestStatus&) or +RFile64::Write(TInt64, TDes8&,TRequestStatus&) except that this function +accepts TUint, instead of TInt or TInt64, as its first parameter. + +This function is provided for gradual migration of a client from 32-bit RFile APIs +to 64-bit RFile64 APIs. It is protected under _F32_STRICT_64_BIT_MIGRATION +macro. If the macro is defined, then it hides this overload, which would then throw +compile-time errors for any user code that uses TUint parameter for RFile64::Read. + + +@see RFile::Write(TInt aPos, TDes8& aDes,TRequestStatus& aStatus) +@see RFile64::Write(TInt aPos, TDes8& aDes,TRequestStatus& aStatus) + + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. The function + writes the entire contents of aDes to the file. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aStatus Request status. On completion contains KErrNone if successful, + otherwise one of the other system-wide error codes. + +*/ +EFSRV_EXPORT_C void RFile64::Write(TUint aPos,const TDesC8& aDes,TRequestStatus& aStatus) + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileWrite4, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aDes.Length(), &aStatus); + + if(!(aPos + 1)) + { + RSubSessionBase::SendReceive(EFsFileWrite,TIpcArgs(&aDes,aDes.Length(),aPos),aStatus); + } + else + { + TInt64 pos = aPos; + TPckgC pkPos(pos); + RSubSessionBase::SendReceive(EFsFileWrite|KIpcArgSlot2Desc,TIpcArgs(&aDes,aDes.Length(),&pkPos),aStatus); + } + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileWrite4Return, MODULEUID); + } + + +/** +Writes the specified number of bytes to the file at the specified offset within the file. + +This is a synchronous function. + +This is equivalent to calling RFile::Write(TInt, TDes8&,TInt) or +RFile64::Write(TInt64, TDes8&,TInt) except that this function +accepts TUint, instead of TInt or TInt64, as its first parameter. + +This function is provided for gradual migration of a client from 32-bit RFile APIs +to 64-bit RFile64 APIs. It is protected under _F32_STRICT_64_BIT_MIGRATION +macro. If the macro is defined, then it hides this overload, which would then throw +compile-time errors for any user code that uses TUint parameter for RFile64::Read. + + +@see RFile::Write(TInt aPos, TDes8& aDes,TInt aLength) +@see RFile64::Write(TInt aPos, TDes8& aDes,TInt aLength) + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. +@param aLength The number of bytes to be written from aDes . + It must not be negative. + +@return KErrNone if successful; KErrArgument if aLength is negative; + otherwise one of the other system-wide error codes. + +*/ +EFSRV_EXPORT_C TInt RFile64::Write(TUint aPos,const TDesC8& aDes,TInt aLength) + { + TRACE3(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1, MODULEUID, Session().Handle(), SubSessionHandle(), aLength); + + TInt r; + if(!(aPos + 1)) + { + r = SendReceive(EFsFileWrite,TIpcArgs(&aDes,aLength,aPos)); + } + else + { + TInt64 pos = aPos; + TPckgC pkPos(pos); + r = SendReceive(EFsFileWrite|KIpcArgSlot2Desc,TIpcArgs(&aDes,aLength,&pkPos)); + } + + TRACERET1(UTF::EBorder, UTraceModuleEfsrv::EFileWrite1Return, MODULEUID, r); + return r; + } + + +/** +Writes the specified number of bytes to the file at the specified offset within the file. + +This is an asynchronous function. + +This is equivalent to calling RFile::Write(TInt, TDes8&,TInt,TRequestStatus&) or +RFile64::Write(TInt64, TDes8&,TInt,TRequestStatus&) except that this function +accepts TUint, instead of TInt or TInt64, as its first parameter. + +This function is provided for gradual migration of a client from 32-bit RFile APIs +to 64-bit RFile64 APIs. It is protected under _F32_STRICT_64_BIT_MIGRATION +macro. If the macro is defined, then it hides this overload, which would then throw +compile-time errors for any user code that uses TUint parameter for RFile64::Read. + + +@see RFile::Write(TInt aPos, TDes8& aDes, TInt aLength, TRequestStatus& aStatus) +@see RFile64::Write(TInt aPos, TDes8& aDes,TInt aLength, TRequestStatus& aStatus) + + +@param aPos The offset from the start of the file at which the first + byte is written. + If a position beyond the end of the file is specified, then + the write operation begins at the end of the file. + If the position has been locked, then the write fails. + +@param aDes The descriptor from which binary data is written. + NB: this function is asynchronous and the request that it + represents may not complete until some time after the call + to the function has returned. It is important, therefore, that + this descriptor remain valid, or remain in scope, until you have + been notified that the request is complete. + +@param aLength The number of bytes to be written from aDes. + It must not be negative. + +@param aStatus Request status. On completion contains KErrNone if successful; + KErrArgument if aLength is negative; + otherwise one of the other system-wide error codes. + +*/ +EFSRV_EXPORT_C void RFile64::Write(TUint aPos,const TDesC8& aDes,TInt aLength,TRequestStatus& aStatus) + { + TRACE6(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2, MODULEUID, Session().Handle(), SubSessionHandle(), aPos, 0, aLength, &aStatus); + + if(!(aPos + 1)) + { + RSubSessionBase::SendReceive(EFsFileWrite,TIpcArgs(&aDes,aLength,aPos),aStatus); + } + else + { + TInt64 pos = aPos; + TPckgC pkPos(pos); + RSubSessionBase::SendReceive(EFsFileWrite|KIpcArgSlot2Desc,TIpcArgs(&aDes,aLength,&pkPos),aStatus); + } + TRACE0(UTF::EBorder, UTraceModuleEfsrv::EFileWrite2Return, MODULEUID); + } +#else +EFSRV_EXPORT_C TInt RFile64::Open(RFs& /*aFs*/,const TDesC& /*aName*/,TUint /*aFileMode*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::Create(RFs& /*aFs*/,const TDesC& /*aName*/,TUint /*aFileMode*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::Replace(RFs& /*aFs*/,const TDesC& /*aName*/,TUint /*aFileMode*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::Temp(RFs& /*aFs*/,const TDesC& /*aPath*/,TFileName& /*aName*/,TUint /*aFileMode*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::AdoptFromClient(const RMessage2& /*aMsg*/, TInt /*aFsHandleIndex*/, TInt /*aFileHandleIndex*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::AdoptFromServer(TInt /*aFsHandle*/, TInt /*aFileHandle*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::AdoptFromCreator(TInt /*aFsHandleIndex*/, TInt /*aFileHandleIndex*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::Read(TInt64 /*aPos*/, TDes8& /*aDes*/) const + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C void RFile64::Read(TInt64 /*aPos*/, TDes8& /*aDes*/, TRequestStatus& /*aStatus*/) const + {Panic(ENotImplemented);} +EFSRV_EXPORT_C TInt RFile64::Read(TInt64 /*aPos*/, TDes8& /*aDes*/, TInt /*aLength*/) const + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C void RFile64::Read(TInt64 /*aPos*/, TDes8& /*aDes*/, TInt /*aLength*/,TRequestStatus& /*aStatus*/) const + {Panic(ENotImplemented);} +EFSRV_EXPORT_C TInt RFile64::Write(TInt64 /*aPos*/, const TDesC8& /*aDes*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C void RFile64::Write(TInt64 /*aPos*/, const TDesC8& /*aDes*/,TRequestStatus& /*aStatus*/) + {Panic(ENotImplemented);} +EFSRV_EXPORT_C TInt RFile64::Write(TInt64 /*aPos*/, const TDesC8& /*aDes*/, TInt /*aLength*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C void RFile64::Write(TInt64 /*aPos*/, const TDesC8& /*aDes*/,TInt /*aLength*/,TRequestStatus& /*aStatus*/) + {Panic(ENotImplemented);} +EFSRV_EXPORT_C TInt RFile64::Seek(TSeek /*aMode*/, TInt64& /*aPos*/) const + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::Size(TInt64& /*aSize*/) const + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::SetSize(TInt64 /*aSize*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::Lock(TInt64 /*aPos*/, TInt64 /*aLength*/) const + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::UnLock(TInt64 /*aPos*/, TInt64 /*aLength*/) const + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C TInt RFile64::Read(TUint /*aPos*/,TDes8& /*aDes*/) const + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C void RFile64::Read(TUint /*aPos*/,TDes8& /*aDes*/,TRequestStatus& /*aStatus*/) const + {Panic(ENotImplemented);} +EFSRV_EXPORT_C TInt RFile64::Read(TUint /*aPos*/,TDes8& /*aDes*/,TInt /*aLength*/) const + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C void RFile64::Read(TUint /*aPos*/,TDes8& /*aDes*/,TInt /*aLength*/,TRequestStatus& /*aStatus*/) const + {Panic(ENotImplemented);} +EFSRV_EXPORT_C TInt RFile64::Write(TUint /*aPos*/,const TDesC8& /*aDes*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C void RFile64::Write(TUint /*aPos*/,const TDesC8& /*aDes*/,TRequestStatus& /*aStatus*/) + {Panic(ENotImplemented);} +EFSRV_EXPORT_C TInt RFile64::Write(TUint /*aPos*/,const TDesC8& /*aDes*/,TInt /*aLength*/) + {Panic(ENotImplemented);return (KErrNotSupported);} +EFSRV_EXPORT_C void RFile64::Write(TUint /*aPos*/, const TDesC8& /*aDes*/,TInt /*aLength*/,TRequestStatus& /*aStatus*/) + {Panic(ENotImplemented);} +#endif diff -r 9b61d901414f -r 458d62869c00 hacks/readme.txt --- a/hacks/readme.txt Wed Oct 27 09:59:12 2010 +0100 +++ b/hacks/readme.txt Wed Oct 27 15:25:50 2010 +0100 @@ -8,3 +8,18 @@ Pressing F10 will cause Kern::Fault("KeyOfDeath", 0x0f100f10), which will drop you into the kernel crash debugger if you are using a UDEB version of ekern.exe + + +2. cl_file.cpp + +Replace K:\sf\os\kernelhwsrv\userlibandfileserver\fileserver\sfsrv\cl_file.cpp with this file +And rebuild efsrv.mmp from \sf\os\kernelhwsrv\userlibandfileserver\fileserver\group + +This will give you debug for every RFile::Open command called. + + +3. EComServer.mmp + +In order to get logging out of the EComServer.mmp it must be rebuilt with the logging macro turned on. +Replace \sf\os\ossrv\lowlevellibsandfws\pluginfw\Framework\MMPFiles\EComServer.mmp +And rebuild EComServer.mmp from K:\sf\os\ossrv\lowlevellibsandfws\pluginfw\Group \ No newline at end of file diff -r 9b61d901414f -r 458d62869c00 startup/ssmcmdlists.mmp --- a/startup/ssmcmdlists.mmp Wed Oct 27 09:59:12 2010 +0100 +++ b/startup/ssmcmdlists.mmp Wed Oct 27 15:25:50 2010 +0100 @@ -34,33 +34,12 @@ TARGETPATH /private/2000d75b/startup/0 // Private directory of sysstatemgr.exe END -START RESOURCE stem_selftestokcmdlist.rss // Selftest Ok startup state -TARGETPATH /private/2000d75b/startup/0 // Private directory of sysstatemgr.exe -END - -START RESOURCE stem_alarm_charging.rss // Command lists for alarm, charging and related startup states -TARGETPATH /private/2000d75b/startup/0 // Private directory of sysstatemgr.exe -END - -START RESOURCE stem_securitycheckcmdlist.rss // Security Check startup state -TARGETPATH /private/2000d75b/startup/0 // Private directory of sysstatemgr.exe -END - START RESOURCE stem_noncriticalcmdlist.rss // Non-critical startup state for minimal bootup TARGETPATH /private/2000d75b/startup/0 // Private directory of sysstatemgr.exe END -START RESOURCE stem_emergencycallsonlycmdlist.rss // Emergency Calls Only startup state -TARGETPATH /private/2000d75b/startup/0 // Private directory of sysstatemgr.exe -END -START RESOURCE stem_noncriticalcmdlist_ext.rss // Non-critical startup state for extended bootup -TARGETPATH /private/2000d75b/startup/0_ext // Private directory of sysstatemgr.exe -END -START RESOURCE stem_uiservicescmdlist_ext.rss // Starting UI-Services startup state for extended bootup -TARGETPATH /private/2000d75b/startup/0_ext // Private directory of sysstatemgr.exe -END // Command lists specific to HW @@ -68,19 +47,6 @@ TARGETPATH /private/2000d75b/hw // Private directory of sysstatemgr.exe END -START RESOURCE stem_usbwatcher_hw.rss // USB Watcher command list -TARGETPATH /private/2000d75b/hw // Private directory of sysstatemgr.exe -END - -START RESOURCE stem_noncriticalcmdlist_hw.rss // Non-critical startup state (HW-specific additions) -TARGETPATH /private/2000d75b/hw // Private directory of sysstatemgr.exe -END - -// Command lists for fail state - -START RESOURCE stem_failcmdlist.rss // Command list for fail state -TARGETPATH /private/2000d75b/fail // Private directory of sysstatemgr.exe -END // Command lists for shutdown states @@ -88,19 +54,6 @@ TARGETPATH /private/2000d75b/shutdown // Private directory of sysstatemgr.exe END -// Command lists for SWPs - -START RESOURCE stem_rfswpcmdlists.rss // RF status SWP -TARGETPATH /private/2000d75b/rfstatusswpcmdlist // Private directory of sysstatemgr.exe -END - -START RESOURCE stem_uiswpcmdlists.rss // UI phase SWP -TARGETPATH /private/2000d75b/swpui // Private directory of sysstatemgr.exe -END - -START RESOURCE stem_noncriticalswpcmdlists.rss // noncritical phase SWP -TARGETPATH /private/2000d75b/swpnoncritical // Private directory of sysstatemgr.exe -END OS_LAYER_SYSTEMINCLUDE diff -r 9b61d901414f -r 458d62869c00 startup/stem_alarm_charging.rss --- a/startup/stem_alarm_charging.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,560 +0,0 @@ -/* -* Copyright (c) 2009-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: -* Command list for the following startup states: -* - Alarm -* - Charging -* - Test -* - Alarm to Charging -* - Charging to Alarm -* - Alarm to Normal -* - Charging to Normal -* -*/ - -#include -#include - -#include "ssmsubstateext.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateTest; - resource_id = r_cmds_test; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateAlarm; - resource_id = r_cmds_alarm; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateCharging; - resource_id = r_cmds_charging; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateAlarmToCharging; - resource_id = r_cmds_alarm_to_charging; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateAlarmToNormal; - resource_id = r_cmds_alarm_to_normal; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateChargingToAlarm; - resource_id = r_cmds_charging_to_alarm; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateChargingToNormal; - resource_id = r_cmds_charging_to_normal; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds_alarm -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_alarm - { - commands = - { - r_cmd_sastate_alarm, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate_alarm, // prio 0xFFF0 - r_cmd_killsplash // Last command, prio 0x0000 - }; - } - -// --------------------------------------------------------------------------- -// r_cmds_alarm_to_charging -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_alarm_to_charging - { - commands = - { - r_cmd_sastate_alarmtocharging, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate_alarmtocharging // prio 0xFFF0 - }; - } - -// --------------------------------------------------------------------------- -// r_cmds_alarm_to_normal -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_alarm_to_normal - { - commands = - { - r_cmd_sastate_alarmtonormal, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate_alarmtonormal, // prio 0xFFF0 - r_cmd_splash // prio 0xFFE7 - }; - } - -// --------------------------------------------------------------------------- -// r_cmds_charging -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_charging - { - commands = - { - r_cmd_sastate_charging, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate_charging, // prio 0xFFF0 - r_cmd_locod, // prio 0xFFB7 - r_cmd_killsplash // Last command, prio 0x0000 - }; - } - - -// --------------------------------------------------------------------------- -// r_cmds_charging_to_alarm -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_charging_to_alarm - { - commands = - { - r_cmd_sastate_chargingtoalarm, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate_chargingtoalarm // prio 0xFFF0 - }; - } - - -// --------------------------------------------------------------------------- -// r_cmds_charging_to_normal -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_charging_to_normal - { - commands = - { - r_cmd_sastate_chargingtonormal, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate_chargingtonormal, // prio 0xFFF0 - r_cmd_splash // prio 0xFFE7 - }; - } - -// --------------------------------------------------------------------------- -// r_cmds_test -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_test - { - commands = - { - r_cmd_sastate_test, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate_test // prio 0xFFF0 - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_killsplash -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_killsplash - { - priority = 0x0000; - category = 0x101F8766; // KPSUidStartup - key = 0x00000301; // KPSSplashShutdown - value = 101; // ESplashShutdown - } - -// --------------------------------------------------------------------------- -// r_cmd_locod -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_locod - { - priority = 0xFFB7; - name = "z:\\sys\\bin\\locod.exe"; - execution_behaviour = ESsmFireAndForget; - monitor_info = r_mon_3_restarts_ignore; - conditional_information = r_cond_testatcommand_or_enableisicommunicationinusbchargingmode; - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_alarm -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_alarm - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 108; // ESwStateAlarm - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_alarmtocharging -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_alarmtocharging - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 112; // ESwStateAlarmToCharging - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_alarmtonormal -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_alarmtonormal - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 115; // ESwStateAlarmToNormal - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_charging -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_charging - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 107; // ESwStateCharging - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_chargingtoalarm -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_chargingtoalarm - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 113; // ESwStateChargingToAlarm - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_chargingtonormal -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_chargingtonormal - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 114; // ESwStateChargingToNormal - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_test -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_test - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 106; // ESwStateTest - } - -// --------------------------------------------------------------------------- -// r_cmd_publishstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_PUBLISH_SYSTEM_STATE r_cmd_publishstate - { - priority = 0xFFF1; - severity = ECmdCriticalSeverity; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_alarm -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_alarm - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_alarm; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_alarmtocharging -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_alarmtocharging - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_alarmtocharging; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_alarmtonormal -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_alarmtonormal - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_alarmtonormal; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_charging -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_charging - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_charging; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_chargingtoalarm -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_chargingtoalarm - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_chargingtoalarm; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_chargingtonormal -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_chargingtonormal - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_chargingtonormal; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_test -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_test - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_test; - } - -// --------------------------------------------------------------------------- -// r_cmd_splash -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_splash - { - priority = 0xFFE7; - name = "z:\\sys\\bin\\splashscreen.exe"; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_alarm -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_alarm - { - mainstate = 0; // ESsmStartup - substate = ESsmStateAlarm; - } - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_alarmtocharging -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_alarmtocharging - { - mainstate = 0; // ESsmStartup - substate = ESsmStateAlarmToCharging; - } - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_alarmtonormal -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_alarmtonormal - { - mainstate = 0; // ESsmStartup - substate = ESsmStateAlarmToNormal; - } - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_charging -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_charging - { - mainstate = 0; // ESsmStartup - substate = ESsmStateCharging; - } - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_chargingtoalarm -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_chargingtoalarm - { - mainstate = 0; // ESsmStartup - substate = ESsmStateChargingToAlarm; - } - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_chargingtonormal -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_chargingtonormal - { - mainstate = 0; // ESsmStartup - substate = ESsmStateChargingToNormal; - } - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_test -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_test - { - mainstate = 0; // ESsmStartup - substate = ESsmStateTest; - } - -// =========================================================================== -// Conditional blocks in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cond_feat_testatcommand -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_testatcommand - { - feature_id = KFeatureIdTestATCommand; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_enableisicommunicationinusbchargingmode -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_enableisicommunicationinusbchargingmode - { - feature_id = KFeatureIdEnableIsiCommunicationInUsbChargingMode; - } - -// --------------------------------------------------------------------------- -// r_cond_testatcommand_or_certtesting -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_OR r_cond_testatcommand_or_enableisicommunicationinusbchargingmode - { - lhs = r_cond_feat_testatcommand; - rhs = r_cond_feat_enableisicommunicationinusbchargingmode; - } - - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_criticalappscmdlist.rss --- a/startup/stem_criticalappscmdlist.rss Wed Oct 27 09:59:12 2010 +0100 +++ b/startup/stem_criticalappscmdlist.rss Wed Oct 27 15:25:50 2010 +0100 @@ -69,11 +69,6 @@ r_cmd_publishstate, // prio 0xFFF1 r_cmd_psstate, // prio 0xFFF0 // prio 0xFFE7 - //TomP r_cmd_selftest, - //TomP r_cmd_cfserver, - //TomP r_cmd_sysap, - //TomP r_cmd_calsrv, - //TomP r_cmd_profmon, r_cmd_menu, // TomP - moved from the Security command list // prio 0xFFE6 r_cmd_multiwaitforever @@ -94,34 +89,8 @@ priority = 0xFFE7; name = "z:\\sys\\bin\\matrixmenu.exe"; execution_behaviour = ESsmDeferredWaitForSignal; - //TomP background = 1; // To background + //TomP background = 1; // Not to background } - -// --------------------------------------------------------------------------- -// r_cmd_calsrv -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_PROCESS_INFO r_cmd_calsrv - { - priority = 0xFFE7; - name = "calensvr.exe"; - execution_behaviour = ESsmFireAndForget; - monitor_info = r_mon_100_restarts_reset; - } - -// --------------------------------------------------------------------------- -// r_cmd_cfserver -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_cfserver - { - priority = 0xFFE7; - name = "Z:\\sys\\bin\\cfserver.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - monitor_info = r_mon_100_restarts_reset; - } -*/ // --------------------------------------------------------------------------- // r_cmd_multiwaitforever @@ -132,18 +101,6 @@ priority = 0xFFE6; } -// --------------------------------------------------------------------------- -// r_cmd_profmon -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_PROCESS_INFO r_cmd_profmon - { - priority = 0xFFE7; - name = "Z:\\sys\\bin\\profilesettingsmonitor.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - } -*/ // --------------------------------------------------------------------------- // r_cmd_psstate @@ -184,37 +141,7 @@ dll_data = r_dlldata_sastate; } -// --------------------------------------------------------------------------- -// r_cmd_selftest -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_selftest - { - priority = 0xFFE7; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 2; - unload_on_finish = ENeverUnload; - retries = 2; - execution_behaviour = ESsmDeferredWaitForSignal; - } - -// --------------------------------------------------------------------------- -// r_cmd_sysap -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_sysap - { - priority = 0xFFE7; - name = "Z:\\sys\\bin\\sysap.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - severity = ECmdCriticalSeverity; - retries = 2; - background = 1; // To background - monitor_info = r_mon_reset; - } -*/ + // =========================================================================== // DLL data items in alphabetical order // =========================================================================== @@ -232,4 +159,4 @@ // monitoring.rss contains resource definitions, so it may not be included // before entry point. -#include "stem_monitoring.rss" +// #include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_emergencycallsonlycmdlist.rss --- a/startup/stem_emergencycallsonlycmdlist.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,144 +0,0 @@ -/* -* Copyright (c) 2009 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: -* Command list for the Emergency Calls Only startup state. -* -*/ - -#include -#include - -#include "ssmsubstateext.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateEmergencyCallsOnly; - resource_id = r_cmds; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds - { - commands = - { - r_cmd_sastate, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate, // prio 0xFFF0 - r_cmd_killsplash // Last command, prio 0x0000 - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_killsplash -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_killsplash - { - priority = 0x0000; - category = 0x101F8766; // KPSUidStartup - key = 0x00000301; // KPSSplashShutdown - value = 101; // ESplashShutdown - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 105; // ESwStateEmergencyCallsOnly - } - -// --------------------------------------------------------------------------- -// r_cmd_publishstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_PUBLISH_SYSTEM_STATE r_cmd_publishstate - { - priority = 0xFFF1; - severity = ECmdCriticalSeverity; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_sastate -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate - { - mainstate = 0; // ESsmStartup - substate = ESsmStateEmergencyCallsOnly; - } diff -r 9b61d901414f -r 458d62869c00 startup/stem_failcmdlist.rss --- a/startup/stem_failcmdlist.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,203 +0,0 @@ -/* -* Copyright (c) 2009 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: -* Command list for the Selftest OK startup state. -* -*/ - -#include -#include - -#include "ssmsubstateext.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateFail; - resource_id = r_cmds; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds - { - commands = - { - r_cmd_sastate, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate, // prio 0xFFF0 - r_cmd_cancelmonitoring, // prio 0xFFE8 - // prio 0xFFE7 - r_cmd_killsplash, - r_cmd_contactservice, - r_cmd_sysap, - // prio 0xFFE6 - r_cmd_multiwaitforever - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// -// --------------------------------------------------------------------------- -// r_cmd_cancelmonitoring -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_cancelmonitoring - { - priority = 0xFFE8; - dllname = "cmncustomcmds.dll"; - ordinal = 3; // Request to the sysmon server to cancel all the outstanding monitors - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_contactservice -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_contactservice - { - priority = 0xFFE7; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmDeferredWaitForSignal; - dllname = "syserrcmd.dll"; - ordinal = 1; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_killsplash -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_killsplash - { - priority = 0xFFE7; - category = 0x101F8766; // KPSUidStartup - key = 0x00000301; // KPSSplashShutdown - value = 101; // ESplashShutdown - } - -// --------------------------------------------------------------------------- -// r_cmd_multiwaitforever -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MULTIPLE_WAIT r_cmd_multiwaitforever - { - priority = 0xFFE6; - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 116; // ESWStateFatalStartupError - } - -// --------------------------------------------------------------------------- -// r_cmd_publishstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_PUBLISH_SYSTEM_STATE r_cmd_publishstate - { - priority = 0xFFF1; - severity = ECmdCriticalSeverity; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate; - } - -// --------------------------------------------------------------------------- -// r_cmd_sysap -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_sysap - { - priority = 0xFFE7; - name = "Z:\\sys\\bin\\sysap.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - severity = ECmdCriticalSeverity; - retries = 2; - background = 1; // To background - monitor_info = r_mon_reset; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_sastate -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate - { - mainstate = 3; // ESsmFail - substate = 0xFFFF; // KSsmAnySubState, saastateadapataion expects this - } - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_locod_hw.rss --- a/startup/stem_locod_hw.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,249 +0,0 @@ -/* -* Copyright (c) 2009 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: -* Command list for the Locod component -* -*/ - -#include -#include - -#include "ssmsubstateext.hrh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateCharging; - resource_id = r_cmds_charging; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateNonCritical; - resource_id = r_cmds_noncritical; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds_noncritical -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_noncritical - { - commands = - { - r_cmd_connlogger, - r_cmd_provisioning, -#ifndef SYMBIAN_EXCLUDE_SIP - r_cmd_sipprofilesrv, -#endif // defined !SYMBIAN_EXCLUDE_SIP - r_cmd_remotelock, - r_cmd_hotspotsrv - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_connlogger -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_connlogger - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\dataconnectionlogger.exe"; - execution_behaviour = ESsmFireAndForget; - monitor_info = r_mon_3_restarts_ignore; - } - - -// --------------------------------------------------------------------------- -// r_cmd_hotspotsrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_hotspotsrv - { - priority = 0xFFA7; - name = "hotspotserver.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - conditional_information = r_cond_protwlan_and_firstboot_or_deeprfs_or_normalrfs; - } - -// --------------------------------------------------------------------------- -// r_cmd_provisioning -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_provisioning - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\provisioningsc.exe"; - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - conditional_information = r_cond_feat_smartcardprov; - } - -// --------------------------------------------------------------------------- -// r_cmd_remotelock -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_remotelock - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\rlock.exe"; - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - conditional_information = r_cond_feat_remotelock; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_sipprofilesrv -// --------------------------------------------------------------------------- -// -#ifndef SYMBIAN_EXCLUDE_SIP -RESOURCE SSM_START_PROCESS_INFO r_cmd_sipprofilesrv - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\sipprofilesrv.exe"; - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - } -#endif // !SYMBIAN_EXCLUDE_SIP - -// =========================================================================== -// Conditional blocks in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cond_ps_firstboot -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_firstboot - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000013; // KPSStartupFirstBoot - value = 101; // EPSStartupFirstBoot - } - -// --------------------------------------------------------------------------- -// r_cond_feat_protocolwlan -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_protocolwlan - { - feature_id = KFeatureIdProtocolWlan; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_remotelock -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_remotelock - { - feature_id = KFeatureIdRemoteLock; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_smartcardprov -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_smartcardprov - { - feature_id = KFeatureIdSmartCardProv; - } - -// --------------------------------------------------------------------------- -// r_cond_firstboot_or_deeprfs -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_OR r_cond_firstboot_or_deeprfs - { - lhs = r_cond_ps_deep_rfs; - rhs = r_cond_ps_firstboot; - } - -// --------------------------------------------------------------------------- -// r_cond_firstboot_or_deeprfs_or_normalrfs -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_OR r_cond_firstboot_or_deeprfs_or_normalrfs - { - lhs = r_cond_ps_normal_rfs; - rhs = r_cond_firstboot_or_deeprfs; - } - -// --------------------------------------------------------------------------- -// r_cond_ps_normal_rfs -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_normal_rfs - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000045; // KPSStartupReason - value = ENormalRFSReset; - } - -// --------------------------------------------------------------------------- -// r_cond_ps_deep_rfs -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_deep_rfs - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000045; // KPSStartupReason - value = EDeepRFSReset; - } - -// --------------------------------------------------------------------------- -// r_cond_protwlan_and_firstboot_or_deeprfs_or_normalrfs -// ( protocol WLAN ) AND ( first boot OR deep RFS OR normal RFS ) -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_AND r_cond_protwlan_and_firstboot_or_deeprfs_or_normalrfs - { - lhs = r_cond_feat_protocolwlan; - rhs = r_cond_firstboot_or_deeprfs_or_normalrfs; - } - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_monitoring.rss --- a/startup/stem_monitoring.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,88 +0,0 @@ -/* -* Copyright (c) 2009 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: -* Monitoring information definitions. -* -*/ - -#include - -// =========================================================================== -// Monitoring definitions in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_mon_3_restarts_ignore -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MONITOR_INFO r_mon_3_restarts_ignore - { - restart_mode = 0; - retries = 3; - } - -// --------------------------------------------------------------------------- -// r_mon_3_restarts_reset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MONITOR_INFO r_mon_3_restarts_reset - { - restart_policy = ESsmRestartOS; - restart_mode = 0; - retries = 3; - } - -// --------------------------------------------------------------------------- -// r_mon_20_restarts_reset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MONITOR_INFO r_mon_20_restarts_reset - { - restart_policy = ESsmRestartOS; - restart_mode = 0; - retries = 20; - } - -// --------------------------------------------------------------------------- -// r_mon_100_restarts_reset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MONITOR_INFO r_mon_100_restarts_reset - { - restart_policy = ESsmRestartOS; - restart_mode = 0; - retries = 100; - } - -// --------------------------------------------------------------------------- -// r_mon_max_restarts_ignore -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MONITOR_INFO r_mon_max_restarts_ignore - { - restart_mode = 0; - retries = 32767; - } - -// --------------------------------------------------------------------------- -// r_mon_reset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MONITOR_INFO r_mon_reset - { - restart_policy = ESsmRestartOS; - restart_mode = 0; - retries = 0; - } diff -r 9b61d901414f -r 458d62869c00 startup/stem_noncriticalcmdlist.rss --- a/startup/stem_noncriticalcmdlist.rss Wed Oct 27 09:59:12 2010 +0100 +++ b/startup/stem_noncriticalcmdlist.rss Wed Oct 27 15:25:50 2010 +0100 @@ -70,18 +70,8 @@ { r_cmd_sastate, // This needs to be the first command in state, prio 0xFFF2 r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate, // prio 0xFFF0 - // prio 0xFFE7 - //TomP r_cmd_simcheck, - //TomP r_cmd_clearstartupreason, - //TomP r_cmd_createswp_uiphase, - //TomP r_cmd_createswp_rfstatus, - //TomP r_cmd_waitforofflinequery, - //TomP r_cmd_setswp_uistart, // After offline query has been made // prio 0xFFD7 - //TomP r_cmd_bsengine, // prio 0xFFD3 + r_cmd_psstate, // prio 0xFFF0 // prio 0xFFC7 - //TomP r_cmd_setswp_rfon, - //TomP r_cmd_setswp_rfoff, r_cmd_startupready // Last command, prio 0x0000 }; } @@ -90,44 +80,8 @@ // Command items in alphabetical order // =========================================================================== // -// --------------------------------------------------------------------------- -// r_cmd_bsengine -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_PROCESS_INFO r_cmd_bsengine - { - priority = 0xFFD3; - name = "z:\\sys\\bin\\bsengine.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - } // --------------------------------------------------------------------------- -// r_cmd_createswp_rfstatus -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CREATE_SYSTEM_WIDE_PROPERTY r_cmd_createswp_rfstatus - { - priority = 0xFFE7; - severity = ECmdCriticalSeverity; - key = SWP_UID_SSM_RF_STATUS; - filename = "rfstatusswppolicy.dll"; - } - -// --------------------------------------------------------------------------- -// r_cmd_createswp_uiphase -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CREATE_SYSTEM_WIDE_PROPERTY r_cmd_createswp_uiphase - { - priority = 0xFFE7; - severity = ECmdCriticalSeverity; - key = SWP_UID_SSM_UI_PHASE; - filename = "ssmuiswppolicy.dll"; - } -*/ -// --------------------------------------------------------------------------- // r_cmd_psstate // --------------------------------------------------------------------------- // @@ -166,60 +120,8 @@ dll_data = r_dlldata_sastate; } -// --------------------------------------------------------------------------- -// r_cmd_setswp_rfoff -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_REQUEST_SYSTEM_WIDE_PROPERTY r_cmd_setswp_rfoff - { - priority = 0xFFC7; - severity = ECmdCriticalSeverity; - key = SWP_UID_SSM_RF_STATUS; - value = ESsmRfOff; - conditional_information = r_cond_simnotusable_or_bootoffline; - } // --------------------------------------------------------------------------- -// r_cmd_setswp_rfon -// --------------------------------------------------------------------------- -// -RESOURCE SSM_REQUEST_SYSTEM_WIDE_PROPERTY r_cmd_setswp_rfon - { - priority = 0xFFC7; - severity = ECmdCriticalSeverity; - key = SWP_UID_SSM_RF_STATUS; - value = ESsmRfOn; - conditional_information = r_cond_simusable_and_bootonline; - } - -// --------------------------------------------------------------------------- -// r_cmd_setswp_uistart -// --------------------------------------------------------------------------- -// -RESOURCE SSM_REQUEST_SYSTEM_WIDE_PROPERTY r_cmd_setswp_uistart - { - priority = 0xFFD7; - severity = ECmdCriticalSeverity; - key = SWP_UID_SSM_UI_PHASE; - value = ESsmUiPhaseStarted; - } - -// --------------------------------------------------------------------------- -// r_cmd_simcheck -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_simcheck - { - priority = 0xFFE7; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 10; - unload_on_finish = ENeverUnload; - conditional_information = r_cond_ps_simusable; - } -*/ -// --------------------------------------------------------------------------- // r_cmd_startupready // --------------------------------------------------------------------------- // @@ -233,53 +135,6 @@ } // --------------------------------------------------------------------------- - -// --------------------------------------------------------------------------- -// r_cmd_waitforofflinequery -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_waitforofflinequery - { - priority = 0xFFE7; - severity = ECmdCriticalSeverity; - dllname = "ssmsystemcmds.dll"; - ordinal = 6; // WaitPsKeyRange - dll_data = r_dlldata_waitofflinequery; - unload_on_finish = ENeverUnload; - retries = 2; - execution_behaviour = ESsmWaitForSignal; - } - -// --------------------------------------------------------------------------- -// r_cmd_clearstartupreason -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_clearstartupreason - { - priority = 0xFFE7; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 16; // Clearstartupreason - retries = 2; - execution_behaviour = ESsmWaitForSignal; - } -*/ -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_activitymonitor_timeout -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_TIMEOUT r_dlldata_activitymonitor_timeout - { - timeout = 2; - } - -// --------------------------------------------------------------------------- // r_dlldata_sastate // --------------------------------------------------------------------------- // @@ -289,30 +144,6 @@ substate = ESsmStateNonCritical; } -// --------------------------------------------------------------------------- -// r_dlldata_waitcleanbootinfo -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_WAIT_PS_2 r_dlldata_waitcleanbootinfo - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000012; // KStartupCleanBoot - target1 = 101; // EStartupNormalBoot - target2 = 102; // EStartupCleanBoot - } - -// --------------------------------------------------------------------------- -// r_dlldata_waitofflinequery -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_WAIT_PS_2 r_dlldata_waitofflinequery - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000011; // KStartupBootIntoOffline - target1 = 101; // EBootIntoOnlineMode - target2 = 102; // EBootIntoOfflineMode - } - // =========================================================================== // Conditional blocks in alphabetical order // =========================================================================== @@ -488,4 +319,4 @@ // monitoring.rss contains resource definitions, so it may not be included // before entry point. -#include "stem_monitoring.rss" +//#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_noncriticalcmdlist_ext.rss --- a/startup/stem_noncriticalcmdlist_ext.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,892 +0,0 @@ -/* -* Copyright (c) 2009-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: -* Command list for the Non-critical startup state in extended startup mode. -* -*/ - -#include -#include -#include -#include - -#include "ssmswp.hrh" -#include "ssmsubstateext.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateNonCritical; - resource_id = r_cmds; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds - { - commands = - { - r_cmd_waitforphone, // prio 0xFFD1 - r_cmd_waitidle, // prio 0xFFC5 - // prio 0xFFB7 -#ifdef __JAVA - r_cmd_javacaptain, -#endif // __JAVA - r_cmd_watcher, - r_cmd_dmutilsrv, - // prio 0xFFA7 - r_cmd_contentharvester, - r_cmd_mdswatchdog, - r_cmd_predefinedcontacts, - r_cmd_xnthemesrv, - r_cmd_ncnlist, - r_cmd_satsrv, - r_cmd_cbssrv, - r_cmd_schedsrv, - r_cmd_aosrv, - r_cmd_ippushman, - r_cmd_remotefe, - r_cmd_supllistener, - r_cmd_autolock, - r_cmd_pocstarter, - r_cmd_gsserver, - r_cmd_vcommandmgr, - r_cmd_dmallreasons, - r_cmd_locod, -#ifdef FF_LBT_ENGINE - r_cmd_lbtsrv, -#endif // FF_LBT_ENGINE - r_cmd_emailsrvrmon, - r_cmd_taskswitcher, - // prio 0xFFA6 - r_cmd_dmfirstbootreason, - r_cmd_fota, - // prio 0x7F87 - r_cmd_waitcleanbootinfo, - // prio 0x7F97 - r_cmd_dcmo, - r_cmd_amastart, - // prio 0x7F96 - r_cmd_multiple_wait, - // prio 0x7F55 - r_cmd_createswp_noncriticalphase, - // prio 0x7F54 - r_cmd_setswp_noncriticalstart - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_amastart -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_AMA_STARTER r_cmd_amastart - { - priority = 0x7F97; - conditional_information = r_cond_ps_normalboot; - } - -// --------------------------------------------------------------------------- -// r_cmd_aosrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_aosrv - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\alwaysonlinestarter.exe"; - execution_behaviour = ESsmFireAndForget; - conditional_information = r_cond_feat_alwaysonline; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_autolock -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_autolock - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\lockapp.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 100000; // FCOA-87UBXX - background = 1; // To background - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_cbssrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_cbssrv - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\cbsserver.exe"; - execution_behaviour = ESsmFireAndForget; - conditional_information = r_cond_feat_cellbroadcast; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_contentharvester -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_contentharvester - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\contentharvester.exe"; - execution_behaviour = ESsmFireAndForget; //behavior changed from ESsmWaitForSignal as part of SCB CR MSOI-7XARNT - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_dcmo -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_dcmo - { - priority = 0x7F97; - execution_behaviour = ESsmFireAndForget; - dllname = "dcmostartupcustcmd.dll"; - ordinal = 1; // DCMO command - conditional_information = r_cond_feat_runtime_dcmo; - } - -// --------------------------------------------------------------------------- -// r_cmd_dmallreasons -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_dmallreasons - { - priority = 0xFFA7; - execution_behaviour = ESsmWaitForSignal; - dllname = "fotacustcmds.dll"; - ordinal = 1; // AllReasons command - retries = 2; - conditional_information = r_cond_syncml_dm_or_pnp_mobile_services; - } - -// --------------------------------------------------------------------------- -// r_cmd_dmfirstbootreason -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_dmfirstbootreason - { - priority = 0xFFA6; - execution_behaviour = ESsmWaitForSignal; - dllname = "fotacustcmds.dll"; - ordinal = 3; // FirstBoot command - retries = 2; - conditional_information = r_cond_pnp_mobile_services_and_firstboot; - } - -// --------------------------------------------------------------------------- -// r_cmd_dmutilsrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_dmutilsrv - { - priority = 0xFFB7; - name = "z:\\sys\\bin\\dmutilserver.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - monitor_info = r_mon_3_restarts_reset; - conditional_information = r_cond_feat_sappolicymgmt; - } - -// --------------------------------------------------------------------------- -// r_cmd_fota -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_fota - { - priority = 0xFFA6; - execution_behaviour = ESsmWaitForSignal; - dllname = "fotacustcmds.dll"; - ordinal = 2; // Fota command - retries = 2; - conditional_information = r_cond_syncml_dm_fota_and_fotareset; - } - -// --------------------------------------------------------------------------- -// r_cmd_emailsrvrmon -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_emailsrvrmon - { - priority = 0xFFA7; - name = "emailservermonitor.exe"; - execution_behaviour = ESsmFireAndForget; - conditional_information = r_cond_feat_emailfw; - } - -// --------------------------------------------------------------------------- -// r_cmd_gsserver -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_gsserver - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\gsserver.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - monitor_info = r_mon_3_restarts_ignore; - conditional_information = r_cond_feat_tvout; - } - -// --------------------------------------------------------------------------- -// r_cmd_mdswatchdog -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_mdswatchdog - { - priority = 0xFFA7; - name = "mdswatchdog.exe"; - execution_behaviour = ESsmFireAndForget; - } - -// --------------------------------------------------------------------------- -// r_cmd_loadsup_ippushman -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_ippushman - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\ippushman.exe"; - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - conditional_information = r_cond_feat_ippush; - } - -// --------------------------------------------------------------------------- -// r_cmd_lbtsrv -// --------------------------------------------------------------------------- -// -#ifdef FF_LBT_ENGINE -RESOURCE SSM_START_PROCESS_INFO r_cmd_lbtsrv - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\lbtserver.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - } -#endif // FF_LBT_ENGINE - -// --------------------------------------------------------------------------- -// r_cmd_locod -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_locod - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\locod.exe"; - execution_behaviour = ESsmFireAndForget; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_ncnlist -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_ncnlist - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\ncnlist.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_pocstarter -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_pocstarter - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\pocstarter.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - conditional_information = r_cond_feat_omapoc; - } - -// --------------------------------------------------------------------------- -// r_cmd_predefinedcontacts -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_predefinedcontacts - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\predefinedcontacts.exe"; - execution_behaviour = ESsmWaitForSignal; - retries = 2; - conditional_information = r_cond_firstboot_or_fotareset_or_deeprfsreset; - } - -// --------------------------------------------------------------------------- -// r_cmd_remotefe -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_remotefe - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\rsfwbootmounter.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - conditional_information = r_cond_feat_remotestoragefw; - } - -// --------------------------------------------------------------------------- -// r_cmd_satsrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_satsrv - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\satserver.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - monitor_info = r_mon_3_restarts_ignore; - conditional_information = r_cond_feat_simcard; - } - -// --------------------------------------------------------------------------- -// r_cmd_schedsrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_schedsrv - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\schexe.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - } - -// --------------------------------------------------------------------------- -// r_cmd_supllistener -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_supllistener - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\epos_omasupllistener.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - monitor_info = r_mon_3_restarts_ignore; - conditional_information = r_cond_feat_omasuplplugins; - } - -// --------------------------------------------------------------------------- -// r_cmd_javacaptain -// --------------------------------------------------------------------------- -// -#ifdef __JAVA -RESOURCE SSM_START_PROCESS_INFO r_cmd_javacaptain - { - priority = 0xFFB7; - name = "javacaptain.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - } -#endif // __JAVA -// --------------------------------------------------------------------------- -// r_cmd_vcommandmgr -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_vcommandmgr - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\vcommandmanager.exe"; - background = 1; // To background - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - conditional_information = r_cond_sind_and_no_sdnd; - } - -// --------------------------------------------------------------------------- -// r_cmd_waitcleanbootinfo -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_waitcleanbootinfo - { - priority = 0x7F87; - severity = ECmdCriticalSeverity; - dllname = "ssmsystemcmds.dll"; - ordinal = 6; // WaitPsKeyRange - dll_data = r_dlldata_waitcleanbootinfo; - retries = 2; - execution_behaviour = ESsmWaitForSignal; - } - -// --------------------------------------------------------------------------- -// r_cmd_waitforidle -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_waitidle - { - priority = 0xFFC5; - severity = ECmdCriticalSeverity; - dllname = "ssmsystemcmds.dll"; - ordinal = 5; // WaitPsKeyExact - dll_data = r_dlldata_waitidle; - unload_on_finish = ENeverUnload; - retries = 2; - execution_behaviour = ESsmWaitForSignal; - } - -// --------------------------------------------------------------------------- -// r_cmd_waitforphone -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_waitforphone - { - priority = 0xFFD1; - severity = ECmdCriticalSeverity; - dllname = "ssmsystemcmds.dll"; - ordinal = 5; // WaitPsKeyExact - dll_data = r_dlldata_waitphone; - unload_on_finish = ENeverUnload; - retries = 2; - execution_behaviour = ESsmWaitForSignal; - } - -// --------------------------------------------------------------------------- -// r_cmd_watcher -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_watcher - { - priority = 0xFFB7; - name = "z:\\sys\\bin\\watcher.exe"; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_xnthemesrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_xnthemesrv - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\xnthemeserver.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - monitor_info = r_mon_3_restarts_ignore; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_waitcleanbootinfo -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_WAIT_PS_2 r_dlldata_waitcleanbootinfo - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000012; // KStartupCleanBoot - target1 = 101; // EStartupNormalBoot - target2 = 102; // EStartupCleanBoot - } - -// --------------------------------------------------------------------------- -// r_dlldata_waitidle -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_WAIT_PS r_dlldata_waitidle - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000043; // KPSIdlePhase1Ok - target = 101; // EIdlePhase1Ok - } - - -// --------------------------------------------------------------------------- -// r_dlldata_waitphone -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_WAIT_PS r_dlldata_waitphone - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000044; // KPSPhonePhase1Ok - target = 101; // EPhonePhase1Ok - } - - -// --------------------------------------------------------------------------- -// r_cmd_item_taskswitcher -// --------------------------------------------------------------------------- -RESOURCE SSM_START_APP_INFO r_cmd_taskswitcher - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\taskswitcher.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - background = 1; // To background - monitor_info = r_mon_max_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_createswp_noncriticalphase -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CREATE_SYSTEM_WIDE_PROPERTY r_cmd_createswp_noncriticalphase - { - priority = 0x7F55; - severity = ECmdCriticalSeverity; - key = SWP_UID_SSM_NONCRITICAL_PHASE; - filename = "ssmnoncriticalswppolicy.dll"; - } - -// --------------------------------------------------------------------------- -// r_cmd_setswp_noncriticalstart -// --------------------------------------------------------------------------- -// -RESOURCE SSM_REQUEST_SYSTEM_WIDE_PROPERTY r_cmd_setswp_noncriticalstart - { - priority = 0x7F54; - key = SWP_UID_SSM_NONCRITICAL_PHASE; - value = ESsmNonCriticalPhaseStarted; - } - -// --------------------------------------------------------------------------- -// r_cmd_multiple_wait -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MULTIPLE_WAIT r_cmd_multiple_wait - { - priority = 0x7F96; - } - -// =========================================================================== -// Conditional blocks in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cond_ps_firstboot -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_firstboot - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000013; // KPSStartupFirstBoot - value = 101; // EPSStartupFirstBoot - } - -// --------------------------------------------------------------------------- -// r_cond_feat_alwaysonline -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_alwaysonline - { - feature_id = KFeatureIdAlwaysOnLine; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_cellbroadcast -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_cellbroadcast - { - feature_id = KFeatureIdCellBroadcast; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_emailfw -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_emailfw - { - feature_id = KFeatureIdFfEmailFramework; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_ippush -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_ippush - { - feature_id = KFeatureIdIpPush; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_omapoc -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_omapoc - { - feature_id = KFeatureIdOmaPoc; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_omasuplplugins -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_omasuplplugins - { - feature_id = KFeatureIdOmaSuplPlugins; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_pnp_mobile_services -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_pnp_mobile_services - { - feature_id = KFeatureIdPlugAndPlayMobileServices; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_remotestoragefw -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_remotestoragefw - { - feature_id = KFeatureIdRemoteStorageFw; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_runtime_dcmo; -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_runtime_dcmo - { - feature_id = KFeatureIdFfRuntimeDeviceCapabilityConfiguration; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_sappolicymgmt -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_sappolicymgmt - { - feature_id = KFeatureIdSapPolicyManagement; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_sdnd -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_sdnd - { - feature_id = KFeatureIdSdnd; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_simcard -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_simcard - { - feature_id = KFeatureIdSimCard; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_sind -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_sind - { - feature_id = KFeatureIdSind; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_syncml_dm -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_syncml_dm - { - feature_id = KFeatureIdSyncMlDm; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_syncml_dm_fota -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_syncml_dm_fota - { - feature_id = KFeatureIdSyncMlDmFota; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_tvout -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_tvout - { - feature_id = KFeatureIdTvOut; - } - -// --------------------------------------------------------------------------- -// r_cond_firstboot_or_fotareset_or_deeprfsreset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_OR r_cond_firstboot_or_fotareset_or_deeprfsreset - { - lhs = r_cond_fotareset_or_deeprfsreset; - rhs = r_cond_ps_firstboot; - } - -// --------------------------------------------------------------------------- -// r_cond_fotareset_or_deeprfsreset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_OR r_cond_fotareset_or_deeprfsreset - { - lhs = r_cond_ps_fotareset; - rhs = r_cond_ps_deeprfsreset; - } - -// --------------------------------------------------------------------------- -// r_cond_no_sdnd -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_NOT r_cond_no_sdnd - { - sub_condition = r_cond_feat_sdnd; - } - -// --------------------------------------------------------------------------- -// r_cond_pnp_mobile_services_and_firstboot -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_AND r_cond_pnp_mobile_services_and_firstboot - { - lhs = r_cond_feat_pnp_mobile_services; - rhs = r_cond_ps_firstboot; - } - -// --------------------------------------------------------------------------- -// r_cond_ps_bootoffline -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_bootoffline - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000011; // KStartupBootIntoOffline - value = 102; // EBootIntoOfflineMode - } - -// --------------------------------------------------------------------------- -// r_cond_ps_bootonline -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_bootonline - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000011; // KStartupBootIntoOffline - value = 101; // EBootIntoOnlineMode - } - -// --------------------------------------------------------------------------- -// r_cond_ps_deeprfsreset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_deeprfsreset - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000045; // KPSStartupReason - value = EDeepRFSReset; - } - -// --------------------------------------------------------------------------- -// r_cond_ps_fotareset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_fotareset - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000045; // KPSStartupReason - value = EFirmwareUpdate; - } - -// --------------------------------------------------------------------------- -// r_cond_ps_normalboot -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_normalboot - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000012; // KStartupCleanBoot - value = 101; // EStartupNormalBoot - } - - -// --------------------------------------------------------------------------- -// r_cond_sind_and_no_sdnd -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_AND r_cond_sind_and_no_sdnd - { - lhs = r_cond_feat_sind; - rhs = r_cond_no_sdnd; - } - -// --------------------------------------------------------------------------- -// r_cond_syncml_dm_fota_and_fotareset -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_AND r_cond_syncml_dm_fota_and_fotareset - { - lhs = r_cond_feat_syncml_dm_fota; - rhs = r_cond_ps_fotareset; - } - -// --------------------------------------------------------------------------- -// r_cond_syncml_dm_or_pnp_mobile_services -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_OR r_cond_syncml_dm_or_pnp_mobile_services - { - lhs = r_cond_feat_syncml_dm; - rhs = r_cond_feat_pnp_mobile_services; - } - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_noncriticalcmdlist_hw.rss --- a/startup/stem_noncriticalcmdlist_hw.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,223 +0,0 @@ -/* -* Copyright (c) 2009-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: -* Command list for the Non-critical startup state (HW-specific additions). -* -*/ - -#include -#include -#include - -#include "ssmsubstateext.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateNonCritical; - resource_id = r_cmds; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds - { - commands = - { - r_cmd_connlogger, - r_cmd_provisioning, -#ifndef SYMBIAN_EXCLUDE_SIP - r_cmd_sipprofilesrv, -#endif // defined !SYMBIAN_EXCLUDE_SIP - r_cmd_remotelock, - // prio 0x7EF1 - r_cmd_activitymonitor1, - // prio 0x7EF0 - r_cmd_devencstarter -// prio 0x7EEB -#ifdef FF_MOBILITY_MANAGEMENT_ERRORS - ,r_cmd_item_nwnotifier -#endif // FF_MOBILITY_MANAGEMENT_ERRORS - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor1 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor1 - { - priority = 0x7EF1; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - - -// --------------------------------------------------------------------------- -// r_cmd_connlogger -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_connlogger - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\dataconnectionlogger.exe"; - execution_behaviour = ESsmFireAndForget; - monitor_info = r_mon_3_restarts_ignore; - } - - -// --------------------------------------------------------------------------- -// r_cmd_devencstarter -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_devencstarter - { - priority = 0x7EF0; - name = "z:\\sys\\bin\\devencstarter.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - background = 1; // To background - } - - -// --------------------------------------------------------------------------- -// r_cmd_provisioning -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_provisioning - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\provisioningsc.exe"; - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - conditional_information = r_cond_feat_smartcardprov; - } - -// --------------------------------------------------------------------------- -// r_cmd_remotelock -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_remotelock - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\rlock.exe"; - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - conditional_information = r_cond_feat_remotelock; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_sipprofilesrv -// --------------------------------------------------------------------------- -// -#ifndef SYMBIAN_EXCLUDE_SIP -RESOURCE SSM_START_PROCESS_INFO r_cmd_sipprofilesrv - { - priority = 0xFFA7; - name = "z:\\sys\\bin\\sipprofilesrv.exe"; - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - } -#endif // !SYMBIAN_EXCLUDE_SIP - - -#ifdef FF_MOBILITY_MANAGEMENT_ERRORS -// --------------------------------------------------------------------------- -// r_cmd_item_nwnotifier -// Start list item for network notifier -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_item_nwnotifier - { - priority = 0x7EEB; - name = "z:\\sys\\bin\\nwnotifier.exe"; - execution_behaviour = ESsmWaitForSignal; - retries = 3; - } -#endif // FF_MOBILITY_MANAGEMENT_ERRORS - - -// =========================================================================== -// Conditional blocks in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cond_feat_remotelock -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_remotelock - { - feature_id = KFeatureIdRemoteLock; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_smartcardprov -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_smartcardprov - { - feature_id = KFeatureIdSmartCardProv; - } - -// --------------------------------------------------------------------------- -// r_dlldata_activitymonitor_timeout -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_TIMEOUT r_dlldata_activitymonitor_timeout - { - timeout = 2; - } - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_noncriticalswpcmdlists.rss --- a/startup/stem_noncriticalswpcmdlists.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,439 +0,0 @@ -/* -* 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: -* Command lists for the noncritical phase SWP: -* - non-critical phase Started -* -*/ - -#include -#include - -#include "ssmswp.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmNonCriticalPhaseStarted; - resource_id = r_noncriticalphase_commands; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_started_commands -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_noncriticalphase_commands - { - commands = - { - // prio 0xFFF1 - r_cmd_publishswp, - // prio 0x7EFF - r_cmd_activitymonitor1, - // prio 0x7EFE - r_cmd_logs, - // prio 0x7EFD - r_cmd_activitymonitor2, - // prio 0x7EFC - r_cmd_pbk2, - // prio 0x7EFB - r_cmd_activitymonitor3, - // prio 0x7EFA - r_cmd_mce, - // prio 0x7EF9 - r_cmd_activitymonitor4, - // prio 0x7EF8 - r_cmd_clock, //ESLT-842J9W - // prio 0x7EF7 - r_cmd_activitymonitor5, - // prio 0x7EF6 - r_cmd_videocenter, - // prio 0x7EF5 - r_cmd_activitymonitor6, - // prio 0x7EF4 - r_cmd_iaupdatebg, - // prio 0x7EF3 - r_cmd_activitymonitor7, - // prio 0x7EF2 - r_cmd_screensaver, - // prio 0x7EEF - r_cmd_activitymonitor8, - // prio 0x7EEE - r_cmd_autosync -#ifdef FF_ATT_ADDRESS_BK - //prio 0x7EEA - ,r_cmd_activitymonitor9, - //prio 0x7EE9 - r_cmd_aab -#endif - // prio 0x7EE8 - ,r_cmd_activitymonitor10, - // prio 0x7EE7 - r_cmd_calendar //CR:MMUN-82ZHAD - }; - } - -// ----------------------------------------------------------------------------- -// r_cmd_aab -// ----------------------------------------------------------------------------- -// -#ifdef FF_ATT_ADDRESS_BK -RESOURCE SSM_START_APP_INFO r_cmd_aab - { - priority = 0x7EE9; - name = "z:\\sys\\bin\\AABPhonebookapp.exe"; - retries = 2; - background = 1; // To background - monitor_info = r_mon_3_restarts_ignore; - } -#endif - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor1 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor1 - { - priority = 0x7EFF; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor2 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor2 - { - priority = 0x7EFD; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor3 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor3 - { - priority = 0x7EFB; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor4 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor4 - { - priority = 0x7EF9; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor5 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor5 - { - priority = 0x7EF7; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor6 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor6 - { - priority = 0x7EF5; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor7 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor7 - { - priority = 0x7EF3; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor8 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor8 - { - priority = 0x7EEF; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor9 -// --------------------------------------------------------------------------- -// -#ifdef FF_ATT_ADDRESS_BK -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor9 - { - priority = 0x7EEA; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } -#endif - -// --------------------------------------------------------------------------- -// r_cmd_activitymonitor10 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor10 - { - priority = 0x7EE8; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - dllname = "ssmactivitycmd.dll"; - ordinal = 1; // SsmActivityCmdNewL - retries = 2; - dll_data = r_dlldata_activitymonitor_timeout; - } - -// --------------------------------------------------------------------------- -// r_cmd_autosync -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_autosync - { - priority = 0x7EEE; - execution_behaviour = ESsmFireAndForget; - retries = 3; - name = "cctautosync.exe"; - } - -// --------------------------------------------------------------------------- -// r_cmd_calendar -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_calendar - { - priority = 0x7EE7; - name = "calendar.exe"; - execution_behaviour = ESsmFireAndForget; - retries = 3; - background = 1; // To background - } - -// --------------------------------------------------------------------------- -// r_cmd_clock -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_clock - { - priority = 0x7EF8; - name = "clock.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - background = 1; // To background - } - -// --------------------------------------------------------------------------- -// r_cmd_iaupdatebg -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_iaupdatebg - { - priority = 0x7EF4; - name = "iaupdatebg.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - conditional_information = r_cond_feat_iadv2; - } - -// --------------------------------------------------------------------------- -// r_cmd_mce -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_mce - { - priority = 0x7EFA; - name = "mce.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - background = 1; // To background - } - -// --------------------------------------------------------------------------- -// r_cmd_pbk2 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_pbk2 - { - priority = 0x7EFC; - name = "z:\\sys\\bin\\phonebook2.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - background = 1; // To background - } - -// --------------------------------------------------------------------------- -// r_cmd_publishswp -// --------------------------------------------------------------------------- -// -RESOURCE SSM_PUBLISH_SYSTEM_WIDE_PROPERTY r_cmd_publishswp - { - priority = 0xFFF1; - severity = ECmdCriticalSeverity; - } - -// --------------------------------------------------------------------------- -// r_cmd_logs -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_logs - { - priority = 0x7EFE; - name = "z:\\sys\\bin\\logs.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - background = 1; // To background - } - -// --------------------------------------------------------------------------- -// r_cmd_screensaver -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_screensaver - { - priority = 0x7EF2; - name = "z:\\sys\\bin\\screensaver.exe"; - background = 1; // To background - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_videocenter -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_videocenter - { - priority = 0x7EF6; - name = "cseschedulerserver.exe"; - execution_behaviour = ESsmWaitForSignal; - timeout = 10000; - } - -// =========================================================================== -// Conditional blocks in alphabetical order -// =========================================================================== -// -// --------------------------------------------------------------------------- -// r_cond_feat_iadv2 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_iadv2 - { - feature_id = KFeatureIdFfIaupdatePhase2; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_activitymonitor_timeout -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_TIMEOUT r_dlldata_activitymonitor_timeout - { - timeout = 2; - } - - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_preuiservicescmdlist.rss --- a/startup/stem_preuiservicescmdlist.rss Wed Oct 27 09:59:12 2010 +0100 +++ b/startup/stem_preuiservicescmdlist.rss Wed Oct 27 15:25:50 2010 +0100 @@ -68,9 +68,7 @@ // prio 0xFE01 r_cmd_sysagt, r_cmd_initpskeys, - //TomP r_cmd_checkuserdrive, r_cmd_deltempfiles, - //TomP r_cmd_reservedisk, r_cmd_sysmon, r_cmd_ssmutilsrv, r_cmd_multiwaitforever // prio 0xFE00 @@ -83,22 +81,6 @@ // // --------------------------------------------------------------------------- -// r_cmd_checkuserdrive -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_checkuserdrive - { - priority = 0xFE01; - execution_behaviour = ESsmDeferredWaitForSignal; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 13; // CheckUserDrive - unload_on_finish = ENeverUnload; - retries = 2; - } -*/ -// --------------------------------------------------------------------------- // r_cmd_deltempfiles // --------------------------------------------------------------------------- // @@ -147,20 +129,7 @@ retries = 2; } -// --------------------------------------------------------------------------- -// r_cmd_reservedisk -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_PROCESS_INFO r_cmd_reservedisk - { - priority = 0xFE01; - execution_behaviour = ESsmFireAndForget; - name = "Z:\\sys\\bin\\ssmdiskreserver.exe"; - severity = ECmdCriticalSeverity; - retries = 2; - } -*/ + // --------------------------------------------------------------------------- // r_cmd_ssmutilsrv // --------------------------------------------------------------------------- diff -r 9b61d901414f -r 458d62869c00 startup/stem_rfswpcmdlists.rss --- a/startup/stem_rfswpcmdlists.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,247 +0,0 @@ -/* -* Copyright (c) 2009 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: -* Command lists for the RF SWP: -* - Normal RF On. -* - Normal RF Off. -* - Normal BT SAP. -* -*/ - -#include -#include - -#include "ssmswp.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmRfOn; - resource_id = r_online_commands; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmRfOff; - resource_id = r_offline_commands; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmBtSap; - resource_id = r_btsap_commands; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_btsap_commands -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_btsap_commands - { - commands = - { - r_cmd_sastate_btsap, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishswp, // prio 0xFFF1 - r_cmd_psstate_btsap // prio 0xFFF0 - }; - } - -// --------------------------------------------------------------------------- -// r_offline_commands -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_offline_commands - { - commands = - { - r_cmd_sastate_offline, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishswp, // prio 0xFFF1 - r_cmd_psstate_offline // prio 0xFFF0 - }; - } - -// --------------------------------------------------------------------------- -// r_online_commands -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_online_commands - { - commands = - { - r_cmd_sastate_online, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishswp, // prio 0xFFF1 - r_cmd_psstate_online // prio 0xFFF0 - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_psstate_btsap -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_btsap - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 111; // ESwStateNormalBTSap - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_offline -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_offline - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 110; // ESwStateNormalRfOff - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate_online -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_online - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 109; // ESwStateNormalRfOn - } - -// --------------------------------------------------------------------------- -// r_cmd_publishswp -// --------------------------------------------------------------------------- -// -RESOURCE SSM_PUBLISH_SYSTEM_WIDE_PROPERTY r_cmd_publishswp - { - priority = 0xFFF1; - severity = ECmdCriticalSeverity; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_btsap -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_btsap - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_btsap; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_offline -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_offline - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_offline; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate_online -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_online - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate_online; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_btsap -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_btsap - { - mainstate = 1; // ESsmNormal - substate = 0x1B; - } - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_offline -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_offline - { - mainstate = 1; // ESsmNormal - substate = 0x1A; - } - -// --------------------------------------------------------------------------- -// r_dlldata_sastate_online -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_online - { - mainstate = 1; // ESsmNormal - substate = 0x19; - } diff -r 9b61d901414f -r 458d62869c00 startup/stem_securitycheckcmdlist.rss --- a/startup/stem_securitycheckcmdlist.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,346 +0,0 @@ -/* -* Copyright (c) 2009-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: -* Command list for the Security Check startup state. -* -*/ - -#include -#include - -#include "ssmsubstateext.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateSecurityCheck; - resource_id = r_cmds; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds - { - commands = - { - r_cmd_sastate, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate, // prio 0xFFF0 - // prio 0xFFE7 - r_cmd_menu, - r_cmd_idle, - // prio 0xFFE6 - r_cmd_multiwaitforever1, - // prio 0xFFE3 - r_cmd_startup, - r_cmd_phone, - r_cmd_nitz, - // prio 0xFFE2 - r_cmd_multiwaitforever2, - // prio 0xFFDF - r_cmd_touchscreen, - r_cmd_touchplg, - // prio 0xFFDE - r_cmd_multiwaitforever3, - // prio 0xFFD8 - r_cmd_createswp_simstatus, - // prio 0xFFD7 - r_cmd_loadsup_simeventobserver, - // prio 0xFFD6 - r_cmd_securitycheck - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_createswp_simstatus -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CREATE_SYSTEM_WIDE_PROPERTY r_cmd_createswp_simstatus - { - priority = 0xFFD8; - severity = ECmdCriticalSeverity; - key = 0x00000031; // KPSSimStatus - filename = "ssm.swp.policy.simstatus.dll"; - } - -// --------------------------------------------------------------------------- -// r_cmd_idle -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_idle - { - priority = 0xFFE7; - name = "z:\\sys\\bin\\ailaunch.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - monitor_info = r_mon_max_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_menu -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_menu - { - priority = 0xFFE7; - name = "z:\\sys\\bin\\matrixmenu.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - background = 1; // To background - } - -// --------------------------------------------------------------------------- -// r_cmd_multiwaitforever1 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MULTIPLE_WAIT r_cmd_multiwaitforever1 - { - priority = 0xFFE6; - } - -// --------------------------------------------------------------------------- -// r_cmd_multiwaitforever2 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MULTIPLE_WAIT r_cmd_multiwaitforever2 - { - priority = 0xFFE2; - } - -// --------------------------------------------------------------------------- -// r_cmd_multiwaitforever3 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MULTIPLE_WAIT r_cmd_multiwaitforever3 - { - priority = 0xFFDE; - } - -// --------------------------------------------------------------------------- -// r_cmd_nitz -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_nitz - { - priority = 0xFFE3; - name = "z:\\sys\\bin\\clockserver.exe"; - execution_behaviour = ESsmFireAndForget; // -- does not call Rendezvous() -- - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cmd_phone -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_APP_INFO r_cmd_phone - { - priority = 0xFFE3; - name = "z:\\sys\\bin\\phoneui.exe"; - execution_behaviour = ESsmFireAndForget; - retries = 2; - background = 1; // To background - monitor_info = r_mon_reset; - } - -// --------------------------------------------------------------------------- -// r_cmd_loadsup_simeventobserver -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_SSM_UTILITY_PLUGIN r_cmd_loadsup_simeventobserver - { - priority = 0xFFD7; - severity = ECmdCriticalSeverity; - filename = "ssmclayersup.dll"; - ordinal = 2; // SimEventObserverNewL - } - -// --------------------------------------------------------------------------- -// r_cmd_psstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 103; // ESwStateSecurityCheck - } - -// --------------------------------------------------------------------------- -// r_cmd_publishstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_PUBLISH_SYSTEM_STATE r_cmd_publishstate - { - priority = 0xFFF1; - severity = ECmdCriticalSeverity; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate; - } - -// --------------------------------------------------------------------------- -// r_cmd_securitycheck -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_securitycheck - { - priority = 0xFFD6; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 1; - unload_on_finish = ENeverUnload; - } - -// --------------------------------------------------------------------------- -// r_cmd_startup -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_startup - { - priority = 0xFFE3; - name = "z:\\sys\\bin\\startup.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - severity = ECmdCriticalSeverity; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_touchplg -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_touchplg - { - priority = 0xFFDF; - severity = ECmdCriticalSeverity; - dllname = "tsccustcmds.dll"; - ordinal = 1; - retries = 2; - execution_behaviour = ESsmDeferredWaitForSignal; - conditional_information = r_cond_firstboot_and_tscinstartup; - } - -// --------------------------------------------------------------------------- -// r_cmd_touchscreen -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_touchscreen - { - priority = 0xFFDF; - name = "z:\\sys\\bin\\touchscreencalib.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - conditional_information = r_cond_firstboot_and_tscinstartup; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_sastate -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate - { - mainstate = 0; // ESsmStartup - substate = ESsmStateSecurityCheck; - } - -// =========================================================================== -// Conditional blocks in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cond_ps_firstboot -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_firstboot - { - category = 0x101F8766; // KPSUidStartup - key = 0x00000013; // KPSStartupFirstBoot - value = 101; // EPSStartupFirstBoot - } - -// --------------------------------------------------------------------------- -// r_cond_feat_tscinstartup -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_tscinstartup - { - feature_id = KFeatureIdTouchscreencalibInStartup; - } - -// --------------------------------------------------------------------------- -// r_cond_firstboot_and_tscinstartup -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_LOGICAL_AND r_cond_firstboot_and_tscinstartup - { - lhs = r_cond_feat_tscinstartup; - rhs = r_cond_ps_firstboot; - } - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_selftestokcmdlist.rss --- a/startup/stem_selftestokcmdlist.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,131 +0,0 @@ -/* -* Copyright (c) 2009 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: -* Command list for the Selftest OK startup state. -* -*/ - -#include -#include - -#include "ssmsubstateext.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateSelfTestOK; - resource_id = r_cmds; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds - { - commands = - { - r_cmd_sastate, // This needs to be the first command in state, prio 0xFFF2 - r_cmd_publishstate, // prio 0xFFF1 - r_cmd_psstate // prio 0xFFF0 - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_psstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate - { - priority = 0xFFF0; - severity = ECmdCriticalSeverity; - category = 0x101F8766; // KPSUidStartup - key = 0x00000041; // KPSGlobalSystemState - value = 102; // ESwStateSelfTestOK - } - -// --------------------------------------------------------------------------- -// r_cmd_publishstate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_PUBLISH_SYSTEM_STATE r_cmd_publishstate - { - priority = 0xFFF1; - severity = ECmdCriticalSeverity; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_sastate -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate - { - priority = 0xFFF2; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 8; - unload_on_finish = ENeverUnload; - retries = 2; - dll_data = r_dlldata_sastate; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_sastate -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate - { - mainstate = 0; // ESsmStartup - substate = ESsmStateSelfTestOK; - } diff -r 9b61d901414f -r 458d62869c00 startup/stem_uiservicescmdlist.rss --- a/startup/stem_uiservicescmdlist.rss Wed Oct 27 09:59:12 2010 +0100 +++ b/startup/stem_uiservicescmdlist.rss Wed Oct 27 15:25:50 2010 +0100 @@ -71,32 +71,13 @@ // prio 0xFFE7 r_cmd_startupmode, r_cmd_loadpowersup, - // prio 0xFFD7 - //TomP r_cmd_rfsfirstboot, - //TomP r_cmd_rfsdeep, - //TomP r_cmd_rfsnormal, - // prio 0xFFC7 - //TomP r_cmd_initclkeys, - //TomP r_cmd_initramdrive, // prio 0xFFA7 r_cmd_splash, - // prio 0xFF97 - //TomP r_cmd_rtc, - // prio 0xFF96 - rtc (tzsrv, cntsrv, mediator & hwrmsrv have been moved to extended startup list but use the same multiplewait command) r_cmd_multiwaitforever1, - // prio 0xFF87 - //TomP r_cmd_accsrv, - //TomP r_cmd_selectlanguage, // Select UI language to use - // prio 0xFF86 - accsrv, seleclanguage (dbrecovery has been moved to extended startup list but uses the same multiplewait command) - r_cmd_multiwaitforever2, - // prio 0xFF85 - //TomP r_cmd_loadlocalesup, // Observes changes in locale data // prio 0xFF79 r_cmd_aknstart, // UI Framework // prio 0xFF77 r_cmd_apparc_init // Init application framework - // prio 0xFF75 - //TomP r_cmd_rfspostui // Restore factory settings - after UI framework is up }; } @@ -106,20 +87,6 @@ // // --------------------------------------------------------------------------- -// r_cmd_accsrv -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_PROCESS_INFO r_cmd_accsrv - { - priority = 0xFF87; - name = "Z:\\sys\\bin\\accserver.exe"; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmWaitForSignal; - monitor_info = r_mon_3_restarts_reset; - } -*/ -// --------------------------------------------------------------------------- // r_cmd_aknstart // --------------------------------------------------------------------------- // @@ -143,49 +110,6 @@ } // --------------------------------------------------------------------------- -// r_cmd_initclkeys -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_initclkeys - { - priority = 0xFFC7; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmDeferredWaitForSignal; - dllname = "ssmsystemcmds.dll"; - ordinal = 3; // InitCriticalLevels - unload_on_finish = ENeverUnload; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_initramdrive -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_initramdrive - { - priority = 0xFFC7; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmDeferredWaitForSignal; - dllname = "customcmds.dll"; - ordinal = 14; // InitRamDrive - unload_on_finish = ENeverUnload; - retries = 2; - } -*/ -// --------------------------------------------------------------------------- -// r_cmd_loadlocalesup -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_SSM_UTILITY_PLUGIN r_cmd_loadlocalesup - { - priority = 0xFF85; - filename = "ssmlocaleobserversup.dll"; - ordinal = 1; - } -*/ -// --------------------------------------------------------------------------- // r_cmd_loadpowersup // --------------------------------------------------------------------------- // @@ -206,14 +130,6 @@ priority = 0xFF96; } -// --------------------------------------------------------------------------- -// r_cmd_multiwaitforever2 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MULTIPLE_WAIT r_cmd_multiwaitforever2 - { - priority = 0xFF86; - } // --------------------------------------------------------------------------- // r_cmd_psstate @@ -239,74 +155,8 @@ retries = 2; } -// --------------------------------------------------------------------------- -// r_cmd_rfsdeep -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_rfsdeep - { - priority = 0xFFD7; - dllname = "rfscustcmd.dll"; - ordinal = 2; // RfsCustCmdDeepNewL - retries = 2; - conditional_information = r_cond_cenrep_rfs_deep; - } // --------------------------------------------------------------------------- -// r_cmd_rfsfirstboot -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_rfsfirstboot - { - priority = 0xFFD7; - dllname = "rfscustcmd.dll"; - ordinal = 1; // RfsCustCmdFirstBootNewL - retries = 2; - conditional_information = r_cond_ps_firstboot; - } - -// --------------------------------------------------------------------------- -// r_cmd_rfsnormal -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_rfsnormal - { - priority = 0xFFD7; - dllname = "rfscustcmd.dll"; - ordinal = 3; // RfsCustCmdPreUiNewL - retries = 2; - conditional_information = r_cond_cenrep_rfs_normal; - } - -// --------------------------------------------------------------------------- -// r_cmd_rfspostui -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_rfspostui - { - priority = 0xFF77; - dllname = "rfscustcmd.dll"; - ordinal = 4; // RfsCustCmdPostUiNewL - retries = 2; - conditional_information = r_cond_cenrep_rfs_normal; - } - -// --------------------------------------------------------------------------- -// r_cmd_rtc -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_rtc - { - priority = 0xFF97; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 12; - execution_behaviour = ESsmDeferredWaitForSignal; - retries = 2; - } -*/ -// --------------------------------------------------------------------------- // r_cmd_sastate // --------------------------------------------------------------------------- // @@ -322,20 +172,6 @@ } // --------------------------------------------------------------------------- -// r_cmd_selectlanguage -// --------------------------------------------------------------------------- -// -/* -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_selectlanguage - { - priority = 0xFF87; - severity = ECmdCriticalSeverity; - dllname = "ssmlangselcmd.dll"; - ordinal = 1; // SelectLanguage - retries = 2; - } -*/ -// --------------------------------------------------------------------------- // r_cmd_splash // --------------------------------------------------------------------------- // @@ -415,4 +251,4 @@ // monitoring.rss contains resource definitions, so it may not be included // before entry point. -#include "stem_monitoring.rss" +//#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_uiservicescmdlist_ext.rss --- a/startup/stem_uiservicescmdlist_ext.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,162 +0,0 @@ -/* -* Copyright (c) 2009-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: -* Command list for the UI-Services startup state (UI shell version) for extended startup. -* -*/ - -#include -#include - -#include "ssmsubstateext.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateStartingUiServices; - resource_id = r_cmds; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmds -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds - { - commands = - { - // prio 0xFFA3 - r_cmd_tzsrv, - r_cmd_cntsrv, - r_cmd_mediator, - r_cmd_hwrmsrv, - // prio 0xFF89 - r_cmd_dbrecovery - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - - -// --------------------------------------------------------------------------- -// r_cmd_cntsrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_cntsrv - { - priority = 0xFFA3; - name = "Z:\\sys\\bin\\cntsrv.exe"; - args = "-nontransient"; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmDeferredWaitForSignal; - } - -// --------------------------------------------------------------------------- -// r_cmd_dbrecovery -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_dbrecovery - { - priority = 0xFF89; - name = "z:\\sys\\bin\\dbrecovery.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - } - -// --------------------------------------------------------------------------- -// r_cmd_hwrmsrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_hwrmsrv - { - priority = 0xFFA3; - name = "Z:\\sys\\bin\\hwrmserver.exe"; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmDeferredWaitForSignal; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_mediator -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_mediator - { - priority = 0xFFA3; - name = "Z:\\sys\\bin\\mediatorserver.exe"; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmDeferredWaitForSignal; - monitor_info = r_mon_3_restarts_reset; - conditional_information = r_cond_feat_mediator; - } - -// --------------------------------------------------------------------------- -// r_cmd_tzsrv -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_tzsrv - { - priority = 0xFFA3; - name = "Z:\\sys\\bin\\tzserver.exe"; - severity = ECmdCriticalSeverity; - execution_behaviour = ESsmDeferredWaitForSignal; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cond_feat_mediator -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_mediator - { - feature_id = KFeatureIdMediator; - } -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_uiswpcmdlists.rss --- a/startup/stem_uiswpcmdlists.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,218 +0,0 @@ -/* -* Copyright (c) 2009-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: -* Command lists for the UI phase SWP: -* - UI phase Started -* -*/ - -#include -#include - -#include "ssmswp.hrh" -#include "ssmdlldatadefs.rh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmUiPhaseStarted; - resource_id = r_started_commands; - } - }; - } - -// =========================================================================== -// Command lists in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_started_commands -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_started_commands - { - commands = - { - r_cmd_publishswp, // prio 0xFFF1 - r_cmd_kill_splash, // prio 0xFFE7 - Remove splash screen - r_cmd_devlockcheck, // prio 0xFFD7 - Security code query, if needed - r_cmd_startanim, // prio 0xFFC7 - Startup animation(s) - r_cmd_waitanim, // prio 0xFFB7 - Wait for the animations to finish - r_cmd_adtupdater, // prio 0xFFAA - Location, date & time queries //CR:ESAH-84JFCU - r_cmd_enableappskey, // prio 0xFFA7 - Enable applications key - r_cmd_enableglobalnotes, // prio 0xFFA7 - Enable global notes - r_cmd_swidaemon // prio 0xFF97 - Initializes pre-installed applications from memory card - }; - } - -// =========================================================================== -// Command items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_cmd_adtupdater -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_adtupdater - { - priority = 0xFFAA; - name = "adtupdater.exe"; - execution_behaviour = ESsmFireAndForget; - } - -// --------------------------------------------------------------------------- -// r_cmd_devlockcheck -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_devlockcheck - { - priority = 0xFFD7; - severity = ECmdCriticalSeverity; - dllname = "customcmds.dll"; - ordinal = 11; // Device security check - unload_on_finish = ENeverUnload; - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_enableappskey -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_enableappskey - { - priority = 0xFFA7; - severity = ECmdCriticalSeverity; - dllname = "akncustcmds.dll"; - ordinal = 2; // EnableAppsKey - retries = 2; - } - -// --------------------------------------------------------------------------- -// r_cmd_enableglobalnotes -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_enableglobalnotes - { - priority = 0xFFA7; - severity = ECmdCriticalSeverity; - category = 0x101F8773; // KPSUidUikon - key = 0x00000006; // KUikGlobalNotesAllowed - value = 1; - } - -// --------------------------------------------------------------------------- -// r_cmd_kill_splash -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_kill_splash - { - priority = 0xFFE7; - category = 0x101F8766; // KPSUidStartup - key = 0x00000301; // KPSSplashShutdown - value = 101; // ESplashShutdown - } - -// --------------------------------------------------------------------------- -// r_cmd_publishswp -// --------------------------------------------------------------------------- -// -RESOURCE SSM_PUBLISH_SYSTEM_WIDE_PROPERTY r_cmd_publishswp - { - priority = 0xFFF1; - severity = ECmdCriticalSeverity; - } - -// --------------------------------------------------------------------------- -// r_cmd_startanim -// --------------------------------------------------------------------------- -// -RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_startanim - { - priority = 0xFFC7; - severity = ECmdCriticalSeverity; - category = 0x100058F4; // KPSUidStartupApp - key = 0x00000001; // KPSStartupAppState - value = 2; // EStartupAppStateStartAnimations - } - -// --------------------------------------------------------------------------- -// r_cmd_swidaemon -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_swidaemon - { - priority = 0xFF97; - name = "z:\\sys\\bin\\swidaemon.exe"; - execution_behaviour = ESsmWaitForSignal; - monitor_info = r_mon_3_restarts_reset; - } - -// --------------------------------------------------------------------------- -// r_cmd_waitanim -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_waitanim - { - priority = 0xFFB7; - severity = ECmdCriticalSeverity; - dllname = "ssmsystemcmds.dll"; - ordinal = 5; // WaitPsKeyExact - dll_data = r_dlldata_waitanim; - unload_on_finish = ENeverUnload; - retries = 2; - execution_behaviour = ESsmWaitForSignal; - } - -// =========================================================================== -// DLL data items in alphabetical order -// =========================================================================== -// - -// --------------------------------------------------------------------------- -// r_dlldata_waitanim -// --------------------------------------------------------------------------- -// -RESOURCE CMD_PARAM_WAIT_PS r_dlldata_waitanim - { - category = 0x100058F4; // KPSUidStartupApp - key = 0x00000001; // KPSStartupAppState - target = 3; // EStartupAppStateFinished - } - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 startup/stem_usbwatcher_hw.rss --- a/startup/stem_usbwatcher_hw.rss Wed Oct 27 09:59:12 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,105 +0,0 @@ -/* -* Copyright (c) 2009 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: -* Command list for USB Watcher component. -* -*/ - -#include -#include - -#include "ssmsubstateext.hrh" - -// Identify command list type -UID2 KUidSsmCommandListResourceFile - -// --------------------------------------------------------------------------- -// r_entry_point -// This must be the first resource -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point - { - command_list_mapping = r_map; - } - -// --------------------------------------------------------------------------- -// r_map -// Mapping of command list ids to resource ids. -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST_MAPPING r_map - { - mappings = - { - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateCharging; - resource_id = r_cmds_charging; - }, - SSM_COMMANDLISTID_TO_RESOURCEID - { - command_list_id = ESsmStateNonCritical; - resource_id = r_cmds_noncritical; - } - }; - } - -// --------------------------------------------------------------------------- -// r_cmds_noncritical -// --------------------------------------------------------------------------- -// -RESOURCE SSM_COMMAND_LIST r_cmds_noncritical - { - commands = - { - r_cmd_usbwatcher - }; - } - -RESOURCE SSM_COMMAND_LIST r_cmds_charging - { - commands = - { -#ifdef RD_USB_CHARGING - r_cmd_usbwatcher -#endif //RD_USB_CHARGING - }; - } - -// --------------------------------------------------------------------------- -// r_cmd_usbwatcher -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_usbwatcher - { - priority = 0xFFA7; // Same priority can be used in both states - name = "z:\\sys\\bin\\usbwatcher.exe"; - execution_behaviour = ESsmFireAndForget; - conditional_information = r_cond_feat_usb; - monitor_info = r_mon_3_restarts_ignore; - } - -// --------------------------------------------------------------------------- -// r_cond_feat_usb -// --------------------------------------------------------------------------- -// -RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_usb - { - feature_id = KFeatureIdUsb; - } - -// monitoring.rss contains resource definitions, so it may not be included -// before entry point. -#include "stem_monitoring.rss" diff -r 9b61d901414f -r 458d62869c00 syborg_stem/rom_content.csv --- a/syborg_stem/rom_content.csv Wed Oct 27 09:59:12 2010 +0100 +++ b/syborg_stem/rom_content.csv Wed Oct 27 15:25:50 2010 +0100 @@ -249,7 +249,7 @@ private\101F7988\esock_sip.cmi,/epoc32/data/z/private/101f7988/esock_sip.cmi,sipproviders.iby,mw/ipappprotocols,,, private\101F7988\esock_smswap.cmi,/epoc32/data/z/private/101f7988/esock_smswap.cmi,esock.iby,os/commsfw,,, private\101F7988\esock_tr.cmi,/epoc32/data/z/private/101f7988/esock_tr.cmi,esock.iby,os/commsfw,,, -private\101F7988\etel.cmi,/epoc32/data/z/private/101f7988/etel.cmi,etel.iby,os/cellularsrv,,, +private\101F7988\etel.cmi,/epoc32/data/z/private/101f7988/etel.cmi,etel.iby,os/cellularsrv,out,TomP,Must remove this when you remove etel.dll private\101F7989\backup_registration.xml,/epoc32/data/z/private/101f7989/backup_registration.xml,esock_core.iby,os/commsfw,,, Private\101F7989\Bluetooth\bluetooth_stack.ini,/epoc32/data/z/private/101f7989/bluetooth/bluetooth_stack.ini,bluetooth.iby,os/bt,,, Private\101F7989\Bluetooth\cmdq.ini,/epoc32/data/z/private/101f7989/bluetooth/cmdq.ini,hci_framework.iby,os/bt,,, @@ -813,7 +813,7 @@ private\2000B187\cenrep\102818E8.xml,/epoc32/data/z/private/2000b187/cenrep/102818e8.xml,core/mw/psln.iby,mw/classicui,,, private\2000B4D8\backup_registration.xml,/epoc32/data/z/private/2000b4d8/backup_registration.xml,core/mw/WidgetBackupRestore.iby,mw/web,,, private\2000D75B\fail\failcmdlist.rsc,/epoc32/data/z/private/2000d75b/fail/failcmdlist.rsc,core/os/ssmcmdlists.iby,os/devicesrv,out,TomP,Stripped down startup -private\2000D75B\startup\0\noncriticalcmdlist_hw.rsc,/epoc32/data/z/private/2000d75b/hw/noncriticalcmdlist_hw.rsc,core/os/ssmcmdlists.iby,os/devicesrv,stem,WR,Startup script +private\2000D75B\startup\0\noncriticalcmdlist_hw.rsc,/epoc32/data/z/private/2000d75b/hw/noncriticalcmdlist_hw.rsc,core/os/ssmcmdlists.iby,os/devicesrv,out,TomP,Stripped down startup private\2000D75B\startup\0\usbwatcher.rsc,/epoc32/data/z/private/2000d75b/hw/usbwatcher_hw.rsc,core/os/ssmcmdlists.iby,os/devicesrv,out,TomP,Stripped down startup private\2000D75B\startup\0\wserv.rsc,/epoc32/data/z/private/2000d75b/hw/wserv_hw.rsc,core/os/ssmcmdlists.iby,os/devicesrv,stem,WR,Startup script private\2000d75b\normal\gsanormalcmdlist.rsc,/epoc32/data/z/private/2000d75b/normal/gsanormalcmdlist.rsc,core/os/ssmcompatibility.iby,os/devicesrv,,, @@ -3250,7 +3250,7 @@ sys\bin\CTSecDlgs.dll,/epoc32/release/armv5/urel/ctsecdlgs.dll,core/mw/CTSecurityDialogs.iby,mw/securitysrv,,, Sys\Bin\ctsysystemstateplugin.dll,/epoc32/release/armv5/urel/ctsysystemstateplugin.dll,ctsysystemstateplugin.iby,os/cellularsrv,,, Sys\Bin\CUSTOMAPI.DLL,/epoc32/release/armv5/urel/customapi.dll,ctsy.iby,os/cellularsrv,,, -sys\bin\customcmds.dll,/epoc32/release/armv5/urel/customcmds.dll,core/os/ssmcompatibility.iby,os/devicesrv,,, +sys\bin\customcmds.dll,/epoc32/release/armv5/urel/customcmds.dll,core/os/ssmcompatibility.iby,os/devicesrv,stem,TomP,To break dependencies on things no longer needed by startup (eg etel.dll) sys\bin\CustomCommandUtility.dll,/epoc32/release/armv5/urel/customcommandutility.dll,core/os/MMExtFw.iby,os/mm,,, sys\bin\CustomInterfaceBuilder.dll,/epoc32/release/armv5/urel/custominterfacebuilder.dll,core/os/MMExtFw.iby,os/mm,,, sys\bin\CustomInterfaceProxyFactory.dll,/epoc32/release/armv5/urel/custominterfaceproxyfactory.dll,core/os/MMExtFw.iby,adaptation/stubs,,, @@ -3396,7 +3396,7 @@ sys\bin\DrmServiceAPI.dll,/epoc32/release/armv5/urel/drmserviceapi.dll,core/mw/drm5.iby,mw/drm,,, sys\bin\drmserviceapiwrapper.dll,/epoc32/release/armv5/urel/drmserviceapiwrapper.dll,core/mw/drmserviceapiwrapper.iby,mw/drm,,, Sys\Bin\drmsettingsplugin.dll,/epoc32/release/armv5/urel/drmsettingsplugin.dll,core/mw/drmsettingsplugin.iby,mw/drm,,, -sys\bin\DrmStdKeyStorage.dll,/epoc32/release/armv5/urel/drmstdkeystorage.dll,core/mw/drm5.iby,mw/drm,,, +sys\bin\DrmStdKeyStorage.dll,/epoc32/release/armv5/urel/drmstdkeystorage.dll,core/mw/drm5.iby,mw/drm,stem,TomP,Break dependence on etel.dll Sys\Bin\DRMstringdict00.dll,/epoc32/release/armv5/urel/drmstringdict00.dll,rohandler.iby,mw/messagingmw,,, sys\bin\DRMUiHandling.dll,/epoc32/release/armv5/urel/drmuihandling.dll,core/mw/drmutility.iby,mw/drm,,, sys\bin\DRMUiHandlingImpl.dll,/epoc32/release/armv5/urel/drmuihandlingimpl.dll,core/mw/drmutility.iby,mw/drm,,, @@ -3547,7 +3547,7 @@ sys\bin\eswtapifacade.dll,/epoc32/release/armv5/urel/eswtapifacade.dll,core/app/java.iby,app/jrt,,, sys\bin\eswtdirectcontent.dll,/epoc32/release/armv5/urel/eswtdirectcontent.dll,core/app/java.iby,app/jrt,,, sys\bin\eswtphysics.dll,/epoc32/release/armv5/urel/eswtphysics.dll,core/app/java.iby,app/jrt,,, -sys\bin\ETel.dll,/epoc32/release/armv5/urel/etel.dll,etel.iby,os/cellularsrv,,WR,Stem does not support telephony +sys\bin\ETel.dll,/epoc32/release/armv5/urel/etel.dll,etel.iby,os/cellularsrv,out,WR,Stem does not support telephony sys\bin\Etel3rdParty.dll,/epoc32/release/armv5/urel/etel3rdparty.dll,etelisv.iby,os/cellularsrv,,, sys\bin\etelmm.dll,/epoc32/release/armv5/urel/etelmm.dll,etelmm.iby,os/cellularsrv,,, sys\bin\etelpckt.dll,/epoc32/release/armv5/urel/etelpckt.dll,etelpckt.iby,os/cellularsrv,,, @@ -5173,7 +5173,7 @@ sys\bin\RfsServer.exe,/epoc32/release/armv5/urel/rfsserver.exe,core/mw/rfs.iby,mw/appsupport,,, sys\bin\rfstatusswppolicy.dll,/epoc32/release/armv5/urel/rfstatusswppolicy.dll,core/os/ssmcompatibility.iby,os/devicesrv,,, sys\bin\richBio.dll,/epoc32/release/armv5/urel/richbio.dll,core/app/Richbio.iby,app/messaging,,, -sys\bin\RightsServer.EXE,/epoc32/release/armv5/urel/rightsserver.exe,core/mw/drm5.iby,mw/drm,,, +sys\bin\RightsServer.EXE,/epoc32/release/armv5/urel/rightsserver.exe,core/mw/drm5.iby,mw/drm,stem,TomP,Break dependence on etel.dll sys\bin\RingBC.dll,/epoc32/release/armv5/urel/ringbc.dll,core/app/RingBC.iby,app/messaging,,, sys\bin\RLock.exe,/epoc32/release/armv5/urel/rlock.exe,core/mw/RemoteLock.iby,mw/securitysrv,,, sys\bin\RLockSettings.dll,/epoc32/release/armv5/urel/rlocksettings.dll,core/mw/RemoteLock.iby,mw/securitysrv,,, @@ -5181,7 +5181,7 @@ sys\bin\rm_debug.ldd,/epoc32/release/armv5/urel/rm_debug.ldd,rm_debug_svr.iby,os/kernelhwsrv,,, sys\bin\rm_debug_svr.exe,/epoc32/release/armv5/urel/rm_debug_svr.exe,rm_debug_svr.iby,os/kernelhwsrv,,, sys\bin\RoapApp.exe,/epoc32/release/armv5/urel/roapapp.exe,core/mw/CodHandler.iby,mw/web,,WR,application -sys\bin\RoapHandler.DLL,/epoc32/release/armv5/urel/roaphandler.dll,core/mw/drm5.iby,mw/drm,,, +sys\bin\RoapHandler.DLL,/epoc32/release/armv5/urel/roaphandler.dll,core/mw/drm5.iby,mw/drm,stem,TomP,Break dependence on etel.dll Sys\Bin\roapphandler.dll,/epoc32/release/armv5/urel/roapphandler.dll,rohandler.iby,mw/messagingmw,,, Sys\Bin\roaptcontenthandler.dll,/epoc32/release/armv5/urel/roaptcontenthandler.dll,rohandler.iby,mw/messagingmw,,, Sys\Bin\rocontenthandler.dll,/epoc32/release/armv5/urel/rocontenthandler.dll,rohandler.iby,mw/messagingmw,,, diff -r 9b61d901414f -r 458d62869c00 syborg_stem/static_dependencies.txt --- a/syborg_stem/static_dependencies.txt Wed Oct 27 09:59:12 2010 +0100 +++ b/syborg_stem/static_dependencies.txt Wed Oct 27 15:25:50 2010 +0100 @@ -1223,10 +1223,10 @@ private\2000D75B\startup\0\noncriticalcmdlist.rsc /epoc32/data/z/private/2000d75b/startup/0/stem_noncriticalcmdlist.rsc sys\bin\customcmds.dll private\2000D75B\startup\0\noncriticalcmdlist_ext.rsc /epoc32/data/z/private/2000d75b/startup/0_ext/noncriticalcmdlist_ext.rsc sys\bin\ALWAYSONLINESTARTER.exe:sys\bin\CBSSERVER.EXE:sys\bin\DMUtilServer.exe:sys\bin\Ncnlist.exe:sys\bin\SATSERVER.EXE:sys\bin\Schexe.exe:sys\bin\contentharvester.exe:sys\bin\dcmostartupcustcmd.dll:sys\bin\emailservermonitor.exe:sys\bin\epos_omasupllistener.exe:sys\bin\fotacustcmds.dll:sys\bin\gsserver.exe:sys\bin\ippushman.exe:sys\bin\javacaptain.exe:sys\bin\lbtserver.exe:sys\bin\lockapp.exe:sys\bin\locod.exe:sys\bin\mdswatchdog.exe:sys\bin\pocstarter.exe:sys\bin\predefinedContacts.exe:sys\bin\rsfwbootmounter.exe:sys\bin\ssmnoncriticalswppolicy.dll:sys\bin\ssmsystemcmds.dll:sys\bin\taskswitcher.exe:sys\bin\vcommandmanager.exe:sys\bin\watcher.exe:sys\bin\xnthemeserver.exe private\2000D75B\startup\0\noncriticalcmdlist_hw.rsc /epoc32/data/z/private/2000d75b/hw/stem_noncriticalcmdlist_hw.rsc sys\bin\Dataconnectionlogger.exe:sys\bin\DevEncStarter.exe:sys\bin\ProvisioningSC.exe:sys\bin\RLock.exe:sys\bin\sipprofilesrv.exe:sys\bin\ssmactivitycmd.dll -private\2000D75B\startup\0\preuiservicescmdlist.rsc /epoc32/data/z/private/2000d75b/startup/0/stem_preuiservicescmdlist.rsc Sys\bin\sysmon.exe:sys\bin\customcmds.dll:sys\bin\ssmdiskreserver.exe:sys\bin\ssmsystemcmds.dll:sys\bin\ssmutilsrv.exe:sys\bin\startupprofiling.exe:sys\bin\sysagt2svr.exe +private\2000D75B\startup\0\preuiservicescmdlist.rsc /epoc32/data/z/private/2000d75b/startup/0/stem_preuiservicescmdlist.rsc Sys\bin\sysmon.exe:sys\bin\customcmds.dll:sys\bin\ssmsystemcmds.dll:sys\bin\ssmutilsrv.exe:sys\bin\sysagt2svr.exe private\2000D75B\startup\0\securitycheckcmdlist.rsc /epoc32/data/z/private/2000d75b/startup/0/securitycheckcmdlist.rsc sys\bin\TouchScreenCalib.exe:sys\bin\ailaunch.exe:sys\bin\clockserver.exe:sys\bin\customcmds.dll:sys\bin\matrixmenu.exe:sys\bin\phoneui.exe:sys\bin\ssm.swp.policy.simstatus.dll:sys\bin\ssmclayersup.dll:sys\bin\startup.exe:sys\bin\tsccustcmds.dll private\2000D75B\startup\0\selftestokcmdlist.rsc /epoc32/data/z/private/2000d75b/startup/0/selftestokcmdlist.rsc sys\bin\customcmds.dll -private\2000D75B\startup\0\uiservicescmdlist.rsc /epoc32/data/z/private/2000d75b/startup/0/stem_uiservicescmdlist.rsc sys\bin\SplashScreen.exe:sys\bin\akncustcmds.dll:sys\bin\customcmds.dll:sys\bin\rfscustcmd.dll:sys\bin\ssmpowersup.dll +private\2000D75B\startup\0\uiservicescmdlist.rsc /epoc32/data/z/private/2000d75b/startup/0/stem_uiservicescmdlist.rsc sys\bin\SplashScreen.exe:sys\bin\akncustcmds.dll:sys\bin\customcmds.dll:sys\bin\ssmpowersup.dll private\2000D75B\startup\0\uiservicescmdlist_ext.rsc /epoc32/data/z/private/2000d75b/startup/0_ext/uiservicescmdlist_ext.rsc sys\bin\DBRECOVERY.EXE:sys\bin\HWRMServer.exe:sys\bin\MediatorServer.exe:sys\bin\cntsrv.exe:sys\bin\tzserver.exe private\2000D75B\startup\0\usbwatcher.rsc /epoc32/data/z/private/2000d75b/hw/usbwatcher_hw.rsc sys\bin\usbwatcher.exe private\2000D75B\startup\0\wserv.rsc /epoc32/data/z/private/2000d75b/hw/stem_wserv_hw.rsc sys\bin\EwSrv.exe @@ -1926,7 +1926,7 @@ sys\bin\DrmRightsInfoImpl.dll /epoc32/release/armv5/urel/drmrightsinfoimpl.dll sid=10282e25:DrmServerInterfaces[101f6db5].dll:charconv[10003b11].dll:drmutilitycommon[10283302].dll:drtaeabi.dll:euser[100039e5].dll:scppnwdl.dll sys\bin\DrmServerInterfaces.DLL /epoc32/release/armv5/urel/drmserverinterfaces.dll sid=101f6db5:DrmCrypto[101f6db9].dll:DrmRights[10205cae].dll:crypto[10005e0b].dll:drtaeabi.dll:efsrv[100039e4].dll:estor[10003b0d].dll:euser[100039e5].dll:featmgr[10005a2b].dll:hash[10005e11].dll:inetprotutil[100041d1].dll:scppnwdl.dll:x509[10005e0e].dll sys\bin\DrmServiceAPI.dll /epoc32/release/armv5/urel/drmserviceapi.dll sid=10282cb1:DrmServerInterfaces[101f6db5].dll:drtaeabi.dll:euser[100039e5].dll:scppnwdl.dll -sys\bin\DrmStdKeyStorage.dll /epoc32/release/armv5/urel/drmstdkeystorage.dll sid=10205caf:asn1[10005e09].dll:cryptography[101fd20b].dll:crypto[10005e0b].dll:drtaeabi.dll:efsrv[100039e4].dll:etelmm[100064dd].dll:etel[10003d46].dll:euser[100039e5].dll:featmgr[10005a2b].dll:hash[10005e11].dll:platformenv[101f857f].dll:random[10005e12].dll:scppnwdl.dll:x500[10005e0d].dll:x509[10005e0e].dll +sys\bin\DrmStdKeyStorage.dll /epoc32/release/armv5/urel/stem_drmstdkeystorage.dll sid=10205caf:asn1[10005e09].dll:cryptography[101fd20b].dll:crypto[10005e0b].dll:drtaeabi.dll:efsrv[100039e4].dll:euser[100039e5].dll:featmgr[10005a2b].dll:hash[10005e11].dll:platformenv[101f857f].dll:random[10005e12].dll:scppnwdl.dll:x500[10005e0d].dll:x509[10005e0e].dll sys\bin\DrmUtilityDmgrWrapper.dll /epoc32/release/armv5/urel/drmutilitydmgrwrapper.dll sid=102830fe:CommonEngine[100058fe].dll:DownloadMgr[10008d5f].dll:ROAPHandler[101f6db5].dll:avkon[100056c6].dll:centralrepository[101fbc70].dll:cmmanager[10207376].dll:drtaeabi.dll:efsrv[100039e4].dll:eikctl[1000489c].dll:euser[100039e5].dll:platformenv[101f857f].dll:scppnwdl.dll sys\bin\Dtdmdl.dll /epoc32/release/armv5/urel/dtdmdl.dll sid=10005177:bnf[10005183].dll:drtaeabi.dll:efsrv[100039e4].dll:euser[100039e5].dll:scppnwdl.dll:wnode[100041f7].dll:wutil[1000517c].dll sys\bin\EAacPlusDecoderIntfc.dll /epoc32/release/armv5/urel/eaacplusdecoderintfc.dll sid=10207b1e:euser[100039e5].dll:mediaclientaudiostream[10003996].dll:mmfdevsound[100058cc].dll @@ -2337,10 +2337,10 @@ sys\bin\RestrictedAudioOutputProxy.dll /epoc32/release/armv5/urel/restrictedaudiooutputproxy.dll sid=10207b98:RestrictedAudioOutput[10207b95].dll:drtaeabi.dll:euser[100039e5].dll:mmfdevsound[100058cc].dll:scppnwdl.dll sys\bin\ReverseGeocode.dll /epoc32/release/armv5/urel/reversegeocode.dll sid=ef7e39a4:bafl[10003a0f].dll:charconv[10003b11].dll:cmmanager[10207376].dll:drtaeabi.dll:esock[10003d3f].dll:euser[100039e5].dll:extendedconnpref[20027034].dll:http[1000a441].dll:inetprotutil[100041d1].dll:lbs[101f97b1].dll:netmeta[1020430b].dll:scppnwdl.dll:xmlframework[101fadcc].dll sys\bin\RfsServer.exe /epoc32/release/armv5/urel/rfsserver.exe sid=102073ea:drtaeabi.dll:euser[100039e5].dll:rfs[10005984].dll -sys\bin\RightsServer.EXE /epoc32/release/armv5/urel/rightsserver.exe sid=101f51f2:DcfRep[10205ca9].dll:DrmCrypto[101f6db9].dll:DrmKeyStorage[10205caa].dll:DrmParsers[10205cad].dll:DrmRights[10205cae].dll:DrmServerInterfaces[101f6db5].dll:abclient[10202d2d].dll:asn1[10005e09].dll:bafl[10003a0f].dll:centralrepository[101fbc70].dll:charconv[10003b11].dll:cryptography[101fd20b].dll:crypto[10005e0b].dll:drtaeabi.dll:drtrvct2_2.dll:edbms[10003b0e].dll:efsrv[100039e4].dll:eposindicator[101f7a7a].dll:estor[10003b0d].dll:etelmm[100064dd].dll:etel[10003d46].dll:euser[100039e5].dll:featmgr[10005a2b].dll:hash[10005e11].dll:inetprotutil[100041d1].dll:lbs[101f97b1].dll:platformenv[101f857f].dll:random[10005e12].dll:scppnwdl.dll:starterclient[100059ca].dll:sysutil[10005943].dll:wmdrmfileserverclient[2000b181].dll:x500[10005e0d].dll:x509[10005e0e].dll +sys\bin\RightsServer.EXE /epoc32/release/armv5/urel/stem_rightsserver.exe sid=101f51f2:DcfRep[10205ca9].dll:DrmCrypto[101f6db9].dll:DrmKeyStorage[10205caa].dll:DrmParsers[10205cad].dll:DrmRights[10205cae].dll:DrmServerInterfaces[101f6db5].dll:abclient[10202d2d].dll:asn1[10005e09].dll:bafl[10003a0f].dll:centralrepository[101fbc70].dll:charconv[10003b11].dll:cryptography[101fd20b].dll:crypto[10005e0b].dll:drtaeabi.dll:drtrvct2_2.dll:edbms[10003b0e].dll:efsrv[100039e4].dll:eposindicator[101f7a7a].dll:estor[10003b0d].dll:euser[100039e5].dll:featmgr[10005a2b].dll:hash[10005e11].dll:inetprotutil[100041d1].dll:lbs[101f97b1].dll:platformenv[101f857f].dll:random[10005e12].dll:scppnwdl.dll:starterclient[100059ca].dll:sysutil[10005943].dll:wmdrmfileserverclient[2000b181].dll:x500[10005e0d].dll:x509[10005e0e].dll sys\bin\RingBC.dll /epoc32/release/armv5/urel/ringbc.dll sid=101f4cdc:AKNSKINS[10005a26].dll:AknLayout2Scalable[102040d7].dll:CdlEngine[101f8243].dll:CommonEngine[100058fe].dll:MsgEditorUtils[100007aa].dll:avkon[100056c6].dll:bafl[10003a0f].dll:centralrepository[101fbc70].dll:cone[10003a41].dll:drtaeabi.dll:efsrv[100039e4].dll:egul[100048a2].dll:eikcoctl[1000489e].dll:eikcore[10004892].dll:eikctl[1000489c].dll:etext[10003a1c].dll:euser[100039e5].dll:featmgr[10005a2b].dll:form[10003b27].dll:gdi[10003b15].dll:msgeditormediacontrol[102072e7].dll:msgeditormodel[100058bf].dll:msgs[10004e66].dll:platformenv[101f857f].dll:scppnwdl.dll sys\bin\RoapApp.exe /epoc32/release/armv5/urel/roapapp.exe sid=10008d64:AKNSKINS[10005a26].dll:CommonEngine[100058fe].dll:CommonUI[100058fd].dll:DcfRep[10205ca9].dll:DownloadMgr[10008d5f].dll:DrmRights[10205cae].dll:ROAPHandler[101f6db5].dll:apgrfx[10003a3c].dll:apmime[10003a1a].dll:apparc[10003a3d].dll:avkon[100056c6].dll:caf.dll:centralrepository[101fbc70].dll:cone[10003a41].dll:drtaeabi.dll:efsrv[100039e4].dll:eikcoctl[1000489e].dll:eikcore[10004892].dll:eikdlg[10004898].dll:euser[100039e5].dll:featmgr[10005a2b].dll:hlplch[101f423b].dll:scppnwdl.dll -sys\bin\RoapHandler.DLL /epoc32/release/armv5/urel/roaphandler.dll sid=101f6db5:CommonUI[100058fd].dll:DcfRep[10205ca9].dll:DrmCrypto[101f6db9].dll:DrmParsers[10205cad].dll:DrmRights[10205cae].dll:DrmServerInterfaces[101f6db5].dll:HttpFilterCommon[101f8711].dll:apmime[10003a1a].dll:bafl[10003a0f].dll:caf.dll:centralrepository[101fbc70].dll:charconv[10003b11].dll:cmmanager[10207376].dll:commdb[10004e1c].dll:crypto[10005e0b].dll:drmroapwbxmlparser[200113bf].dll:drtaeabi.dll:drtrvct2_2.dll:ecom[10009d8e].dll:efsrv[100039e4].dll:esock[10003d3f].dll:etelmm[100064dd].dll:etel[10003d46].dll:euser[100039e5].dll:featmgr[10005a2b].dll:flogger[10004d0a].dll:hash[10005e11].dll:http[1000a441].dll:inetprotutil[100041d1].dll:platformenv[101f857f].dll:random[10005e12].dll:scppnwdl.dll:sysutil[10005943].dll:x500[10005e0d].dll:x509[10005e0e].dll:xmlframework[101fadcc].dll +sys\bin\RoapHandler.DLL /epoc32/release/armv5/urel/stem_roaphandler.dll sid=101f6db5:CommonUI[100058fd].dll:DcfRep[10205ca9].dll:DrmCrypto[101f6db9].dll:DrmParsers[10205cad].dll:DrmRights[10205cae].dll:DrmServerInterfaces[101f6db5].dll:HttpFilterCommon[101f8711].dll:apmime[10003a1a].dll:bafl[10003a0f].dll:caf.dll:centralrepository[101fbc70].dll:cmmanager[10207376].dll:commdb[10004e1c].dll:crypto[10005e0b].dll:drmroapwbxmlparser[200113bf].dll:drtaeabi.dll:drtrvct2_2.dll:ecom[10009d8e].dll:efsrv[100039e4].dll:esock[10003d3f].dll:euser[100039e5].dll:featmgr[10005a2b].dll:flogger[10004d0a].dll:hash[10005e11].dll:http[1000a441].dll:inetprotutil[100041d1].dll:platformenv[101f857f].dll:random[10005e12].dll:scppnwdl.dll:x500[10005e0d].dll:x509[10005e0e].dll:xmlframework[101fadcc].dll sys\bin\RoomLevelEffect.dll /epoc32/release/armv5/urel/roomleveleffect.dll sid=10207b3c:CustomInterfaceUtility[101fafe1].dll:EffectBase[101fafdd].dll:drtaeabi.dll:euser[100039e5].dll:mediaclientaudioinputstream[10003998].dll:mediaclientaudiostream[10003996].dll:mediaclientaudio[10003992].dll:mmfdevsound[100058cc].dll:scppnwdl.dll sys\bin\RoomLevelMessageHandler.dll /epoc32/release/armv5/urel/roomlevelmessagehandler.dll sid=10207b3e:EffectBase[101fafdd].dll:drtaeabi.dll:euser[100039e5].dll:mmfcontrollerframework[101f76dd].dll:scppnwdl.dll sys\bin\RoomLevelProxy.dll /epoc32/release/armv5/urel/roomlevelproxy.dll sid=10207b3d:EffectBase[101fafdd].dll:RoomLevelEffect[10207b3c].dll:drtaeabi.dll:euser[100039e5].dll:mmfcontrollerframework[101f76dd].dll:scppnwdl.dll @@ -2829,7 +2829,7 @@ sys\bin\cshelp.exe /epoc32/release/armv5/urel/cshelp.exe sid=10005234:AKNSKINS[10005a26].dll:AknLayout2Scalable[102040d7].dll:AknNotify[010f9a43].dll:CdlEngine[101f8243].dll:HelpEngine[0bc03cd8].dll:apgrfx[10003a3c].dll:apmime[10003a1a].dll:apparc[10003a3d].dll:avkon[100056c6].dll:charconv[10003b11].dll:cone[10003a41].dll:dfpaeabi.dll:drtaeabi.dll:efsrv[100039e4].dll:eikcoctl[1000489e].dll:eikcore[10004892].dll:eikctl[1000489c].dll:etext[10003a1c].dll:euser[100039e5].dll:featmgr[10005a2b].dll:gdi[10003b15].dll:scppnwdl.dll sys\bin\ctfinder.dll /epoc32/release/armv5/urel/ctfinder.dll sid=102020e5:ctframework[101f4e47].dll:drtaeabi.dll:ecom[10009d8e].dll:euser[100039e5].dll:scppnwdl.dll sys\bin\ctframework.dll /epoc32/release/armv5/urel/ctframework.dll sid=101f4e47:drtaeabi.dll:estor[10003b0d].dll:euser[100039e5].dll:scppnwdl.dll -sys\bin\customcmds.dll /epoc32/release/armv5/urel/customcmds.dll sid=2000e662:bafl[10003a0f].dll:centralrepository[101fbc70].dll:drtaeabi.dll:efsrv[100039e4].dll:etelmm[100064dd].dll:etel[10003d46].dll:euser[100039e5].dll:scppnwdl.dll:ssmadaptationcli[2000d75e].dll:ssmcmn[2000d762].dll:ssmsuscli[2000d75c].dll:ssmuiproviderdll[2000e665].dll +sys\bin\customcmds.dll /epoc32/release/armv5/urel/stem_customcmds.dll sid=2000e662:bafl[10003a0f].dll:centralrepository[101fbc70].dll:drtaeabi.dll:efsrv[100039e4].dll:euser[100039e5].dll:scppnwdl.dll:ssmadaptationcli[2000d75e].dll:ssmcmn[2000d762].dll:ssmuiproviderdll[2000e665].dll sys\bin\custrestartsys.dll /epoc32/release/armv5/urel/custrestartsys.dll sid=20021349:ssmcmn[2000d762].dll sys\bin\d_ftrace.ldd /epoc32/release/armv5/urel/d_ftrace.ldd sid=00000000:ekern[100041af].exe sys\bin\dbusdaemon.exe /epoc32/release/armv5/urel/dbusdaemon.exe sid=20010155:dfpaeabi.dll:drtaeabi.dll:efsrv[100039e4].dll:euser[100039e5].dll:libc[10207369].dll:libdbus-utils[20010154].dll:libdbus[20010153].dll:xmlengine[10285ef9].dll diff -r 9b61d901414f -r 458d62869c00 syborg_stem/syborg_stem_rom.oby --- a/syborg_stem/syborg_stem_rom.oby Wed Oct 27 09:59:12 2010 +0100 +++ b/syborg_stem/syborg_stem_rom.oby Wed Oct 27 15:25:50 2010 +0100 @@ -108,11 +108,8 @@ file=\epoc32\release\ARMV5\urel\domainSrv.exe "sys\bin\domainSrv.exe" file=\epoc32\release\ARMV5\urel\domainCli.dll "sys\bin\domainCli.dll" file=\epoc32\release\ARMV5\urel\domainPolicy.dll "sys\bin\domainPolicy.dll" -file=\epoc32\release\ARMV5\urel\usbdescriptors.dll "sys\bin\usbdescriptors.dll" -file=\epoc32\release\ARMV5\urel\usbdi_utils.dll "sys\bin\usbdi_utils.dll" file=\epoc32\release\ARMV5\urel\usbhostms.pxy "sys\bin\usbhostms.pxy" file=\epoc32\release\ARMV5\urel\usbhostmsclient.dll "sys\bin\usbhostmsclient.dll" -file=\epoc32\release\ARMV5\urel\usbhostmssrv.exe "sys\bin\usbhostmssrv.exe" file=\epoc32\release\ARMV5\urel\_generic_scdv.dll "sys\bin\ScDv.dll" data=\epoc32\data\Z\Resource\avkon.rsc "resource\avkon.rsc" data=\epoc32\data\Z\Private\200159c0\install\desktop_20026f4f\xuikon\00\desktop.o0000 "private\200159c0\install\desktop_20026f4f\xuikon\00\desktop.o0000" @@ -133,16 +130,11 @@ REM "OPENWFCLIB_DRV" : file=\epoc32\release\ARMV5\urel\3gplibrary.dll "sys\bin\3gplibrary.dll" file=\epoc32\release\ARMV5\urel\3GPMP4LIB.DLL "sys\bin\3GPMP4LIB.DLL" -file=\epoc32\release\ARMV5\urel\mmfdevsound.dll "sys\bin\mmfdevsound.dll" file=\epoc32\release\ARMV5\urel\mmfaudioserverproxy.dll "sys\bin\mmfaudioserverproxy.dll" -file=\epoc32\release\ARMV5\urel\mmfdevsoundproxy.dll "sys\bin\mmfdevsoundproxy.dll" -file=\epoc32\release\ARMV5\urel\mmfdevsoundserver.dll "sys\bin\mmfdevsoundserver.dll" file=\epoc32\release\ARMV5\urel\a3ffourcclookup.dll "sys\bin\a3ffourcclookup.dll" file=\epoc32\release\ARMV5\urel\mmfaudioserverfactory.dll "sys\bin\mmfaudioserverfactory.dll" -file=\epoc32\release\ARMV5\urel\mmfaudioserver.dll "sys\bin\mmfaudioserver.dll" file=\epoc32\release\ARMV5\urel\mmfdevsoundadaptor.dll "sys\bin\mmfdevsoundadaptor.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, a3fFourCCConvertorPlugin.dll , a3fFourCCConvertorPlugin.dll ) -file=\epoc32\release\ARMV5\urel\mmfaudioserverstart.exe "sys\bin\mmfaudioserverstart.exe" file=\epoc32\release\ARMV5\urel\abtestclient.EXE "sys\bin\abtestclient.EXE" file=\epoc32\release\ARMV5\urel\abtestclient2.EXE "sys\bin\abtestclient2.EXE" file=\epoc32\release\ARMV5\urel\abtestclient3.EXE "sys\bin\abtestclient3.EXE" @@ -248,13 +240,9 @@ file=\epoc32\release\ARMV5\urel\asnpkcs.dll "sys\bin\asnpkcs.dll" REM File token libraries configurable files data=\epoc32\data\Z\Resource\fstokenserver.RSC "resource\fstokenserver.RSC" -file=\epoc32\release\ARMV5\urel\SpeechRecognitionUtility.dll "sys\bin\SpeechRecognitionUtility.dll" file=\epoc32\release\ARMV5\urel\SpeechRecognitionData.dll "sys\bin\SpeechRecognitionData.dll" -file=\epoc32\release\ARMV5\urel\SpeechRecognitionCustomCommands.dll "sys\bin\SpeechRecognitionCustomCommands.dll" REM For components that use the Autotest framework file=\epoc32\release\ARMV5\urel\autotest.dll "sys\bin\autotest.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aviplaycontroller.dll , aviplaycontroller.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, avirecordcontroller.dll , avirecordcontroller.dll ) file=\epoc32\release\ARMV5\urel\devsubtitle.dll "sys\bin\devsubtitle.dll" file=\epoc32\release\ARMV5\urel\srtdecoder.dll "sys\bin\srtdecoder.dll" REM FLOGGER - logging support @@ -268,7 +256,6 @@ file=\epoc32\release\ARMV5\urel\bifu.dll "sys\bin\bifu.dll" file=\epoc32\release\ARMV5\urel\biut.dll "sys\bin\biut.dll" file=\epoc32\release\ARMV5\urel\biodb.dll "sys\bin\biodb.dll" -file=\epoc32\release\ARMV5\urel\BioWatcher.dll "sys\bin\BioWatcher.dll" REM The Message Server file=\epoc32\release\ARMV5\urel\msexe.exe "sys\bin\MSexe.exe" heapmax= 0x400000 file=\epoc32\release\ARMV5\urel\msgs.dll "sys\bin\MSGS.dll" @@ -293,7 +280,6 @@ file=\epoc32\release\ARMV5\urel\ecom.dll "sys\bin\ECom.dll" file=\epoc32\release\ARMV5\urel\ecomserver.exe "sys\bin\EComServer.exe" file=\epoc32\release\ARMV5\urel\ecompatchdata.dll "sys\bin\EComPatchData.dll" -file=\epoc32\release\ARMV5\urel\usbman.dll "sys\bin\usbman.dll" data=\epoc32\data\Z\Private\101fe1db\backup_registration.xml "private\101fe1db\backup_registration.xml" file=\epoc32\release\ARMV5\urel\usblogger.dll "sys\bin\usblogger.dll" REM Feature USB is not included in this ROM (usbman.iby) @@ -406,39 +392,23 @@ REM faxstrm.dll REM faxsvr.DLL REM faxcli.DLL -file=\epoc32\release\ARMV5\urel\etel.dll "sys\bin\ETel.dll" -data=\epoc32\data\z\private\101F7988\etel.cmi "private\101F7988\etel.cmi" -patchdata etel.dll@KPriorityClientSid 0x10281806 -patchdata etel.dll@KLocationServicesNetworkGatewaySid 0x10281806 -patchdata etel.dll@KSatEngineSid 0x10281806 REM Multimode Etel -file=\epoc32\release\ARMV5\urel\etelmm.dll "sys\bin\etelmm.dll" -file=\epoc32\release\ARMV5\urel\GsmU.dll "sys\bin\GsmU.dll" -file=\epoc32\release\ARMV5\urel\SmsU.dll "sys\bin\SmsU.dll" -file=\epoc32\release\ARMV5\urel\SmsProt.prt "sys\bin\SmsProt.prt" -file=\epoc32\release\ARMV5\urel\WapProt.prt "sys\bin\WapProt.prt" data=\epoc32\data\Z\Private\101F7989\sms\smsu.rsc "private\101F7989\sms\smsu.rsc" data=\epoc32\data\Z\Private\101F7989\esock\smswap.Sms.esk "private\101F7989\esock\smswap.Sms.esk" data=\epoc32\data\Z\Private\101F7989\esock\smswap.Wap.esk "private\101F7989\esock\smswap.Wap.esk" -file=\epoc32\release\ARMV5\urel\smcm.dll "sys\bin\smcm.dll" -file=\epoc32\release\ARMV5\urel\smss.dll "sys\bin\smss.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, smsgetdetdescdefault.dll , smsgetdetdescdefault.dll ) data=\epoc32\data\Z\resource\messaging\smss.RSC "resource\messaging\smss.RSC" REM The NBsWatcher Class0SMS Plugin __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, class0sms.dll , class0sms.dll ) REM The Bio NBS\SMS Watcher -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nbswatcher.dll , nbswatcher.dll ) REM Bio Parsers file=\epoc32\release\ARMV5\urel\cbcp.dll "sys\bin\cbcp.dll" file=\epoc32\release\ARMV5\urel\enp.dll "sys\bin\enp.dll" -file=\epoc32\release\ARMV5\urel\iacp.dll "sys\bin\iacp.dll" file=\epoc32\release\ARMV5\urel\gfp.dll "sys\bin\gfp.dll" file=\epoc32\release\ARMV5\urel\wapp.dll "sys\bin\wapp.dll" data=\epoc32\data\Z\resource\messaging\wappstr.RSC "resource\messaging\wappstr.RSC" file=\epoc32\release\ARMV5\urel\wapmsgcli.dll "sys\bin\wapmsgcli.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, swswapmsg.dll , swswapmsg.dll ) REM The Bio WAP\SMS Watcher -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wapwatcher.dll , wapwatcher.dll ) REM Bitmapped graphics file=\epoc32\release\ARMV5\urel\bitgdi_gce.dll "sys\bin\BitGdi.dll" REM bitmap transforms @@ -764,7 +734,7 @@ data=\epoc32\data\z\system\install\c32exe.sis "system\install\c32exe.sis" file=\epoc32\release\ARMV5\urel\conditionevaluator.dll "sys\bin\conditionevaluator.dll" REM Cone -file=\epoc32\release\ARMV5\urel\cone.dll "sys\bin\Cone.dll" +file=\epoc32\release\ARMV5\urel\stem_cone.dll "sys\bin\Cone.dll" REM #if !defined( ) REM Patchable constant for setting parent-pointers automatically or not. REM 1 = True, 0 = False. Default is True. @@ -783,10 +753,7 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, coreprovidersecom.dll , coreprovidersecom.dll ) REM Window Server CSC Plugins __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, 10286506.dll , 10286506.dll ) -file=\epoc32\release\ARMV5\urel\COMMONTSY.DLL "Sys\Bin\COMMONTSY.DLL" data=\epoc32\data\Z\Private\101f7989\operatorVariants.ini "private\101f7989\operatorVariants.ini" -file=\epoc32\release\ARMV5\urel\CUSTOMAPI.DLL "Sys\Bin\CUSTOMAPI.DLL" -file=\epoc32\release\ARMV5\urel\PHONETSY.TSY "Sys\Bin\PHONETSY.TSY" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ctsysystemstateplugin.dll , ctsysystemstateplugin.dll ) REM Additional things in System\Samples REM Use "Re-install sample files" in the RefUI shell Tools menu @@ -844,9 +811,7 @@ REM For the benefit of base\f32\etshell data=\epoc32\data\Z\Private\10003a3f\APPS\eshell_reg.rsc "Private\10003a3f\Apps\eshell_reg.rsc" file=\epoc32\release\ARMV5\urel\messageintercept.esockdebug.dll "sys\bin\messageintercept.esockdebug.dll" -file=\epoc32\release\ARMV5\urel\Etel3rdParty.dll "sys\bin\Etel3rdParty.dll" REM Multimode ETel Packet API -file=\epoc32\release\ARMV5\urel\etelpckt.dll "sys\bin\etelpckt.dll" REM LAN CFProtocol and Packet Drivers file=\epoc32\release\ARMV5\urel\EthInt.nif "sys\bin\EthInt.nif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ether802.dll , ether802.dll ) @@ -903,7 +868,6 @@ file=\epoc32\release\ARMV5\urel\fbsrasterizer_stub.dll "sys\bin\fbsrasterizer.dll" file=\epoc32\release\ARMV5\urel\fdcbase.dll "sys\bin\fdcbase.dll" file=\epoc32\release\ARMV5\urel\usbhoststack.dll "sys\bin\usbhoststack.dll" -file=\epoc32\release\ARMV5\urel\fdf.exe "sys\bin\fdf.exe" file=\epoc32\release\ARMV5\urel\featdiscovery.dll "sys\bin\featdiscovery.dll" file=\epoc32\release\ARMV5\urel\featmgr.dll "sys\bin\featmgr.dll" file=\epoc32\release\ARMV5\urel\featmgrserver.exe "sys\bin\featmgrserver.exe" @@ -1119,7 +1083,6 @@ REM Feature DHCP is not included in this ROM REM Feature DHCP is not included in this ROM REM ESock IP Protocol Meta and Connection Provider -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ipproto.dll , ipproto.dll ) REM IPSEC protocol and other core components REM Feature IPSEC not included in this rom REM Mobility Core Providers @@ -1190,7 +1153,6 @@ data=\epoc32\data\Z\Resource\nlabtgpspsyconstants.rsc "resource\nlabtgpspsyconstants.rsc" data=\epoc32\data\Z\Resource\nlabtgpspsy_name.rsc "resource\nlabtgpspsy_name.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eposdefault.dll , eposdefault.dll ) -file=\epoc32\release\ARMV5\urel\locationmonitor.exe "sys\bin\locationmonitor.exe" file=\epoc32\release\ARMV5\urel\eposserver.exe "sys\bin\eposserver.exe" data=\epoc32\data\Z\private\101f97b2\eposserver.rsc "private\101f97b2\eposserver.rsc" data=\epoc32\data\Z\private\101f97b2\backup_registration.xml "private\101f97b2\backup_registration.xml" @@ -1198,7 +1160,6 @@ REM LBS Quality Profile API file=\epoc32\release\ARMV5\urel\lbsqualityprofileapi.dll "sys\bin\lbsqualityprofileapi.dll" REM LBS Network Gateway -file=\epoc32\release\ARMV5\urel\lbsnetgateway.exe "sys\bin\lbsnetgateway.exe" REM LBS Network Simulator file=\epoc32\release\ARMV5\urel\lbsnetsim.exe "sys\bin\lbsnetsim.exe" file=\epoc32\release\ARMV5\urel\lbsnetsim.dll "sys\bin\lbsnetsim.dll" @@ -1230,17 +1191,10 @@ file=\epoc32\release\ARMV5\urel\loadlafshutdown.dll "sys\bin\loadlafshutdown.dll" file=\epoc32\release\ARMV5\urel\LOOPBACK.CSY "sys\bin\LOOPBACK.CSY" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mbmsparams.dll , mbmsparams.dll ) -file=\epoc32\release\ARMV5\urel\omxcomponent.dll "sys\bin\omxcomponent.dll" file=\epoc32\release\ARMV5\urel\puresolverutils.dll "sys\bin\puresolverutils.dll" file=\epoc32\release\ARMV5\urel\mdasoundadapter.dll "sys\bin\mdasoundadapter.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mdfvideoencodehwdeviceadapter.dll , mdfvideoencodehwdeviceadapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mdfvideodecodehwdeviceadapter.dll , mdfvideodecodehwdeviceadapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mdfaudiohwdeviceadapter.dll , mdfaudiohwdeviceadapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, puloader.dll , puloader.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, codecapiresolver.dll , codecapiresolver.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, audiodevice.dll , audiodevice.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vorbisdecoderprocessingunit.dll , vorbisdecoderprocessingunit.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vorbisencoderprocessingunit.dll , vorbisencoderprocessingunit.dll ) REM Store, Etext, Form, Grid, Clock, Print, AlarmServer, WorldServer, Bafl, Egul, Cone, Dial, BmpAnim REM STORE file=\epoc32\release\ARMV5\urel\estor.dll "sys\bin\EStor.dll" @@ -1276,43 +1230,25 @@ file=\epoc32\release\ARMV5\urel\sysutilsetup.exe "sys\bin\sysutilsetup.exe" REM NumberConversion.dll file=\epoc32\release\ARMV5\urel\NumberConversion.dll "sys\bin\NumberConversion.dll" -file=\epoc32\release\ARMV5\urel\MidiClient.dll "sys\bin\MidiClient.dll" -file=\epoc32\release\ARMV5\urel\MidiStandardCustomCommands.dll "sys\bin\MidiStandardCustomCommands.dll" -file=\epoc32\release\ARMV5\urel\omxilgenericilif.dll "sys\bin\omxilgenericilif.dll" REM WAP 1.2 Push file=\epoc32\release\ARMV5\urel\miscpushmsgutils.dll "sys\bin\miscpushmsgutils.dll" data=\epoc32\data\Z\RESOURCE\messaging\wappushunknown.RSC "resource\messaging\wappushunknown.RSC" file=\epoc32\release\ARMV5\urel\mmcommon.dll "sys\bin\mmcommon.dll" file=\epoc32\release\ARMV5\urel\MmCommonUtils.dll "sys\bin\MmCommonUtils.dll" -file=\epoc32\release\ARMV5\urel\MmfServerBaseclasses.dll "sys\bin\MmfServerBaseclasses.dll" file=\epoc32\release\ARMV5\urel\MediaClient.dll "sys\bin\MediaClient.dll" -file=\epoc32\release\ARMV5\urel\MediaClientUtility.dll "sys\bin\MediaClientUtility.dll" -file=\epoc32\release\ARMV5\urel\MediaClientAudio.dll "sys\bin\MediaClientAudio.dll" -file=\epoc32\release\ARMV5\urel\MediaClientAudioStream.dll "sys\bin\MediaClientAudioStream.dll" -file=\epoc32\release\ARMV5\urel\MediaClientAudioInputStream.dll "sys\bin\MediaClientAudioInputStream.dll" -file=\epoc32\release\ARMV5\urel\MediaClientVideo.dll "sys\bin\MediaClientVideo.dll" file=\epoc32\release\ARMV5\urel\mediaclientvideodisplay.dll "sys\bin\mediaclientvideodisplay.dll" -file=\epoc32\release\ARMV5\urel\mmfcontrollerframework.dll "sys\bin\mmfcontrollerframework.dll" file=\epoc32\release\ARMV5\urel\audioutils.dll "sys\bin\audioutils.dll" -file=\epoc32\release\ARMV5\urel\MMFStandardCustomCommands.dll "sys\bin\MMFStandardCustomCommands.dll" file=\epoc32\release\ARMV5\urel\MmfCodecCommon.dll "sys\bin\MmfCodecCommon.dll" file=\epoc32\release\ARMV5\urel\GSM610CodecCommon.dll "sys\bin\GSM610CodecCommon.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmruf.dll , mmruf.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, gsm610.dll , gsm610.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, audiocodecs.dll , audiocodecs.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmfaudiocontroller.dll , mmfaudiocontroller.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmfstdsourceandsinkplugin.dll , mmfstdsourceandsinkplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmfaudioinput.dll , mmfaudioinput.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmfaudiooutput.dll , mmfaudiooutput.dll ) file=\epoc32\release\ARMV5\urel\MmfGlblAudioEffect.dll "sys\bin\MmfGlblAudioEffect.dll" file=\epoc32\release\ARMV5\urel\MmfStdGlblAudioEffect.dll "sys\bin\MmfStdGlblAudioEffect.dll" -file=\epoc32\release\ARMV5\urel\mmfdrmpluginserver.exe "sys\bin\mmfdrmpluginserver.exe" file=\epoc32\release\ARMV5\urel\mmfdrmpluginserverproxy.dll "sys\bin\mmfdrmpluginserverproxy.dll" REM MMS Settings file=\epoc32\release\ARMV5\urel\mmsgenericsettings.dll "sys\bin\mmsgenericsettings.dll" REM MMTSY -file=\epoc32\release\ARMV5\urel\MM.TSY "sys\bin\MM.TSY" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, msfdc.dll , msfdc.dll ) data=\epoc32\data\Z\resource\mtp\102827AF.rsc "resource\mtp\102827AF.rsc" file=\epoc32\release\ARMV5\urel\mtpdatatypes.dll "sys\bin\mtpdatatypes.dll" file=\epoc32\release\ARMV5\urel\mtpclient.dll "sys\bin\mtpclient.dll" @@ -1370,14 +1306,10 @@ REM Make sure the error strings appear in the ROM data=\epoc32\data\Z\Resource\Errors\CSDERR.R01 "Resource\Errors\csderr.R01" alias Resource\Errors\csderr.R01 Resource\Errors\csderr.RSC -file=\epoc32\release\ARMV5\urel\csd.agt "sys\bin\Csd.agt" REM GPRS AGT - Packet data networking -file=\epoc32\release\ARMV5\urel\psd.agt "sys\bin\psd.agt" REM KIPPER - LAN AGT -file=\epoc32\release\ARMV5\urel\NullAgt.agt "sys\bin\NullAgt.agt" REM dependencies data=\epoc32\data\z\private\101F7989\esock\ccp.ini "private\101f7989\esock\ccp.ini" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ppp.dll , ppp.dll ) file=\epoc32\release\ARMV5\urel\pppmain.dll "sys\bin\pppmain.dll" file=\epoc32\release\ARMV5\urel\vjcomp.dll "sys\bin\vjcomp.dll" REM Predictor PPP compression @@ -1392,7 +1324,6 @@ patchdata rawip.dll@KMtuIPv6 0x578 patchdata rawip.dll@KRMtuIPv6 0x578 REM Feature DHCP is not included in this ROM -file=\epoc32\release\ARMV5\urel\umtsif.dll "sys\bin\umtsif.dll" REM Feature QoS is not included in this ROM REM Feature QoS is not included in this ROM REM Feature QoS is not included in this ROM @@ -1400,7 +1331,6 @@ REM IP Subconnection Provider __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Qos3GPP.dll , Qos3GPP.dll ) REM PDP Meta and Sub-Connection Connection Providers -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, pdp.dll , pdp.dll ) REM IP Subconnection Provider with QoS support REM Feature QoS is not included in this ROM REM --- DNS Proxy @@ -1411,8 +1341,6 @@ REM You do not want this in production ROMs! REM Provides build number information to the emulator\ROM. data=\epoc32\data\buildinfo.txt "System\Data\buildinfo.txt" -file=\epoc32\release\ARMV5\urel\omxilcomponentcommon.dll "sys\bin\omxilcomponentcommon.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, omxilpcmrenderer.dll , omxilpcmrenderer.dll ) file=\epoc32\release\ARMV5\urel\omxilcoreserver.dll "sys\bin\omxilcoreserver.dll" file=\epoc32\release\ARMV5\urel\omxilcoreclient.dll "sys\bin\omxilcoreclient.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, omxilsymbianloader.dll , omxilsymbianloader.dll ) @@ -1431,10 +1359,8 @@ REM PDRSTORE REM Feature PRINT is not included in this ROM REM ETel SAT API -file=\epoc32\release\ARMV5\urel\etelsat.dll "sys\bin\etelsat.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, phbksyncplugin.dll , phbksyncplugin.dll ) file=\epoc32\release\ARMV5\urel\phbksyncsvr.dll "sys\bin\phbksyncsvr.dll" -file=\epoc32\release\ARMV5\urel\phbksyncsvrexe.exe "sys\bin\phbksyncsvrexe.exe" file=\epoc32\release\ARMV5\urel\crber.dll "sys\bin\crber.dll" file=\epoc32\release\ARMV5\urel\crpkcs12.dll "sys\bin\crpkcs12.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PKCS12Recognizer.dll , PKCS12Recognizer.dll ) @@ -1451,7 +1377,6 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, RecWeb.dll , RecWeb.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, recwap.dll , recwap.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, audiostream.dll , audiostream.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, tonehwdevice.dll , tonehwdevice.dll ) file=\epoc32\release\ARMV5\urel\audiocodec.dll "sys\bin\audiocodec.dll" file=\epoc32\release\ARMV5\urel\audiogaincontrol.dll "sys\bin\audiogaincontrol.dll" file=\epoc32\release\ARMV5\urel\buffersink.dll "sys\bin\buffersink.dll" @@ -1868,8 +1793,6 @@ file=\epoc32\release\ARMV5\urel\sipclient.dll "sys\bin\sipclient.dll" file=\epoc32\release\ARMV5\urel\sipserver.exe "sys\bin\sipserver.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SIPSIGCOMP.DLL , SIPSIGCOMP.DLL ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipgprsmon.dll , sipgprsmon.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipdigest.dll , sipdigest.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, siptls.dll , siptls.dll ) REM Feature IPSEC not included in this rom __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SipReqHand.dll , SipReqHand.dll ) @@ -1879,7 +1802,6 @@ file=\epoc32\release\ARMV5\urel\sipproxyrsv.dll "sys\bin\sipproxyrsv.dll" file=\epoc32\release\ARMV5\urel\sipprofilesrv.exe "sys\bin\sipprofilesrv.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipietfagnt.dll , sipietfagnt.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipimsagnt.dll , sipimsagnt.dll ) data=\epoc32\data\Z\Private\101F413C\backup_registration.xml "private\101F413C\backup_registration.xml" REM SQLITE3 file=\epoc32\release\ARMV5\urel\sqlite3.dll "sys\bin\sqlite3.dll" @@ -1913,7 +1835,6 @@ file=\epoc32\release\ARMV5\urel\ocspsupport.exe "sys\bin\ocspsupport.exe" file=\epoc32\release\ARMV5\urel\ocspsupportclient.dll "sys\bin\ocspsupportclient.dll" file=\epoc32\release\ARMV5\urel\devinfosupportcommon.dll "sys\bin\devinfosupportcommon.dll" -file=\epoc32\release\ARMV5\urel\devinfosupport.exe "sys\bin\devinfosupport.exe" file=\epoc32\release\ARMV5\urel\devinfosupportclient.dll "sys\bin\devinfosupportclient.dll" file=\epoc32\release\ARMV5\urel\securitymanager.dll "sys\bin\securitymanager.dll" file=\epoc32\release\ARMV5\urel\backuprestore.dll "sys\bin\backuprestore.dll" @@ -1930,9 +1851,6 @@ data=\epoc32\data\Z\Resource\Errors\swierrors.R01 "Resource\Errors\swierrors.R01" alias Resource\Errors\swierrors.R01 Resource\Errors\swierrors.RSC REM Telephony Watchers... -file=\epoc32\release\ARMV5\urel\telwatcherbase.dll "sys\bin\TelWatcherBase.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, signalstrengthwatcher.dll , signalstrengthwatcher.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, indicatorwatcher.dll , indicatorwatcher.dll ) REM SysStart file=\epoc32\release\ARMV5\urel\SysStart.exe "Sys\bin\SysStart.exe" REM Simple startup configuration - install a single resource file @@ -2045,8 +1963,6 @@ file=\epoc32\release\ARMV5\urel\asrsttshwdevice_stub.dll "sys\bin\asrsttshwdevice.dll" file=\epoc32\release\ARMV5\urel\asrsvocmanhwdevice_stub.dll "sys\bin\asrsvocmanhwdevice.dll" file=\epoc32\release\ARMV5\urel\asrsnlphwdevice_stub.dll "sys\bin\asrsnlphwdevice.dll" -file=\epoc32\release\ARMV5\urel\LICENSEETSY_STUB.DLL "Sys\Bin\licenseetsy.dll" -file=\epoc32\release\ARMV5\urel\SIMATKTSY_STUB.DLL "Sys\Bin\simatktsy.dll" file=\epoc32\release\ARMV5\urel\tvoutconfig.dll "Sys\Bin\tvoutconfig.dll" file=\epoc32\release\ARMV5\urel\ddc_access.dll "Sys\Bin\ddc_access.dll" file=\epoc32\release\ARMV5\urel\power_save_display_mode_stub.dll "Sys\Bin\power_save_display_mode.dll" @@ -2077,16 +1993,11 @@ file=\epoc32\release\armv5\urel\elocl.01 "sys\bin\elocl.01" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aboutgsplugin.dll , aboutgsplugin.dll ) data=\epoc32\data\Z\resource\apps\aboutgsplugin.mif "resource\apps\aboutgsplugin.mif" -file=\epoc32\release\ARMV5\urel\accountcreationengine.dll "sys\bin\accountcreationengine.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, accountcreationplugin.dll , accountcreationplugin.dll ) data=\epoc32\data\Z\resource\apps\acpicons.mif "resource\apps\acpicons.mif" file=\epoc32\release\ARMV5\urel\ActivePalette.dll "sys\bin\ActivePalette.dll" data=\epoc32\data\Z\resource\apps\activepalette2graphics.mif "resource\apps\activepalette2graphics.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, agnentryui.dll , agnentryui.dll ) REM AgnVersit2 -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, agnversit2.dll , agnversit2.dll ) data=\epoc32\data\Z\resource\AgnVersit2Strings.rsc "resource\AgnVersit2Strings.rsc" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ai3xmluimain.dll , ai3xmluimain.dll ) data=\epoc32\data\Z\resource\apps\ai3xmlui.rsc "resource\apps\ai3xmlui.rsc" file=\epoc32\release\ARMV5\urel\xn3ecomelementproxy.dll "sys\bin\xn3ecomelementproxy.dll" file=\epoc32\release\ARMV5\urel\xn3layoutengine.dll "sys\bin\xn3layoutengine.dll" @@ -2113,7 +2024,6 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, xn3nppluginfactory.dll , xn3nppluginfactory.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, xn3texteditorfactory.dll , xn3texteditorfactory.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, xn3animationfactory.dll , xn3animationfactory.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, AIAgendaPluginEngine.dll , AIAgendaPluginEngine.dll ) data=\epoc32\data\Z\resource\apps\aicalendarplugin2.mif "resource\apps\aicalendarplugin2.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aicalendarplugin2.dll , aicalendarplugin2.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aicontainer.dll , aicontainer.dll ) @@ -2121,7 +2031,6 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, AiwCallImagePlugin.dll , AiwCallImagePlugin.dll ) data=\epoc32\data\Z\System\install\aiwcallimageplugin_stub.SIS "System\Install\aiwcallimageplugin_stub.SIS" file=\epoc32\release\ARMV5\urel\AlmAlert.dll "sys\bin\AlmAlert.dll" -file=\epoc32\release\ARMV5\urel\AknAlarmService.dll "sys\bin\AknAlarmService.dll" data=\epoc32\data\Z\system\install\alarmui_stub.sis "System\Install\alarmui_stub.sis" data=\epoc32\data\Z\data\sounds\digital\clock.aac "data\sounds\digital\clock.aac" data=\epoc32\data\Z\data\sounds\digital\alarm.aac "data\sounds\digital\alarm.aac" @@ -2131,26 +2040,13 @@ data=\epoc32\data\Z\private\10282BC4\Rules\alarmui_silence.rul "private\10282BC4\Rules\alarmui_silence.rul" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, amadapter2.dll , amadapter2.dll ) file=\epoc32\release\ARMV5\urel\AMInstallOptions.dll "sys\bin\AMInstallOptions.dll" -file=\epoc32\release\ARMV5\urel\ApplicationManagement.exe "sys\bin\ApplicationManagement.exe" -data=\EPOC32\DATA\Z\private\10003a3f\apps\ApplicationManagement_reg.RSC "private\10003a3f\import\apps\ApplicationManagement_reg.RSC" file=\epoc32\release\ARMV5\urel\ApplicationManagement.dll "sys\bin\ApplicationManagement.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, RfsAppMgmtPlugin.dll , RfsAppMgmtPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, omascomoadapter.dll , omascomoadapter.dll ) data=\epoc32\data\Z\Private\100012a5\policy\20021335.spd "PRIVATE\100012a5\policy\20021335.spd" data=\epoc32\data\Z\Private\100012a5\policy\1020781C.spd "PRIVATE\100012a5\policy\1020781C.spd" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, AiwSyncProvider.dll , AiwSyncProvider.dll ) -file=\epoc32\release\ARMV5\urel\AspSyncUtil.dll "sys\bin\AspSyncutil.dll" -file=\epoc32\release\ARMV5\urel\aspschedulehandler.exe "sys\bin\aspschedulehandler.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, AspPreSyncDefault.dll , AspPreSyncDefault.dll ) -data=\epoc32\data\Z\resource\apps\AspSyncUtil.MIF "resource\apps\AspSyncUtil.mif" -auto-bitmap=\epoc32\data\Z\resource\apps\AspSyncUtil.mbm resource\apps\AspSyncUtil.mbm -file=\epoc32\release\ARMV5\urel\audiomessageui.dll "sys\bin\audiomessageui.dll" -file=\epoc32\release\ARMV5\urel\audiomessage.exe "sys\bin\audiomessage.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\audiomessage_reg.rsc "Private\10003a3f\import\apps\audiomessage_reg.rsc" -data=\epoc32\data\Z\resource\apps\audiomessage_AIF.MIF "resource\apps\audiomessage_aif.mif" -data=\epoc32\data\Z\resource\apps\audiomessage.mif "resource\apps\audiomessage.mif" data=\epoc32\data\z\system\install\stub_audiomessage.sis "system\install\stub_audiomessage.sis" -file=\epoc32\release\ARMV5\urel\Bium.dll "sys\bin\Bium.dll" file=\epoc32\release\ARMV5\urel\SatInfo.dll "sys\bin\SatInfo.dll" data=\epoc32\data\Z\resource\apps\satellite.mif "resource\apps\satellite.mif" file=\epoc32\release\ARMV5\urel\BlidEng.dll "sys\bin\BlidEng.dll" @@ -2163,20 +2059,15 @@ data=\epoc32\data\Z\private\101F99F6\capability\102751BA.XML "private\101F99F6\capability\102751BA.XML" data=\epoc32\data\Z\System\install\bookmarkdsa_stub.sis "system\install\bookmarkdsa_stub.sis" file=\epoc32\release\ARMV5\urel\bpas.dll "sys\bin\bpas.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, npbrowseraudiovideoplugin.dll , npbrowseraudiovideoplugin.dll ) data=\epoc32\data\Z\resource\apps\browseraudiovideoplugin_AIF.MIF "resource\apps\browseraudiovideoplugin_aif.mif" file=\epoc32\release\ARMV5\urel\browserlauncher.dll "sys\bin\browserlauncher.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, npSystemInfoPlugin.dll , npSystemInfoPlugin.dll ) auto-bitmap=\epoc32\data\Z\resource\apps\Browser.mbm resource\apps\Browser.mbm data=\epoc32\data\Z\resource\apps\Browser.mif "resource\apps\Browser.mif" auto-bitmap=\epoc32\data\Z\resource\apps\browserbitmaps.mbm resource\apps\browserbitmaps.mbm data=\epoc32\release\ARMV5\urel\Browser_Stub.sis "system\install\Browser_Stub.sis" data=\epoc32\data\c\feeds_view_template.html "feeds_view_template.html" data=\epoc32\data\z\private\10008d39\backup_registration.xml "private\10008d39\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\BUBBLEMANAGER.dll "sys\bin\BubbleManager.dll" data=\epoc32\data\Z\resource\BUBBLEMANAGER.rsc "resource\BUBBLEMANAGER.rsc" -auto-bitmap=\epoc32\data\Z\resource\apps\BubbleManager.mbm resource\apps\BubbleManager.mbm -data=\epoc32\data\Z\resource\apps\BubbleManager.mif "resource\apps\BubbleManager.mif" data=\epoc32\data\Z\System\install\bubblemanager_stub.sis "System\Install\bubblemanager_stub.sis" file=\epoc32\release\ARMV5\urel\bva.exe "sys\bin\bva.exe" data=\epoc32\data\Z\resource\apps\bva_AIF.MIF "resource\apps\bva_aif.mif" @@ -2189,32 +2080,16 @@ data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\CalcSoft_reg.rsc "Private\10003a3f\apps\CalcSoft_reg.rsc" data=\epoc32\data\Z\private\10005902\backup_registration.xml "private\10005902\backup_registration.xml" file=\epoc32\release\ARMV5\urel\CalDavClient.dll "sys\bin\CalDavClient.dll" -file=\epoc32\release\ARMV5\urel\!CalDavServer.exe "sys\bin\!CalDavServer.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, calencaldavplugin.dll , calencaldavplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, calenaiwprovider.dll , calenaiwprovider.dll ) ; -file=\epoc32\release\ARMV5\urel\calencommonutils.dll "sys\bin\calencommonutils.dll" -file=\epoc32\release\ARMV5\urel\CalenController.dll "sys\bin\CalenController.dll" -file=\epoc32\release\ARMV5\urel\calencustomisationmanager.dll "sys\bin\calencustomisationmanager.dll" -file=\epoc32\release\ARMV5\urel\Calendar.exe "sys\bin\Calendar.exe" -data=\epoc32\data\Z\resource\apps\Calendar.mif "resource\apps\Calendar.mif" data=\epoc32\data\Z\Private\10005901\backup_registration.xml "PRIVATE\10005901\backup_registration.xml" -data=\epoc32\data\Z\resource\apps\CALENDAR_AIF.MIF "resource\apps\Calendar_aif.mif" -data=\epoc32\data\Z\private\10003a3f\apps\CALENDAR_REG.RSC "private\10003a3f\import\apps\CALENDAR_REG.RSC" data=\epoc32\data\Z\private\10202be9\10003a5b.cre "private\10202be9\10003a5b.cre" data=\epoc32\data\Z\system\install\calendar_stub.sis "System\Install\calendar_stub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, calendarsearchplugin.dll , calendarsearchplugin.dll ) data=\epoc32\data\Z\resource\apps\calendarsearchplugin.mif "resource\apps\calendarsearchplugin.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CalenDefaultEditors.dll , CalenDefaultEditors.dll ) -file=\epoc32\release\ARMV5\urel\CalenGlobalData.dll "sys\bin\CalenGlobalData.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CalenGsPlugin.dll , CalenGsPlugin.dll ) data=\epoc32\data\Z\resource\apps\calendarsettings.mif "resource\apps\calendarsettings.mif" file=\epoc32\release\ARMV5\urel\CALENIMP.dll "sys\bin\CALENIMP.dll" -file=\epoc32\release\ARMV5\urel\CalenInterimUtils2.dll "sys\bin\CalenInterimUtils2.dll" file=\epoc32\release\ARMV5\urel\calenlauncher.dll "sys\bin\calenlauncher.dll" -file=\epoc32\release\ARMV5\urel\CalenSettingsUi.dll "sys\bin\CalenSettingsUi.dll" file=\epoc32\release\ARMV5\urel\CalenSvrClient.dll "sys\bin\CalenSvrClient.dll" -file=\epoc32\release\ARMV5\urel\CalenSvr.exe "sys\bin\CalenSvr.exe" -file=\epoc32\release\ARMV5\urel\calenviews.dll "sys\bin\calenviews.dll" auto-bitmap=\epoc32\data\Z\resource\apps\cameraapp2.mbm resource\apps\cameraapp2.mbm data=\epoc32\data\Z\resource\apps\cameraapp2.mif "resource\apps\cameraapp2.mif" data=\epoc32\release\ARMV5\urel\z\system\sounds\Digital\cameraappCapture1.wav "system\sounds\Digital\cameraappCapture1.wav" @@ -2234,33 +2109,19 @@ data=\epoc32\data\Z\resource\apps\camerasettingsplugin.mif "resource\apps\camerasettingsplugin.mif" file=\epoc32\release\ARMV5\urel\CameraUiConfigManager.dll "sys\bin\CameraUiConfigManager.dll" data=\epoc32\data\Z\System\install\cameraapp_stub.sis "System\Install\cameraapp_stub.sis" -file=\epoc32\release\ARMV5\urel\ccaapp.exe "sys\bin\ccaapp.exe" -data=\epoc32\data\z\private\10003a3f\apps\ccaapp_reg.rsc "private\10003a3f\apps\ccaapp_reg.rsc" file=\epoc32\release\ARMV5\urel\ccaclient.dll "sys\bin\ccaclient.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ccappcommlauncherplugin.dll , ccappcommlauncherplugin.dll ) file=\epoc32\release\ARMV5\urel\ccacontactorservice.dll "sys\bin\ccacontactorservice.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ccappmycardplugin.dll , ccappmycardplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ccappdetailsviewplugin.dll , ccappdetailsviewplugin.dll ) -data=\epoc32\data\Z\resource\apps\ccappdetailsviewplugin.mif "resource\apps\ccappdetailsviewplugin.mif" -file=\epoc32\release\ARMV5\urel\ccapputil.dll "sys\bin\ccapputil.dll" -file=\epoc32\release\ARMV5\urel\CCHServer.exe "sys\bin\CCHServer.exe" file=\epoc32\release\ARMV5\urel\CCHClient.dll "sys\bin\CCHClient.dll" -file=\epoc32\release\ARMV5\urel\cch.dll "sys\bin\cch.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, cchuinotifwrapper.dll , cchuinotifwrapper.dll ) file=\epoc32\release\ARMV5\urel\cchuinotif.dll "sys\bin\cchuinotif.dll" -file=\epoc32\release\ARMV5\urel\clock.exe "sys\bin\clock.exe" data=\epoc32\data\Z\resource\apps\clockapp_AIF.MIF "resource\apps\clockapp_aif.mif" data=\epoc32\data\Z\resource\apps\clockapp.mif "resource\apps\clockapp.mif" data=\epoc32\data\Z\resource\apps\clockapp_tab.mif "resource\apps\clockapp_tab.mif" -data=\epoc32\data\Z\private\10003a3f\import\apps\clock_reg.rsc "private\10003a3f\import\apps\clock_reg.rsc" data=\epoc32\data\Z\resource\mcc\mcc.rsc "resource\mcc\mcc.rsc" file=\epoc32\release\ARMV5\urel\clockalarmeditor.dll "sys\bin\clockalarmeditor.dll" file=\epoc32\release\ARMV5\urel\clkuimodel.dll "sys\bin\clkuimodel.dll" -file=\epoc32\release\ARMV5\urel\clkdatetimeview.dll "sys\bin\clkdatetimeview.dll" file=\epoc32\release\ARMV5\urel\clockcityselectionlist.dll "sys\bin\clockcityselectionlist.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, clkdatetimeviewplugin.dll , clkdatetimeviewplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, clockindicatorpaneplugin.dll , clockindicatorpaneplugin.dll ) -file=\epoc32\release\ARMV5\urel\clockserver.exe "sys\bin\clockserver.exe" file=\epoc32\release\ARMV5\urel\clockserverclient.dll "sys\bin\clockserverclient.dll" file=\epoc32\release\ARMV5\urel\clocktimesourceinterface.dll "sys\bin\clocktimesourceinterface.dll" file=\epoc32\release\ARMV5\urel\clocktimezoneresolver.dll "sys\bin\clocktimezoneresolver.dll" @@ -2268,12 +2129,9 @@ data=\epoc32\data\Z\system\install\clock2_stub.sis "system\install\clock2_stub.sis" data=\epoc32\data\Z\system\install\clock2_server_stub.sis "system\install\clock2_server_stub.sis" data=\epoc32\data\Z\system\install\clocknitzplugin_stub.sis "system\install\nitzplugin_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, clocknitzplugin.dll , clocknitzplugin.dll ) data=\epoc32\data\Z\private\10005906\backup_registration.xml "private\10005906\backup_registration.xml" data=\epoc32\data\Z\private\10005903\backup_registration.xml "private\10005903\backup_registration.xml" data=\epoc32\data\Z\private\200159A2\backup_registration.xml "private\200159A2\backup_registration.xml" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, cmailhandlerplugin.dll , cmailhandlerplugin.dll ) -data=\epoc32\data\Z\resource\apps\cmailhandlerplugin.mif "resource\apps\cmailhandlerplugin.mif" data=\epoc32\data\Z\private\10202BE9\20029F4A.txt "private\10202BE9\20029F4A.txt" file=\epoc32\release\ARMV5\urel\cmscontactor.dll "sys\bin\cmscontactor.dll" data=\epoc32\data\Z\resource\cms\cmscontactor.rsc "resource\cms\cmscontactor.rsc" @@ -2283,13 +2141,10 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CntFindPlugin.dll , CntFindPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CntSortPlugin.dll , CntSortPlugin.dll ) REM Connection utility -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ConnectUtil.dll , ConnectUtil.dll ) data=\epoc32\data\Z\System\install\connectutil_stub.sis "System\Install\connectutil_stub.sis" file=\epoc32\release\ARMV5\urel\contactpresence.dll "sys\bin\contactpresence.dll" data=\epoc32\data\Z\resource\apps\contactssearchplugin.mif "resource\apps\contactssearchplugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, contactssearchplugin.dll , contactssearchplugin.dll ) -file=\epoc32\release\ARMV5\urel\cscengine.dll "sys\bin\cscengine.dll" -file=\epoc32\release\ARMV5\urel\cscsettingsui.dll "sys\bin\cscsettingsui.dll" DATA=\epoc32\data\Z\resource\cscengine.rsc "resource\cscengine.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, cscgsplugin.dll , cscgsplugin.dll ) data=\epoc32\data\Z\System\install\commsconfig_stub.sis "System\Install\commsconfig_stub.sis" @@ -2304,16 +2159,8 @@ data=\epoc32\data\Z\Private\200159c0\install\desktop_20026f4f\hsps\00\manifest.dat "private\200159c0\install\desktop_20026f4f\hsps\00\manifest.dat" FILE=\epoc32\release\ARMV5\urel\imageprintengine.dll "sys\bin\imageprintengine.dll" data=\epoc32\data\Z\resource\apps\imgprintbitmaps.mif "resource\apps\imgprintbitmaps.mif" -FILE=\epoc32\release\ARMV5\urel\imgpprintdll.dll "sys\bin\imgpprintdll.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aiwprintingprovider.dll , aiwprintingprovider.dll ) DATA=\epoc32\data\Z\private\10202be9\10208a35.txt "Private\10202be9\10208a35.txt" -file=\epoc32\release\ARMV5\urel\devdiagapp.exe "sys\bin\devdiagapp.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\devdiagapp_reg.rsc "Private\10003a3f\import\apps\devdiagapp_reg.rsc" -data=\epoc32\data\z\resource\apps\devdiagapp.mif "resource\apps\devdiagapp.mif" data=\epoc32\data\z\system\install\devdiagapp.SIS "System\Install\devdiagapp.SIS" -file=\epoc32\release\ARMV5\urel\DevEncUi.exe "sys\bin\DevEncUi.exe" -data=\epoc32\data\Z\resource\apps\DevEncUi_AIF.MIF "resource\apps\DevEncUi_aif.mif" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\DevEncUi_reg.rsc "Private\10003a3f\apps\DevEncUi_reg.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DevEncUiDmAdapter.dll , DevEncUiDmAdapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devencnotifplugin.dll , devencnotifplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devencgsplugin.dll , devencgsplugin.dll ) @@ -2321,7 +2168,6 @@ data=\epoc32\data\Z\resource\imageprintdata\protocols\btprotocol.rsc "resource\imageprintdata\protocols\btprotocol.rsc" DATA=\epoc32\data\Z\resource\imageprintdata\protocols\btxmltemplate.txt "resource\imageprintdata\protocols\btxmltemplate.txt" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, dpofprotdll.dll , dpofprotdll.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, pdphotolib.dll , pdphotolib.dll ) file=\epoc32\release\ARMV5\urel\xhtmlfilecomposer.dll "sys\bin\xhtmlfilecomposer.dll" DATA=\epoc32\data\Z\resource\imageprintdata\protocols\xhtmltempl\xhtmlfiletemplate.txt "resource\imageprintdata\protocols\xhtmltempl\xhtmlfiletemplate.txt" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, dhcppositionprovider.dll , dhcppositionprovider.dll ) @@ -2340,11 +2186,8 @@ file=\epoc32\release\ARMV5\urel\edcontactor.dll "sys\bin\edcontactor.dll" data=\epoc32\data\Z\resource\edcontactor.rsc "resource\edcontactor.rsc" data=\epoc32\data\z\private\10202be9\200212A0.txt "private\10202be9\200212A0.txt" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, emailclientapi.dll , emailclientapi.dll ) file=\epoc32\release\ARMV5\urel\cmaillogger.dll "sys\bin\cmaillogger.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, EmailNotificationHandler.dll , EmailNotificationHandler.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, OMAPushEMNStringDict00.dll , OMAPushEMNStringDict00.dll ) -file=\epoc32\release\ARMV5\urel\emailservermonitor.exe "sys\bin\emailservermonitor.exe" file=\epoc32\release\ARMV5\urel\baseplugin.dll "sys\bin\baseplugin.dll" file=\epoc32\release\ARMV5\urel\MessageStoreClient.dll "sys\bin\MessageStoreClient.dll" file=\epoc32\release\ARMV5\urel\MessageStoreServer.dll "sys\bin\MessageStoreServer.dll" @@ -2358,18 +2201,8 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, EmbeddedLinkAdapter.dll , EmbeddedLinkAdapter.dll ) data=\epoc32\data\Z\Private\200159c0\install\empty_2001f47f\xuikon\00\empty.o0000 "private\200159c0\install\empty_2001f47f\xuikon\00\empty.o0000" data=\epoc32\data\Z\Private\200159c0\install\empty_2001f47f\hsps\00\manifest.dat "private\200159c0\install\empty_2001f47f\hsps\00\manifest.dat" -file=\epoc32\release\ARMV5\urel\evtutils.dll "sys\bin\evtutils.dll" -file=\epoc32\release\ARMV5\urel\evtengine.dll "sys\bin\evtengine.dll" -file=\epoc32\release\ARMV5\urel\evthandlerserver.exe "sys\bin\evthandlerserver.exe" -file=\epoc32\release\ARMV5\urel\evthandler.exe "sys\bin\evthandler.exe" -data=\epoc32\data\Z\resource\apps\evthandlerserver.mif "resource\apps\evthandlerserver.mif" -data=\epoc32\data\Z\resource\apps\evtinfonote.mif "resource\apps\evtinfonote.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, evtnotifierplugin.dll , evtnotifierplugin.dll ) -file=\epoc32\release\ARMV5\urel\evtinfonote.dll "sys\bin\evtinfonote.dll" data=\epoc32\data\Z\private\2001E663\backup_registration.xml "private\2001E663\backup_registration.xml" data=\epoc32\data\Z\System\install\eventsuistub.sis "system\install\eventsuistub.sis" -file=\epoc32\release\ARMV5\urel\MPFileDetailsDialog.dll "sys\bin\MPFileDetailsDialog.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, filedetailsplugin.dll , filedetailsplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, filemanagerbkupplugin.dll , filemanagerbkupplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, filemanageraiwprovider.dll , filemanageraiwprovider.dll ) file=\epoc32\release\ARMV5\urel\GFLM.dll "sys\bin\GFLM.dll" @@ -2383,7 +2216,6 @@ file=\epoc32\release\ARMV5\urel\fmradioactiveidleengine200.dll "sys\bin\fmradioactiveidleengine200.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fmradiomcpplugin100.dll , fmradiomcpplugin100.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fmradioactionhandler.dll , fmradioactionhandler.dll ) -file=\epoc32\release\ARMV5\urel\fmradioengine.dll "sys\bin\fmradioengine.dll" data=\epoc32\data\Z\Private\2001B25E\backup_registration.xml "PRIVATE\2001B25E\backup_registration.xml" REM MISSING data=\epoc32\data\Z\Private\10202BE9\2001B25E.txt PRIVATE\10202BE9\2001B25E.txt data=\epoc32\data\Z\system\install\commonemailstub.sis "system\install\commonemailstub.sis" @@ -2403,9 +2235,6 @@ data=\epoc32\data\Z\private\2001E277\HtmlFile\expand.png "private\2001E277\HtmlFile\expand.png" data=\epoc32\data\Z\private\2001E277\HtmlFile\collapse.png "private\2001E277\HtmlFile\collapse.png" data=\epoc32\data\Z\private\2001E277\HtmlFile\hidden.png "private\2001E277\HtmlFile\hidden.png" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ipssosplugin.dll , ipssosplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ipssossettings.dll , ipssossettings.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, IPSSosAOPlugin.dll , IPSSosAOPlugin.dll ) data=\epoc32\data\Z\private\2000E53C\backup_registration.xml "private\2000E53C\backup_registration.xml" file=\epoc32\release\ARMV5\urel\fs_generic.dll "sys\bin\fs_generic.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fsscrollbarplugin.dll , fsscrollbarplugin.dll ) @@ -2431,7 +2260,6 @@ data=\epoc32\data\Z\private\200286D3\refvertexshader.vsh "private\200286D3\refvertexshader.vsh" data=\epoc32\data\Z\private\200286D3\reffragmentshader.fsh "private\200286D3\reffragmentshader.fsh" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fsccontactactionmenu.dll , fsccontactactionmenu.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fsccontactactionservice.dll , fsccontactactionservice.dll ) data=\epoc32\data\Z\resource\fscactionutils.rsc "resource\fscactionutils.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fsccallplugin.dll , fsccallplugin.dll ) data=\epoc32\data\Z\resource\apps\fsccallplugin.mif "resource\apps\fsccallplugin.mif" @@ -2441,7 +2269,6 @@ data=\epoc32\data\Z\resource\apps\fscpocplugin.mif "resource\apps\fscpocplugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fscsendplugin.dll , fscsendplugin.dll ) data=\epoc32\data\Z\resource\apps\fscsendplugin.mif "resource\apps\fscsendplugin.mif" -file=\epoc32\release\ARMV5\urel\FSMailFramework.dll "sys\bin\FSMailFramework.dll" file=\epoc32\release\ARMV5\urel\FSFWCommonLib.dll "sys\bin\FSFWCommonLib.dll" data=\epoc32\data\Z\RESOURCE\fsmailbrandmanager.rsc "resource\fsmailbrandmanager.rsc" data=\epoc32\data\Z\RESOURCE\APPS\ovi_brand_graphics.mif "resource\apps\ovi_brand_graphics.mif" @@ -2450,15 +2277,10 @@ data=\epoc32\data\Z\RESOURCE\APPS\aol_brand_graphics.mif "resource\apps\aol_brand_graphics.mif" data=\epoc32\data\Z\RESOURCE\APPS\microsoft_brand_graphics.mif "resource\apps\microsoft_brand_graphics.mif" data=\epoc32\data\Z\RESOURCE\APPS\mail_for_exchange_brand_graphics.mif "resource\apps\mail_for_exchange_brand_graphics.mif" -file=\epoc32\release\ARMV5\urel\fssendashelper.dll "sys\bin\fssendashelper.dll" data=\epoc32\data\Z\resource\messaging\mtm\fsmtms.rsc "resource\messaging\mtm\fsmtms.rsc" -file=\epoc32\release\ARMV5\urel\fsclientmtm.dll "sys\bin\fsclientmtm.dll" file=\epoc32\release\ARMV5\urel\fsservermtm.dll "sys\bin\fsservermtm.dll" -file=\epoc32\release\ARMV5\urel\fsuimtm.dll "sys\bin\fsuimtm.dll" data=\epoc32\data\Z\resource\messaging\fsuimtm.rsc "resource\messaging\fsuimtm.rsc" -file=\epoc32\release\ARMV5\urel\fsuidatamtm.dll "sys\bin\fsuidatamtm.dll" data=\epoc32\data\Z\resource\messaging\fsuidatamtm.rsc "resource\messaging\fsuidatamtm.rsc" -data=\epoc32\data\Z\resource\apps\fsuidatamtm.mif "resource\apps\fsuidatamtm.mif" file=\epoc32\release\ARMV5\urel\glxcloudview.dll "sys\bin\glxcloudview.dll" file=\epoc32\release\ARMV5\urel\glxcommandhandlerdrm.dll "sys\bin\glxcommandhandlerdrm.dll" file=\epoc32\release\ARMV5\urel\glxcommandhandlermoreinfo.dll "sys\bin\glxcommandhandlermoreinfo.dll" @@ -2506,13 +2328,8 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, gsdevdiagplugin.dll , gsdevdiagplugin.dll ) data=\epoc32\data\Z\resource\apps\GSDevDiagPlugin.mif "resource\apps\GSDevDiagPlugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSEmailSettingsPluginDll.dll , GSEmailSettingsPluginDll.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, gsvideoplugin.dll , gsvideoplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, gsvmbxplugin.dll , gsvmbxplugin.dll ) data=\epoc32\data\Z\resource\apps\gsvmbxplugin.mif "resource\apps\gsvmbxplugin.mif" -file=\epoc32\release\ARMV5\urel\vcxhgmyvideos.dll "sys\bin\vcxhgmyvideos.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vcxhgmyvideosplugin.dll , vcxhgmyvideosplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vcxhgvodplugin.dll , vcxhgvodplugin.dll ) -file=\epoc32\release\ARMV5\urel\vcxhgvodui.dll "sys\bin\vcxhgvodui.dll" file=\epoc32\release\ARMV5\urel\hnengine.dll "sys\bin\hnengine.dll" file=\epoc32\release\ARMV5\urel\hnmetadatamodel.dll "sys\bin\hnmetadatamodel.dll" file=\epoc32\release\ARMV5\urel\hnpresentationmodel.dll "sys\bin\hnpresentationmodel.dll" @@ -2522,16 +2339,13 @@ data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\ImageEditor_reg.rsc "Private\10003a3f\apps\ImageEditor_reg.rsc" file=\epoc32\release\ARMV5\urel\BlackWhite.pgn "sys\bin\BlackWhite.pgn" data=\epoc32\data\Z\resource\apps\BlackWhite.mif "resource\apps\BlackWhite.mif" -file=\epoc32\release\ARMV5\urel\Brightness.pgn "sys\bin\Brightness.pgn" data=\epoc32\data\Z\resource\apps\Brightness.mif "resource\apps\Brightness.mif" -file=\epoc32\release\ARMV5\urel\Bubble.pgn "sys\bin\Bubble.pgn" data=\epoc32\data\Z\resource\apps\Bubble.mif "resource\apps\Bubble.mif" data=\epoc32\data\Z\private\101ffa91\Bubbles\Bubbles01.mbm "private\101ffa91\Bubbles\Bubbles01.mbm" data=\epoc32\data\Z\private\101ffa91\Bubbles\Bubbles02.mbm "private\101ffa91\Bubbles\Bubbles02.mbm" data=\epoc32\data\Z\private\101ffa91\Bubbles\Bubbles03.mbm "private\101ffa91\Bubbles\Bubbles03.mbm" file=\epoc32\release\ARMV5\urel\Cartoonize.pgn "sys\bin\Cartoonize.pgn" data=\epoc32\data\Z\resource\apps\Cartoonize.mif "resource\apps\Cartoonize.mif" -file=\epoc32\release\ARMV5\urel\Clipart.pgn "sys\bin\Clipart.pgn" data=\epoc32\data\Z\resource\apps\Clipart.mif "resource\apps\Clipart.mif" data=\epoc32\data\Z\private\101ffa91\cliparts\Cliparts01.mbm "private\101ffa91\cliparts\Cliparts01.mbm" data=\epoc32\data\Z\private\101ffa91\cliparts\Cliparts02.mbm "private\101ffa91\cliparts\Cliparts02.mbm" @@ -2554,22 +2368,15 @@ data=\epoc32\data\Z\private\101ffa91\cliparts\Cliparts19.mbm "private\101ffa91\cliparts\Cliparts19.mbm" data=\epoc32\data\Z\private\101ffa91\cliparts\Cliparts20.mbm "private\101ffa91\cliparts\Cliparts20.mbm" data=\epoc32\data\Z\private\101ffa91\cliparts\Cliparts21.mbm "private\101ffa91\cliparts\Cliparts21.mbm" -file=\epoc32\release\ARMV5\urel\Contrast.pgn "sys\bin\Contrast.pgn" data=\epoc32\data\Z\resource\apps\Contrast.mif "resource\apps\Contrast.mif" -file=\epoc32\release\ARMV5\urel\Crop.pgn "sys\bin\Crop.pgn" data=\epoc32\data\Z\resource\apps\Crop.mif "resource\apps\Crop.mif" -file=\epoc32\release\ARMV5\urel\Frame.pgn "sys\bin\Frame.pgn" data=\epoc32\data\Z\resource\apps\Frame.mif "resource\apps\Frame.mif" data=\epoc32\data\Z\private\101ffa91\frames\frames01.mbm "private\101ffa91\frames\frames01.mbm" file=\epoc32\release\ARMV5\urel\iepb.dll "sys\bin\iepb.dll" -file=\epoc32\release\ARMV5\urel\ImageEditorManager.dll "sys\bin\ImageEditorManager.dll" file=\epoc32\release\ARMV5\urel\Negative.pgn "sys\bin\Negative.pgn" data=\epoc32\data\Z\resource\apps\Negative.mif "resource\apps\Negative.mif" file=\epoc32\release\ARMV5\urel\pb.dll "sys\bin\pb.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ImageEditorProvider.dll , ImageEditorProvider.dll ) -file=\epoc32\release\ARMV5\urel\RedEyeReduction.pgn "sys\bin\RedEyeReduction.pgn" data=\epoc32\data\Z\resource\apps\RedEyeReduction.mif "resource\apps\RedEyeReduction.mif" -file=\epoc32\release\ARMV5\urel\Resize.pgn "sys\bin\Resize.pgn" data=\epoc32\data\Z\resource\apps\Resize.mif "resource\apps\Resize.mif" file=\epoc32\release\ARMV5\urel\RotateLeft.pgn "sys\bin\RotateLeft.pgn" data=\epoc32\data\Z\resource\apps\RotateLeft.mif "resource\apps\RotateLeft.mif" @@ -2577,44 +2384,26 @@ data=\epoc32\data\Z\resource\apps\RotateRight.mif "resource\apps\RotateRight.mif" file=\epoc32\release\ARMV5\urel\Sepia.pgn "sys\bin\Sepia.pgn" data=\epoc32\data\Z\resource\apps\Sepia.mif "resource\apps\Sepia.mif" -file=\epoc32\release\ARMV5\urel\Sharpness.pgn "sys\bin\Sharpness.pgn" data=\epoc32\data\Z\resource\apps\Sharpness.mif "resource\apps\Sharpness.mif" -file=\epoc32\release\ARMV5\urel\Text.pgn "sys\bin\Text.pgn" data=\epoc32\data\Z\resource\apps\Text.mif "resource\apps\Text.mif" -file=\epoc32\release\ARMV5\urel\ImageEditorUi.dll "sys\bin\ImageEditorUi.dll" -data=\epoc32\data\Z\resource\apps\ImageEditorUi.mif "resource\apps\ImageEditorUi.mif" -file=\epoc32\release\ARMV5\urel\imageprintserver.exe "sys\bin\imageprintserver.exe" file=\epoc32\release\ARMV5\urel\imageprintclient.dll "sys\bin\imageprintclient.dll" -file=\epoc32\release\ARMV5\urel\imcvengine.dll "sys\bin\imcvengine.dll" file=\epoc32\release\ARMV5\urel\imcvlauncher.dll "sys\bin\imcvlauncher.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, imcmslauncherplugin.dll , imcmslauncherplugin.dll ) data=\epoc32\data\Z\system\install\imcvuiappstub.sis "system\install\imcvuiappstub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, imstatuspaneindicatorplugin.dll , imstatuspaneindicatorplugin.dll ) data=\epoc32\data\Z\system\install\imstatuspaneindicatorpluginstub.sis "system\install\imstatuspaneindicatorpluginstub.sis" file=\epoc32\release\ARMV5\urel\vimpstutils.dll "sys\bin\vimpstutils.dll" file=\epoc32\release\ARMV5\urel\vimpststorage.dll "sys\bin\vimpststorage.dll" -file=\epoc32\release\ARMV5\urel\vimpstengine.dll "sys\bin\vimpstengine.dll" -file=\epoc32\release\ARMV5\urel\vimpstcmdprocess.dll "sys\bin\vimpstcmdprocess.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vimpstui.dll , vimpstui.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vimpstdetailsviewplugin.dll , vimpstdetailsviewplugin.dll ) data=\epoc32\data\Z\system\install\uiservicetabstub.sis "system\install\uiservicetabstub.sis" data=\epoc32\data\Z\private\20012423\backup_registration.xml "private\20012423\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\ImumDa.dll "sys\bin\ImumDa.dll" -file=\epoc32\release\ARMV5\urel\ImumUtils.dll "sys\bin\ImumUtils.dll" -file=\epoc32\release\ARMV5\urel\Imum.dll "sys\bin\Imum.dll" data=\epoc32\data\Z\private\100058EB\backup_registration.xml "private\100058EB\backup_registration.xml" data=\epoc32\data\Z\system\install\imum_stub.sis "system\install\imum_stub.sis" -file=\epoc32\release\ARMV5\urel\instantmessagesalert.dll "sys\bin\instantmessagesalert.dll" data=\epoc32\data\Z\system\install\instantmessagesalertstub.sis "system\install\instantmessagesalertstub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, instantmsgindicatorplugin.dll , instantmsgindicatorplugin.dll ) data=\epoc32\data\Z\system\install\instantmsgindicatorpluginstub.sis "system\install\instantmsgindicatorpluginstub.sis" file=\epoc32\release\ARMV5\urel\IntegrityCheck.exe "sys\bin\IntegrityCheck.exe" file=\epoc32\release\ARMV5\urel\IntegrityCheckServer.exe "sys\bin\IntegrityCheckServer.exe" file=\epoc32\release\ARMV5\urel\IntegrityCheckClient.dll "sys\bin\IntegrityCheckClient.dll" file=\epoc32\release\ARMV5\urel\ipapputils.dll "sys\bin\ipapputils.dll" -file=\epoc32\release\ARMV5\urel\ipvoicemailengine.dll "sys\bin\ipvoicemailengine.dll" data=\epoc32\data\Z\System\install\java.sis "System\Install\java.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, appmngr2midletplugin.dll , appmngr2midletplugin.dll ) data=\epoc32\data\Z\Resource\plugins\appmngr2midletplugin.rsc "resource\plugins\appmngr2midletplugin.rsc" file=\epoc32\release\ARMV5\urel\javacaptain_ext_autostarter.dll "sys\bin\javacaptain_ext_autostarter.dll" file=\epoc32\release\ARMV5\urel\javacaptain_ext_config.dll "sys\bin\javacaptain_ext_config.dll" @@ -2625,7 +2414,6 @@ file=\epoc32\release\ARMV5\urel\javacaptain_ext_storageserverplugin.dll "sys\bin\javacaptain_ext_storageserverplugin.dll" file=\epoc32\release\ARMV5\urel\javacaptain_ext_settingslistener.dll "sys\bin\javacaptain_ext_settingslistener.dll" file=\epoc32\release\ARMV5\urel\javacaptain.exe "sys\bin\javacaptain.exe" -file=\epoc32\release\ARMV5\urel\javaregistryclient.dll "sys\bin\javaregistryclient.dll" file=\epoc32\release\ARMV5\urel\javasizehelperclient.dll "sys\bin\javasizehelperclient.dll" file=\epoc32\release\ARMV5\urel\javasizehelperserver.dll "sys\bin\javasizehelperserver.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ifeui.dll , ifeui.dll ) @@ -2646,7 +2434,6 @@ file=\epoc32\release\ARMV5\urel\javalauncher.exe "sys\bin\javalauncher.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, javaappschemeplugin.dll , javaappschemeplugin.dll ) data=\epoc32\data\Z\Resource\plugins\javaappschemeplugin.rsc "resource\plugins\javaappschemeplugin.rsc" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, javasidchecker.dll , javasidchecker.dll ) data=\epoc32\data\Z\Resource\plugins\javasidchecker.rsc "resource\plugins\javasidchecker.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, recjar.dll , recjar.dll ) data=\epoc32\data\Z\Resource\plugins\recjar.rsc "resource\plugins\recjar.rsc" @@ -2676,7 +2463,6 @@ data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javamobilemedia.odc "resource\java\jvm\lib\jrt\javamobilemedia.odc" data=\epoc32\release\ARMV5\urel\z\system\sounds\digital\CamcorderJavaCapture.wav "System\Sounds\Digital\CamcorderJavaCapture.wav" data=\epoc32\release\ARMV5\urel\z\system\sounds\digital\CamcorderJavaStart.wav "System\Sounds\Digital\CamcorderJavaStart.wav" -file=\epoc32\release\ARMV5\urel\javamobinfo.dll "sys\bin\javamobinfo.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javamobinfo.odc "resource\java\jvm\lib\jrt\javamobinfo.odc" file=\epoc32\release\ARMV5\urel\javaglobalindicators.dll "sys\bin\javaglobalindicators.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javaglobalindicators.odc "resource\java\jvm\lib\jrt\javaglobalindicators.odc" @@ -2685,7 +2471,6 @@ data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javam2g.odc "resource\java\jvm\lib\jrt\javam2g.odc" file=\epoc32\release\ARMV5\urel\javam3g.dll "sys\bin\javam3g.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javam3g.odc "resource\java\jvm\lib\jrt\javam3g.odc" -file=\epoc32\release\ARMV5\urel\javanokiasound.dll "sys\bin\javanokiasound.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javanokiasound.odc "resource\java\jvm\lib\jrt\javanokiasound.odc" file=\epoc32\release\ARMV5\urel\javaremconobserver.dll "sys\bin\javaremconobserver.dll" file=\epoc32\release\ARMV5\urel\javalegacyutils.dll "sys\bin\javalegacyutils.dll" @@ -2699,12 +2484,6 @@ file=\epoc32\release\ARMV5\urel\javamidpruntime.dll "sys\bin\javamidpruntime.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javamidpruntime.odc "resource\java\jvm\lib\jrt\javamidpruntime.odc" file=\epoc32\release\ARMV5\urel\javajvmargsmodifier.dll "sys\bin\javajvmargsmodifier.dll" -file=\epoc32\release\ARMV5\urel\j9.dll "sys\bin\j9.dll" -file=\epoc32\release\ARMV5\urel\j9vmall23.dll "sys\bin\j9vmall23.dll" -file=\epoc32\release\ARMV5\urel\j9mjit23.dll "sys\bin\j9mjit23.dll" -file=\epoc32\release\ARMV5\urel\jclcldc11_23.dll "sys\bin\jclcldc11_23.dll" -file=\epoc32\release\ARMV5\urel\jclcdc11_23.dll "sys\bin\jclcdc11_23.dll" -file=\epoc32\release\ARMV5\urel\j9fdm23.dll "sys\bin\j9fdm23.dll" file=\epoc32\release\ARMV5\urel\JvmNativePort.dll "sys\bin\JvmNativePort.dll" REM MISSING data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\bin\java.properties resource\java\jvm\bin\java.properties REM MISSING data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\security\java.policy resource\java\jvm\lib\security\java.policy @@ -2717,7 +2496,6 @@ file=\epoc32\release\ARMV5\urel\javafileutils.dll "sys\bin\javafileutils.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javafileutils.odc "resource\java\jvm\lib\jrt\javafileutils.odc" file=\epoc32\release\ARMV5\urel\javadebugapi.dll "sys\bin\javadebugapi.dll" -file=\epoc32\release\ARMV5\urel\javasecurity.dll "sys\bin\javasecurity.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javasecurity.odc "resource\java\jvm\lib\jrt\javasecurity.odc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, javaunicertstoreplugin.dll , javaunicertstoreplugin.dll ) data=\epoc32\data\Z\Resource\plugins\javaunicertstoreplugin.rsc "resource\plugins\javaunicertstoreplugin.rsc" @@ -2759,11 +2537,6 @@ data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javabluecove.odc "resource\java\jvm\lib\jrt\javabluecove.odc" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javabluetooth.odc "resource\java\jvm\lib\jrt\javabluetooth.odc" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javabluetoothcommons.odc "resource\java\jvm\lib\jrt\javabluetoothcommons.odc" -file=\epoc32\release\ARMV5\urel\javawma.dll "sys\bin\javawma.dll" -file=\epoc32\release\ARMV5\urel\javawmamms.dll "sys\bin\javawmamms.dll" -file=\epoc32\release\ARMV5\urel\javacbsscplugin.dll "sys\bin\javacbsscplugin.dll" -file=\epoc32\release\ARMV5\urel\javammsscplugin.dll "sys\bin\javammsscplugin.dll" -file=\epoc32\release\ARMV5\urel\javasmsscplugin.dll "sys\bin\javasmsscplugin.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javawma.odc "resource\java\jvm\lib\jrt\javawma.odc" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javawmamms.odc "resource\java\jvm\lib\jrt\javawmamms.odc" file=\epoc32\release\ARMV5\urel\javacomm.dll "sys\bin\javacomm.dll" @@ -2771,17 +2544,13 @@ file=\epoc32\release\ARMV5\urel\javadatagram.dll "sys\bin\javadatagram.dll" file=\epoc32\release\ARMV5\urel\javadatagramscplugin.dll "sys\bin\javadatagramscplugin.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javadatagram.odc "resource\java\jvm\lib\jrt\javadatagram.odc" -file=\epoc32\release\ARMV5\urel\javalocation.dll "sys\bin\javalocation.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javalocation.odc "resource\java\jvm\lib\jrt\javalocation.odc" -file=\epoc32\release\ARMV5\urel\javasensor.dll "sys\bin\javasensor.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javasensor.odc "resource\java\jvm\lib\jrt\javasensor.odc" file=\epoc32\release\ARMV5\urel\javawebservices.dll "sys\bin\javawebservices.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javawebservices.odc "resource\java\jvm\lib\jrt\javawebservices.odc" -file=\epoc32\release\ARMV5\urel\javapim.dll "sys\bin\javapim.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javapim.odc "resource\java\jvm\lib\jrt\javapim.odc" file=\epoc32\release\ARMV5\urel\javarms.dll "sys\bin\javarms.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javarms.odc "resource\java\jvm\lib\jrt\javarms.odc" -file=\epoc32\release\ARMV5\urel\javasatsa.dll "sys\bin\javasatsa.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javasatsa.odc "resource\java\jvm\lib\jrt\javasatsa.odc" file=\epoc32\release\ARMV5\urel\javafile.dll "sys\bin\javafile.dll" data=\epoc32\release\ARMV5\urel\z\resource\java\jvm\lib\jrt\javafile.odc "resource\java\jvm\lib\jrt\javafile.odc" @@ -2796,21 +2565,11 @@ file=\epoc32\release\ARMV5\urel\javaupgradeapp.exe "sys\bin\javaupgradeapp.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, javaiconsizenotifplugin.dll , javaiconsizenotifplugin.dll ) data=\epoc32\data\Z\Resource\plugins\javaiconsizenotifplugin.rsc "resource\plugins\javaiconsizenotifplugin.rsc" -file=\epoc32\release\ARMV5\urel\LmkCommonUi.dll "sys\bin\LmkCommonUi.dll" -file=\epoc32\release\ARMV5\urel\LmkUi.dll "sys\bin\LmkUi.dll" file=\epoc32\release\ARMV5\urel\LmkEng.dll "sys\bin\LmkEng.dll" data=\epoc32\data\Z\resource\apps\Landmarks.mif "resource\apps\Landmarks.mif" -data=\epoc32\data\Z\Resource\apps\LmkUi.mif "resource\apps\LmkUi.mif" data=\epoc32\data\Z\System\install\landmarksstub.sis "system\install\landmarksstub.sis" -file=\epoc32\release\ARMV5\urel\LogsEng.dll "sys\bin\LogsEng.dll" -file=\epoc32\release\ARMV5\urel\AocCtView.dll "sys\bin\AocCtView.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, LogsPlugin.dll , LogsPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, LogsIndicatorPlugin.dll , LogsIndicatorPlugin.dll ) data=\epoc32\data\Z\private\101F4CD5\backup_registration.xml "private\101F4CD5\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\Logs.exe "sys\bin\Logs.exe" -data=\epoc32\data\Z\resource\apps\Logs.mif "resource\apps\Logs.mif" -data=\epoc32\data\Z\resource\apps\Logs_AIF.MIF "resource\apps\Logs_aif.mif" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\Logs_reg.rsc "Private\10003a3f\apps\Logs_reg.rsc" file=\epoc32\release\ARMV5\urel\logsserviceextension.dll "sys\bin\logsserviceextension.dll" data=\epoc32\data\Z\System\install\logsserviceextension_stub.sis "system\install\logsserviceextension_stub.sis" REM Light Weight Player @@ -2823,20 +2582,12 @@ data=\epoc32\data\Z\resource\apps\matrixmenu.mif "resource\apps\matrixmenu.mif" data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\matrixmenu_reg.rsc "Private\10003a3f\import\apps\matrixmenu_reg.rsc" data=\epoc32\data\Z\private\101F4CD2\backup_registration.xml "private\101F4CD2\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\Mce.exe "sys\bin\Mce.exe" -data=\epoc32\data\Z\resource\apps\Mce_AIF.MIF "resource\apps\Mce_aif.mif" file=\epoc32\release\ARMV5\urel\MceLogEng.dll "sys\bin\MceLogEng.dll" data=\epoc32\data\Z\system\install\MCE_STUB.sis "system\install\MCE_STUB.sis" -data=\epoc32\data\Z\private\10003a3f\apps\mce_reg.rsc "private\10003a3f\import\apps\mce_reg.rsc" data=\epoc32\data\Z\resource\apps\MceExtraIcons.mif "resource\apps\MceExtraIcons.mif" -file=\epoc32\release\ARMV5\urel\MceSettings.dll "sys\bin\MceSettings.dll" data=\epoc32\data\Z\system\install\MceSettings_stub.sis "system\install\MceSettings_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, MceSettingsGSPlugin.dll , MceSettingsGSPlugin.dll ) data=\epoc32\data\Z\resource\apps\MceSettingsGSPluginIcons.mif "resource\apps\MceSettingsGSPluginIcons.mif" data=\epoc32\data\Z\resource\MceSettingsEmailSel.rsc "resource\MceSettingsEmailSel.rsc" -file=\epoc32\release\ARMV5\urel\mediasettings.exe "sys\bin\mediasettings.exe" -data=\epoc32\data\Z\resource\apps\mediasettings.mif "resource\apps\mediasettings.mif" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\mediasettings_reg.rsc "Private\10003a3f\import\apps\mediasettings_reg.rsc" file=\epoc32\release\ARMV5\urel\mpsettbase.dll "sys\bin\mpsettbase.dll" file=\epoc32\release\ARMV5\urel\MemStatePopup.dll "sys\bin\MemStatePopup.dll" data=\epoc32\data\z\resource\apps\gridroot.mif "resource\apps\gridroot.mif" @@ -2847,35 +2598,18 @@ data=\epoc32\data\z\private\101F4CD2\import\suites\foldersuite_touch\suite.xml "private\101F4CD2\import\suites\foldersuite\suite.xml" data=\epoc32\data\z\private\101F4CD2\import\suites\foldersuite_touch\items.xml "private\101F4CD2\import\suites\foldersuite\items.xml" data=\epoc32\include\foldersuite.rsg "resource\apps\foldersuite.rsg" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, messagessearchplugin.dll , messagessearchplugin.dll ) -data=\epoc32\data\Z\resource\apps\messagessearchplugin.mif "resource\apps\messagessearchplugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, missedalarmindicatorplugin.dll , missedalarmindicatorplugin.dll ) file=\epoc32\release\ARMV5\urel\missedalarmstore.dll "sys\bin\missedalarmstore.dll" file=\epoc32\release\ARMV5\urel\mmextensionmanager.dll "sys\bin\mmextensionmanager.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmfolderuiextensionplugin.dll , mmfolderuiextensionplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmsdataprovider.dll , mmsdataprovider.dll ) data=\epoc32\data\Z\resource\mmsdatastore.rsc "resource\mmsdatastore.rsc" data=\epoc32\data\Z\private\101F99F6\capability\101FB0E9.XML "private\101F99F6\capability\101FB0E9.XML" data=\epoc32\data\Z\System\install\mmsdsa_stub.sis "system\install\mmsdsa_stub.sis" data=\epoc32\data\Z\private\100058DB\backup_registration.xml "private\100058DB\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\mmsconninit.dll "sys\bin\mmsconninit.dll" -file=\epoc32\release\ARMV5\urel\mmscli.dll "sys\bin\mmscli.dll" -file=\epoc32\release\ARMV5\urel\mmssrv.dll "sys\bin\mmssrv.dll" file=\epoc32\release\ARMV5\urel\mmstransport.dll "sys\bin\mmstransport.dll" -file=\epoc32\release\ARMV5\urel\mmscodec.dll "sys\bin\mmscodec.dll" -file=\epoc32\release\ARMV5\urel\mmsmessage.dll "sys\bin\mmsmessage.dll" -file=\epoc32\release\ARMV5\urel\mmsserversettings.dll "sys\bin\mmsserversettings.dll" -file=\epoc32\release\ARMV5\urel\mmscodecclient.dll "sys\bin\mmscodecclient.dll" -file=\epoc32\release\ARMV5\urel\mmsappadapter.dll "sys\bin\mmsappadapter.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmswatcher.dll , mmswatcher.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, MmsPushHandler.dll , MmsPushHandler.dll ) file=\epoc32\release\ARMV5\urel\mmsgenutils.dll "sys\bin\mmsgenutils.dll" -file=\epoc32\release\ARMV5\urel\mmssettings.dll "sys\bin\MmsSettings.dll" -file=\epoc32\release\ARMV5\urel\mmsui.dll "sys\bin\MmsUi.dll" -file=\epoc32\release\ARMV5\urel\notui.dll "sys\bin\NotUi.dll" data=\epoc32\data\z\system\install\stub_mmsviewer.sis "system\install\stub_mmsviewer.sis" data=\epoc32\data\z\system\install\stub_notviewer.sis "system\install\stub_notviewer.sis" -data=\epoc32\data\Z\resource\apps\mmsui.mif "resource\apps\mmsui.mif" file=\epoc32\release\ARMV5\urel\mmwidgets.dll "sys\bin\mmwidgets.dll" data=\epoc32\data\z\resource\list\custom\akn_single_large_graphic_pane.xml "resource\list\custom\akn_single_large_graphic_pane.xml" data=\epoc32\data\z\resource\list\custom\akn_logical_template_1.xml "resource\list\custom\akn_logical_template_1.xml" @@ -2908,30 +2642,18 @@ data=\epoc32\data\z\resource\list\lct\akn_logical_template_8.xml "resource\list\lct\akn_logical_template_8.xml" data=\epoc32\data\z\resource\list\lct\akn_logical_template_12.xml "resource\list\lct\akn_logical_template_12.xml" data=\epoc32\data\z\resource\grid\lct\akn_logical_template_3.xml "resource\grid\lct\akn_logical_template_3.xml" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpsettropmodel.dll , mpsettropmodel.dll ) data=\epoc32\data\Z\resource\mpsettingsropmodel.rsc "resource\mpsettingsropmodel.rsc" -file=\epoc32\release\ARMV5\urel\mpxaudioeffectengine.dll "sys\bin\mpxaudioeffectengine.dll" file=\epoc32\release\ARMV5\urel\mpxaudioeffectsview.dll "sys\bin\mpxaudioeffectsview.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxaudioeffectsviewplugin.dll , mpxaudioeffectsviewplugin.dll ) -file=\epoc32\release\ARMV5\urel\mpxequalizerview.dll "sys\bin\mpxequalizerview.dll" data=\epoc32\data\Z\System\data\nullsound.mp3 "system\data\nullsound.mp3" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxequalizerviewplugin.dll , mpxequalizerviewplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxinmemoryplugin.dll , mpxinmemoryplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxlocalaudioplayback.dll , mpxlocalaudioplayback.dll ) file=\epoc32\release\ARMV5\urel\mpxm3uplaylistparsers.dll "sys\bin\mpxm3uplaylistparsers.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxm3uplaylistplugin.dll , mpxm3uplaylistplugin.dll ) data=\epoc32\data\z\system\install\mpxplugins_stub.sis "system\install\mpxplugins_stub.sis" -file=\epoc32\release\ARMV5\urel\mpxmediakeyhandler.dll "sys\bin\mpxmediakeyhandler.dll" -data=\epoc32\data\Z\resource\apps\mpxmediakeyhandler.mif "resource\apps\mpxmediakeyhandler.mif" file=\epoc32\release\ARMV5\urel\mpxmetadatahandler.dll "sys\bin\mpxmetadatahandler.dll" data=\epoc32\data\Z\resource\mplayeravrcpsettings.rsc "resource\mplayeravrcpsettings.rsc" data=\epoc32\data\z\system\install\mpxmusicplayerstub.sis "system\install\mpxmusicplayerstub.sis" data=\epoc32\data\Z\Private\102072c3\backup_registration.xml "private\102072c3\backup_registration.xml" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vcxmyvideoscollectionplugin.DLL , vcxmyvideoscollectionplugin.DLL ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxprogressdownload.dll , mpxprogressdownload.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxprogressdownloadsb.dll , mpxprogressdownloadsb.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxscreensaverplugin.dll , mpxscreensaverplugin.dll ) -data=\epoc32\data\Z\resource\apps\mpxscreensaverplugin.mif "resource\apps\mpxscreensaverplugin.mif" file=\epoc32\release\ARMV5\urel\mpxsqlitedbcommon.dll "sys\bin\mpxsqlitedbcommon.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxsqlitedbhgplugin.dll , mpxsqlitedbhgplugin.dll ) data=\epoc32\data\Z\resource\apps\mpxdbhgplugin.mif "resource\apps\mpxdbhgplugin.mif" @@ -2941,14 +2663,6 @@ data=\epoc32\data\Z\resource\apps\mpxpodcastdbplugin.mif "resource\apps\mpxpodcastdbplugin.mif" file=\epoc32\release\ARMV5\urel\mpxupnpbrowsedialog.dll "sys\bin\mpxupnpbrowsedialog.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxupnpbrowsedialogplugin.dll , mpxupnpbrowsedialogplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxvideohelixplayback.dll , mpxvideohelixplayback.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxvideopdlplaybackviewplugin.dll , mpxvideopdlplaybackviewplugin.dll ) -file=\epoc32\release\ARMV5\urel\mpxvideoplaybackcontrols.dll "sys\bin\mpxvideoplaybackcontrols.dll" -data=\epoc32\data\Z\resource\apps\mpxvideoplaybackcontrols.mif "resource\apps\mpxvideoplaybackcontrols.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxvideoplaybackviewplugin.dll , mpxvideoplaybackviewplugin.dll ) -file=\epoc32\release\ARMV5\urel\mpxvideoplaybackviews.dll "sys\bin\mpxvideoplaybackviews.dll" -file=\epoc32\release\ARMV5\urel\MpxVideoPlayer.exe "sys\bin\MpxVideoPlayer.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\mpxvideoplayer_reg.rsc "Private\10003a3f\import\apps\mpxvideoplayer_reg.rsc" data=\epoc32\data\Z\System\install\videoplayer_stub.sis "system\install\videoplayer_stub.sis" file=\epoc32\release\ARMV5\urel\mpxwaitnotedialog.dll "sys\bin\mpxwaitnotedialog.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mpxwaitnotedialogplugin.dll , mpxwaitnotedialogplugin.dll ) @@ -2959,12 +2673,9 @@ file=\epoc32\release\ARMV5\urel\MsgEditorAppUi.dll "sys\bin\MsgEditorAppUi.dll" file=\epoc32\release\ARMV5\urel\MsgEditorModel.dll "sys\bin\MsgEditorModel.dll" file=\epoc32\release\ARMV5\urel\MsgEditorView.dll "sys\bin\MsgEditorView.dll" -file=\epoc32\release\ARMV5\urel\MsgEditorMediaControl.dll "sys\bin\MsgEditorMediaControl.dll" data=\epoc32\data\Z\resource\apps\MsgEditor.mif "resource\apps\MsgEditor.mif" data=\epoc32\data\Z\resource\apps\msgeditor_ah.mif "resource\apps\msgeditor_ah.mif" file=\epoc32\release\ARMV5\urel\MsgEditorUtils.dll "sys\bin\MsgEditorUtils.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, MsgErrorWatcher.dll , MsgErrorWatcher.dll ) -file=\epoc32\release\ARMV5\urel\MsgMedia.dll "sys\bin\MsgMedia.dll" data=\epoc32\data\Z\resource\MsgMimeToMediaMapping.rsc "resource\MsgMimeToMediaMapping.rsc" file=\epoc32\release\ARMV5\urel\MsgNotifiers.dll "sys\bin\MsgNotifiers.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, MsgNotifiersWrapper.dll , MsgNotifiersWrapper.dll ) @@ -2973,23 +2684,15 @@ file=\epoc32\release\ARMV5\urel\muiu_internal.dll "sys\bin\muiu_internal.dll" auto-bitmap=\epoc32\data\Z\resource\apps\Muiu.mbm resource\apps\Muiu.mbm data=\epoc32\data\Z\resource\apps\Muiu.mif "resource\apps\Muiu.mif" -file=\epoc32\release\ARMV5\urel\multicaluidialog.dll "sys\bin\multicaluidialog.dll" -data=\epoc32\data\Z\resource\apps\multicaluidialog.mif "resource\apps\multicaluidialog.mif" data=\epoc32\data\Z\resource\apps\multimediasearchplugin.mif "resource\apps\multimediasearchplugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, multimediasearchplugin.dll , multimediasearchplugin.dll ) data=\epoc32\data\Z\resource\apps\musuiicons.mif "resource\apps\musuiicons.mif" data=\epoc32\data\Z\resource\apps\musuitoolbaricons.mif "resource\apps\musuitoolbaricons.mif" -file=\epoc32\release\ARMV5\urel\musmanagerserver.exe "sys\bin\musmanagerserver.exe" file=\epoc32\release\ARMV5\urel\musmanagerclient.dll "sys\bin\musmanagerclient.dll" -file=\epoc32\release\ARMV5\urel\musengine.dll "sys\bin\musengine.dll" -file=\epoc32\release\ARMV5\urel\musindicator.dll "sys\bin\musindicator.dll" data=\epoc32\data\Z\private\1028238D\tone.amr "private\1028238D\tone.amr" data=\epoc32\data\Z\resource\apps\musindicatoricons.mif "resource\apps\musindicatoricons.mif" data=\epoc32\data\Z\resource\apps\musindicatoricons.mbm "resource\apps\musindicatoricons.mbm" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, musaoplugin.dll , musaoplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, musaiwprovider.dll , musaiwprovider.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, musavailabilityplugin.dll , musavailabilityplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, muswpadapter.dll , muswpadapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mussettingsui.dll , mussettingsui.dll ) data=\epoc32\data\Z\resource\apps\mussettingsplugin.mif "resource\apps\mussettingsplugin.mif" data=\epoc32\data\Z\system\install\multimediasharing_stub.sis "system\install\multimediasharing_stub.sis" @@ -2997,10 +2700,8 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, musiccontentpublisher.dll , musiccontentpublisher.dll ) data=\epoc32\data\Z\Resource\apps\musichomescreenicons.mif "resource\apps\musichomescreenicons.mif" data=\epoc32\include\musichomescreen.rsg "resource\apps\musichomescreen.rsg" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, musicplayeractionhandlerplugin.dll , musicplayeractionhandlerplugin.dll ) data=\epoc32\data\Z\Private\200159c0\install\musicwidget_10207c18\hsps\00\manifest.dat "private\200159c0\install\musicwidget_10207c18\hsps\00\manifest.dat" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, myvideosindicatorplugin.dll , myvideosindicatorplugin.dll ) -file=\epoc32\release\ARMV5\urel\Ncnlist.exe "sys\bin\Ncnlist.exe" data=\epoc32\data\Z\system\install\ncnlist_stub.SIS "system\install\ncnlist_stub.SIS" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, NCNNOTIFICATION.DLL , NCNNOTIFICATION.DLL ) data=\epoc32\data\Z\private\10005907\backup_registration.xml "private\10005907\backup_registration.xml" @@ -3012,33 +2713,18 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmlnotepaddataprovider.dll , nsmlnotepaddataprovider.dll ) data=\epoc32\data\Z\resource\NSmlNotepadDataStoreFormat.RSC "resource\NSmlNotepadDataStoreFormat.RSC" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmimpsadapter.dll , nsmldmimpsadapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WPEMailAdapter.dll , WPEMailAdapter.dll ) REM OMA Device Management Application UI -file=\epoc32\release\ARMV5\urel\NSmlDMSync.exe "sys\bin\NSmlDMSync.exe" -auto-bitmap=\epoc32\data\Z\resource\apps\NSmlDMSync.mbm resource\apps\NSmlDMSync.mbm -data=\epoc32\data\Z\resource\apps\NSmlDMSync.mif "resource\apps\NSmlDMSync.mif" -data=\epoc32\data\Z\resource\apps\NSmlDMSync_AIF.MIF "resource\apps\NSmlDMSync_aif.mif" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\NSmlDMSync_reg.rsc "Private\10003a3f\apps\NSmlDMSync_reg.rsc" data=\epoc32\data\Z\private\101F6DE5\backup_registration.xml "private\101F6DE5\backup_registration.xml" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, OmaDmCPPlugin.dll , OmaDmCPPlugin.dll ) REM OMA Data Synchronisation Application UI -REM file=\epoc32\release\ARMV5\urel\NSmlDSSync.exe sys\bin\NSmlDSSync.exe -REM file=\epoc32\release\ARMV5\urel\NSmlDSSync.exe sys\bin\NSmlDSSync.exe -file=\epoc32\release\ARMV5\urel\NSmlDSSync.exe "sys\bin\NSmlDSSync.exe" REM __SCALABLE_IMAGE(\epoc32\data\Z,resource\apps,resource\apps,NSmlDSSync) -data=\epoc32\data\Z\resource\apps\NSmlDSSync.mif "resource\apps\NSmlDSSync.mif" -data=\epoc32\data\Z\resource\apps\NSmlDSSync_AIF.MIF "resource\apps\NSmlDSSync_aif.mif" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\NSmlDSSync_reg.rsc "Private\10003a3f\apps\NSmlDSSync_reg.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, OmaDsAppUiPlugin.dll , OmaDsAppUiPlugin.dll ) data=\epoc32\data\Z\Private\200159c0\install\onerow_2001f480\hsps\00\manifest.dat "private\200159c0\install\onerow_2001f480\hsps\00\manifest.dat" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, OperatorLogoAdapter.dll , OperatorLogoAdapter.dll ) file=\epoc32\release\ARMV5\urel\Operatormenu.exe "sys\bin\Operatormenu.exe" data=\epoc32\data\Z\resource\apps\Operatormenu_AIF.MIF "resource\apps\Operatormenu_aif.mif" data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\Operatormenu_reg.rsc "Private\10003a3f\import\apps\Operatormenu_reg.rsc" -file=\epoc32\release\ARMV5\urel\OpLogoBC.dll "sys\bin\OpLogoBC.dll" data=\epoc32\data\Z\Private\200159c0\install\organizer_2001f481\hsps\00\manifest.dat "private\200159c0\install\organizer_2001f481\hsps\00\manifest.dat" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, pbk2rclcontactactionmenu.dll , pbk2rclcontactactionmenu.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, pbk2rclcontactactionservice.dll , pbk2rclcontactactionservice.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, pbk2rclcallplugin.dll , pbk2rclcallplugin.dll ) data=\epoc32\data\Z\resource\apps\pbk2rclcallplugin.mif "resource\apps\pbk2rclcallplugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, pbk2rclsaveascontactplugin.dll , pbk2rclsaveascontactplugin.dll ) @@ -3058,7 +2744,6 @@ file=\epoc32\release\ARMV5\urel\PcsServer.exe "sys\bin\PcsServer.exe" data=\epoc32\data\Z\resource\contactsort.rsc "resource\contactsort.rsc" data=\epoc32\data\Z\system\install\psengine_stub.sis "system\install\psengine_stub.sis" -file=\epoc32\release\ARMV5\urel\PhoneAnimDll.dll "sys\bin\PhoneAnimDll.dll" data=\epoc32\data\Z\System\install\PhoneAnimDll_stub.sis "System\Install\PhoneAnimDll_stub.sis" file=\epoc32\release\ARMV5\urel\PbkEng.dll "sys\bin\PbkEng.dll" auto-bitmap=\epoc32\data\Z\resource\apps\Phonebook.mbm resource\apps\Phonebook.mbm @@ -3067,42 +2752,21 @@ file=\epoc32\release\ARMV5\urel\PbkExt.dll "sys\bin\PbkExt.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PbkEngine_FM.dll , PbkEngine_FM.dll ) data=\epoc32\data\Z\private\101f87b1\backup_registration.xml "private\101f87b1\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\Phonebook2.exe "sys\bin\Phonebook2.exe" -auto-bitmap=\epoc32\data\Z\resource\apps\Phonebook2.mbm resource\apps\Phonebook2.mbm -data=\epoc32\data\Z\resource\apps\Phonebook2.mif "resource\apps\Phonebook2.mif" -data=\epoc32\data\Z\resource\apps\Phonebook2_AIF.MIF "resource\apps\Phonebook2_aif.mif" data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\Phonebook2_reg.rsc "Private\10003a3f\apps\Phonebook2_reg.rsc" file=\epoc32\release\ARMV5\urel\Pbk2Presentation.dll "sys\bin\Pbk2Presentation.dll" -file=\epoc32\release\ARMV5\urel\Pbk2UIControls.dll "sys\bin\Pbk2UIControls.dll" -file=\epoc32\release\ARMV5\urel\Pbk2CommonUI.dll "sys\bin\Pbk2CommonUI.dll" -file=\epoc32\release\ARMV5\urel\Pbk2Commands.dll "sys\bin\Pbk2Commands.dll" -file=\epoc32\release\ARMV5\urel\Pbk2UIExt.dll "sys\bin\Pbk2UIExt.dll" file=\epoc32\release\ARMV5\urel\Pbk2CommonUtility.dll "sys\bin\Pbk2CommonUtility.dll" -file=\epoc32\release\ARMV5\urel\pbk2spbcontentprovider.dll "sys\bin\pbk2spbcontentprovider.dll" -file=\epoc32\release\ARMV5\urel\Pbk2ServerApp.exe "sys\bin\Pbk2ServerApp.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\Pbk2ServerApp_reg.rsc "Private\10003a3f\apps\Pbk2ServerApp_reg.rsc" data=\epoc32\data\Z\resource\apps\phonebook2ece.mif "resource\apps\phonebook2ece.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Pbk2UIServices.dll , Pbk2UIServices.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Pbk2UIPolicy.dll , Pbk2UIPolicy.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Pbk2GroupUI.dll , Pbk2GroupUI.dll ) data=\epoc32\data\Z\resource\Pbk2UIPolicyRes.rsc "resource\Pbk2UIPolicyRes.rsc" data=\epoc32\data\Z\resource\apps\psu2.mif "resource\apps\psu2.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Pbk2USIMUI.dll , Pbk2USIMUI.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Pbk2USIMThinUI.dll , Pbk2USIMThinUI.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Pbk2MMCUI.dll , Pbk2MMCUI.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Pbk2MapUI.dll , Pbk2MapUI.dll ) data=\epoc32\data\Z\private\101f4cce\backup_registration.xml "private\101f4cce\backup_registration.xml" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ExtensionManager.dll , ExtensionManager.dll ) data=\epoc32\data\Z\Resource\ExtensionManager.mbm "resource\ExtensionManager.mbm" -file=\epoc32\release\ARMV5\urel\xSPViewServices.dll "sys\bin\xSPViewServices.dll" -data=\epoc32\data\Z\private\10003a3f\apps\Phonebook2_reg.rsc "private\10003a3f\Import\Apps\Phonebook2_reg.rsc" data=\epoc32\data\Z\System\install\pbk2_stub.sis "System\Install\pbk2_stub.sis" data=\epoc32\data\Z\System\install\phonecntfinder_stub.SIS "System\Install\phonecntfinder_stub.SIS" file=\epoc32\release\ARMV5\urel\ENGINEINFO.DLL "sys\bin\ENGINEINFO.DLL" -file=\epoc32\release\ARMV5\urel\AUDIOHANDLING.DLL "sys\bin\AUDIOHANDLING.DLL" data=\epoc32\data\Z\resource\defaultbeep.RSC "resource\defaultbeep.RSC" file=\epoc32\release\ARMV5\urel\LOGHANDLING.DLL "sys\bin\LOGHANDLING.DLL" -file=\epoc32\release\ARMV5\urel\peservicehandling.dll "sys\bin\peservicehandling.dll" data=\epoc32\data\Z\private\1000A86C\backup_registration.xml "private\1000A86C\backup_registration.xml" data=\epoc32\data\Z\System\install\audiohandling_stub.sis "System\Install\audiohandling_stub.sis" data=\epoc32\data\Z\System\install\callhandling_stub.sis "System\Install\callhandling_stub.sis" @@ -3112,9 +2776,7 @@ data=\epoc32\data\Z\System\install\servicehandling_stub.sis "System\Install\servicehandling_stub.sis" data=\epoc32\data\Z\System\install\phonesettings_stub.SIS "System\Install\phonesettings_stub.SIS" REM PhoneUI -file=\epoc32\release\ARMV5\urel\phoneuicontrol.dll "sys\bin\phoneuicontrol.dll" file=\epoc32\release\ARMV5\urel\phoneuiutils.dll "sys\bin\phoneuiutils.dll" -file=\epoc32\release\ARMV5\urel\phonemediatorcenter.dll "sys\bin\phonemediatorcenter.dll" data=\epoc32\data\Z\System\install\phoneui_stub.sis "System\Install\phoneui_stub.sis" data=\epoc32\data\Z\System\install\phoneuicontrol_stub.sis "System\Install\phoneuicontrol_stub.sis" data=\epoc32\data\Z\System\install\phoneuistates_stub.sis "System\Install\phoneuistates_stub.sis" @@ -3122,13 +2784,7 @@ data=\epoc32\data\Z\System\install\phoneuiview_stub.sis "System\Install\phoneuiview_stub.sis" data=\epoc32\data\Z\System\install\phonemediatorcenter_stub.sis "System\Install\phonemediatorcenter_stub.sis" data=\epoc32\data\Z\System\install\phoneuivoipextension_stub.sis "System\Install\phoneuivoipextension_stub.sis" -file=\epoc32\release\ARMV5\urel\PnpProvisioning.exe "sys\bin\PnpProvisioning.exe" -data=\EPOC32\DATA\Z\private\10003a3f\apps\pnpprovisioning_reg.RSC "private\10003a3f\import\apps\pnpprovisioning_reg.RSC" -file=\epoc32\release\ARMV5\urel\NHwrParser.dll "sys\bin\NHwrParser.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, recnhwr.dll , recnhwr.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PnpPaosFilter.dll , PnpPaosFilter.dll ) -file=\epoc32\release\ARMV5\urel\podcast.exe "sys\bin\podcast.ext" -file=\epoc32\release\ARMV5\urel\podcastengine.dll "sys\bin\podcastengine.dll" REM MISSING data=\epoc32\data\Z\Resource\apps\podcast.rsc resource\apps\podcast.rsc data=\epoc32\data\Z\Resource\apps\Podcast.mif "resource\apps\Podcast.mif" data=\epoc32\data\Z\Resource\help\podcatcher.hlp "resource\apps\podcatcher.hlp" @@ -3144,30 +2800,22 @@ file=\epoc32\release\ARMV5\urel\presencecacheserver2.exe "sys\bin\presencecacheserver2.exe" file=\epoc32\release\ARMV5\urel\presencetrafficlights.dll "sys\bin\presencetrafficlights.dll" data=\epoc32\data\Z\resource\apps\presencetrafficlights.mif "resource\apps\presencetrafficlights.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSProfilesPlugin.dll , GSProfilesPlugin.dll ) -data=\epoc32\data\Z\resource\apps\gsprofilesplugin.mif "resource\apps\gsprofilesplugin.mif" data=\epoc32\data\Z\Private\2000B187\10283386.xml "private\2000B187\10283386.xml" data=\epoc32\data\Z\Private\200159c0\install\profile_2001cb7c\hsps\00\manifest.dat "private\200159c0\install\profile_2001cb7c\hsps\00\manifest.dat" -file=\epoc32\release\ARMV5\urel\ProvisioningFile.dll "sys\bin\ProvisioningFile.dll" data=\epoc32\data\Z\resource\apps\PslnCallImagePlugin.mif "resource\apps\PslnCallImagePlugin.mif" data=\epoc32\data\Z\System\install\pslncallimageplugin_stub.SIS "System\Install\pslncallimageplugin_stub.SIS" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PslnCallImagePlugin.dll , PslnCallImagePlugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PsMruAdapter.dll , PsMruAdapter.dll ) REM PhoneSettings Notes UI -file=\epoc32\release\ARMV5\urel\psui.dll "sys\bin\psui.dll" data=\epoc32\data\Z\System\install\psui_stub.sis "System\Install\psui_stub.sis" file=\epoc32\release\ARMV5\urel\PushMtmCliSrv.dll "sys\bin\PushMtmCliSrv.dll" file=\epoc32\release\ARMV5\urel\PushMtmUi.dll "sys\bin\PushMtmUi.dll" file=\epoc32\release\ARMV5\urel\PushMtmUtil.dll "sys\bin\PushMtmUtil.dll" data=\epoc32\data\Z\resource\apps\PushMtm.mif "resource\apps\PushMtm.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PushMtmPushContentHandler.dll , PushMtmPushContentHandler.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PushMtmWhiteListAdapter.dll , PushMtmWhiteListAdapter.dll ) file=\epoc32\release\ARMV5\urel\RCSE.dll "sys\bin\RCSE.dll" data=\epoc32\data\Z\Private\100012a5\policy\10202869.SPD "PRIVATE\100012a5\policy\10202869.SPD" data=\epoc32\data\Z\Private\10202869\backup_registration.xml "private\10202869\backup_registration.xml" file=\epoc32\release\ARMV5\urel\richBio.dll "sys\bin\richBio.dll" -file=\epoc32\release\ARMV5\urel\RingBC.dll "sys\bin\RingBC.dll" -data=\epoc32\data\Z\resource\apps\RingBC.mif "resource\apps\RingBC.mif" data=\epoc32\data\Z\Private\200159c0\install\root_2001f482\xuikon\00\root.o0000 "private\200159c0\install\root_2001f482\xuikon\00\root.o0000" data=\epoc32\data\Z\Private\200159c0\install\root_2001f482\hsps\00\manifest.dat "private\200159c0\install\root_2001f482\hsps\00\manifest.dat" REM This iby file puts Symbian components to ROM. It replaces sislwappush.iby. @@ -3177,7 +2825,6 @@ data=\epoc32\data\Z\Resource\wappush\sl.dtd "RESOURCE\wappush\sl.dtd" data=\epoc32\data\Z\Resource\wappush\si10.tok "RESOURCE\wappush\si10.tok" data=\epoc32\data\Z\Resource\wappush\sl10.tok "RESOURCE\wappush\sl10.tok" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, iptvscheduleddownloadplugin.dll , iptvscheduleddownloadplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SchemePlugin.dll , SchemePlugin.dll ) file=\epoc32\release\ARMV5\urel\sconsyncclient.dll "sys\bin\sconsyncclient.dll" file=\epoc32\release\ARMV5\urel\sconsyncserver.exe "sys\bin\sconsyncserver.exe" @@ -3195,46 +2842,31 @@ file=\epoc32\release\ARMV5\urel\searchutilities.dll "sys\bin\searchutilities.dll" file=\epoc32\release\ARMV5\urel\searchclient.dll "sys\bin\searchclient.dll" file=\epoc32\release\ARMV5\urel\searchserver.exe "sys\bin\searchserver.exe" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GenericMtmPlugin.dll , GenericMtmPlugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DrmLinkSender.dll , DrmLinkSender.dll ) file=\epoc32\release\ARMV5\urel\SERVICEREQUEST.DLL "sys\bin\SERVICEREQUEST.DLL" data=\epoc32\data\Z\System\install\Servicerequest_stub.sis "System\Install\Servicerequest_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, servicewidgetdatapublisher.dll , servicewidgetdatapublisher.dll ) data=\epoc32\data\Z\system\install\servicewidget_stub.sis "system\install\servicewidget_stub.sis" data=\epoc32\data\Z\Private\200159c0\install\servicewidget_20021383\xuikon\00\servicewidget.o0000 "private\200159c0\install\servicewidget_20021383\xuikon\00\servicewidget.o0000" data=\epoc32\data\Z\Private\200159c0\install\servicewidget_20021383\hsps\00\manifest.dat "private\200159c0\install\servicewidget_20021383\hsps\00\manifest.dat" data=\epoc32\data\Z\private\10202be9\200071d3.txt "private\10202be9\200071d3.txt" file=\epoc32\release\ARMV5\urel\shwslideshowengine.dll "sys\bin\shwslideshowengine.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, shwslideshowviewplugin.dll , shwslideshowviewplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, shwsettingsplugin.dll , shwsettingsplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, silenceactionplugin.dll , silenceactionplugin.dll ) data=\epoc32\data\Z\private\10282BC4\Rules\silenceringingtone_activate.rul "private\10282BC4\Rules\silenceringingtone_activate.rul" data=\epoc32\data\Z\private\10282BC4\Rules\silenceringingtone_silence.rul "private\10282BC4\Rules\silenceringingtone_silence.rul" data=\epoc32\data\Z\System\install\silenceactionplugin_stub.SIS "System\Install\silenceactionplugin_stub.SIS" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipconnectionprovider.dll , sipconnectionprovider.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipimresolver.dll , sipimresolver.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipmxresolver.dll , sipmxresolver.dll ) file=\epoc32\release\ARMV5\urel\SmilEng.dll "sys\bin\SmilEng.dll" REM SMIL transition component dll file=\epoc32\release\ARMV5\urel\smiltran.dll "sys\bin\smiltran.dll" -file=\epoc32\release\ARMV5\urel\smilmediarenderer.dll "sys\bin\smilmediarenderer.dll" -file=\epoc32\release\ARMV5\urel\smilplayer.dll "sys\bin\smilplayer.dll" -data=\epoc32\data\Z\resource\apps\smilplayer.mif "resource\apps\smilplayer.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, smsdataprovider.dll , smsdataprovider.dll ) data=\epoc32\data\Z\resource\smsdatastore.RSC "resource\smsdatastore.RSC" data=\epoc32\data\Z\private\101F99F6\capability\10206B5C.XML "private\101F99F6\capability\10206B5C.XML" data=\epoc32\data\Z\System\install\smsdsa_stub.sis "system\install\smsdsa_stub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SmsStrict.DLL , SmsStrict.DLL ) data=\epoc32\data\z\system\install\stubsmsviewer.sis "system\install\stubsmsviewer.sis" -file=\epoc32\release\ARMV5\urel\smum.dll "sys\bin\smum.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, smsdetailsplugin.dll , smsdetailsplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, defaultsimdialogplugin.dll , defaultsimdialogplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, speeddialgsplugin.dll , speeddialgsplugin.dll ) data=\epoc32\data\Z\resource\apps\speeddialgsplugin.mif "resource\apps\speeddialgsplugin.mif" -file=\epoc32\release\ARMV5\urel\nssvcommandexecutor.exe "sys\bin\nssvcommandexecutor.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nssvcexecutorbearer.dll , nssvcexecutorbearer.dll ) file=\epoc32\release\ARMV5\urel\nssvoiceuipluginhandler.dll "sys\bin\nssvoiceuipluginhandler.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vuipprofileobserverplugin.dll , vuipprofileobserverplugin.dll ) data=\epoc32\data\Z\Private\102818E7\defaultvoicecommands.xml "private\102818E7\defaultvoicecommands.xml" data=\epoc32\data\Z\Private\102818E7\btvoicecommands.xml "private\102818E7\btvoicecommands.xml" data=\epoc32\data\Z\Private\102818E7\emailvoicecommands.xml "private\102818E7\emailvoicecommands.xml" @@ -3248,18 +2880,9 @@ file=\epoc32\release\ARMV5\urel\nssvasapi.dll "sys\bin\nssvasapi.dll" file=\epoc32\release\ARMV5\urel\nssvascontacthdlr.dll "sys\bin\nssvascontacthdlr.dll" file=\epoc32\release\ARMV5\urel\vcommandhandler.dll "sys\bin\vcommandhandler.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsssicontrollerplugin.dll , nsssicontrollerplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nssttscontrollerplugin.dll , nssttscontrollerplugin.dll ) -file=\epoc32\release\ARMV5\urel\nssdevasr.dll "sys\bin\nssdevasr.dll" file=\epoc32\release\ARMV5\urel\nsssispeechrecognitiondata.dll "sys\bin\nsssispeechrecognitiondata.dll" -file=\epoc32\release\ARMV5\urel\nsssispeechrecognitioncustomcommands.dll "sys\bin\nsssispeechrecognitioncustomcommands.dll" -file=\epoc32\release\ARMV5\urel\nsssispeechrecognitionutility.dll "sys\bin\nsssispeechrecognitionutility.dll" -file=\epoc32\release\ARMV5\urel\nssdevtts.dll "sys\bin\nssdevtts.dll" -file=\epoc32\release\ARMV5\urel\nssttscustomcommands.dll "sys\bin\nssttscustomcommands.dll" file=\epoc32\release\ARMV5\urel\nssttscommon.dll "sys\bin\nssttscommon.dll" -file=\epoc32\release\ARMV5\urel\nssttsutility.dll "sys\bin\nssttsutility.dll" file=\epoc32\release\ARMV5\urel\speechsynthesis.dll "sys\bin\speechsynthesis.dll" -file=\epoc32\release\ARMV5\urel\speechsynthesisserver.exe "sys\bin\speechsynthesisserver.exe" data=\epoc32\data\Z\resource\nssvasresource.rsc "resource\nssvasresource.rsc" data=\epoc32\data\Z\resource\nssdevasr.rsc "resource\nssdevasr.rsc" data=\epoc32\data\Z\resource\nssdevtts.rsc "resource\nssdevtts.rsc" @@ -3268,17 +2891,13 @@ data=\epoc32\data\Z\Private\100012a5\policy\10201AFE.spd "private\100012a5\policy\10201AFE.spd" data=\epoc32\data\Z\Private\100012a5\policy\10201AFF.spd "private\100012a5\policy\10201AFF.spd" data=\epoc32\data\Z\Private\10208ACC\10201AEE.txt "private\10208ACC\10201AEE.txt" -file=\epoc32\release\ARMV5\urel\SSSettings.dll "sys\bin\sssettings.dll" data=\epoc32\data\Z\System\install\sssettings_stub.SIS "System\Install\sssettings_stub.SIS" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, supadapter.dll , supadapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SVGCodec.dll , SVGCodec.dll ) data=\epoc32\data\Z\Resource\ICL\102073D7_extra.rsc "Resource\ICL\102073D7_extra.rsc" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SVGTScreenSaverPlugin.dll , SVGTScreenSaverPlugin.dll ) -file=\epoc32\release\ARMV5\urel\SVGTAppObserverUtil.dll "sys\bin\SVGTAppObserverUtil.dll" file=\epoc32\release\ARMV5\urel\SVGTFileViewDetails.dll "sys\bin\SVGTFileViewDetails.dll" file=\epoc32\release\ARMV5\urel\SVGTUIControl.dll "sys\bin\SVGTUIControl.dll" data=\epoc32\data\Z\resource\apps\SVGTUIControl.mif "resource\apps\SVGTUIControl.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, svp.dll , svp.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, svtcallmenu.dll , svtcallmenu.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, svtlogging.dll , svtlogging.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, svtmatching.dll , svtmatching.dll ) @@ -3294,34 +2913,18 @@ data=\epoc32\data\Z\Private\200159c0\install\tworows_2001f488\hsps\00\manifest.dat "private\200159c0\install\tworows_2001f488\hsps\00\manifest.dat" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, TXTRECOG.dll , TXTRECOG.dll ) data=\epoc32\data\z\Resource\apps\TxtRecog.RSC "Resource\apps\TxtRecog.RSC" -file=\epoc32\release\ARMV5\urel\UISettingsSrv.exe "sys\bin\UISettingsSrv.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\UISettingsSrv_reg.rsc "Private\10003a3f\apps\UISettingsSrv_reg.rsc" file=\epoc32\release\ARMV5\urel\UISettingsClient.dll "sys\bin\UISettingsClient.dll" data=\epoc32\data\z\system\install\stub_unieditor.sis "system\install\stub_unieditor.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, UniMmsPlugin.dll , UniMmsPlugin.dll ) -file=\epoc32\release\ARMV5\urel\UniDataModel.dll "sys\bin\UniDataModel.dll" file=\epoc32\release\ARMV5\urel\UniMtms.dll "sys\bin\UniMtms.dll" file=\epoc32\release\ARMV5\urel\UniPluginApi.dll "sys\bin\UniPluginApi.dll" file=\epoc32\release\ARMV5\urel\VideoConversionApi.dll "sys\bin\VideoConversionApi.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, UniSmsPlugin.dll , UniSmsPlugin.dll ) -file=\epoc32\release\ARMV5\urel\UniUtils.dll "sys\bin\UniUtils.dll" -auto-bitmap=\epoc32\data\Z\resource\apps\uniutils.mbm resource\apps\uniutils.mbm -data=\epoc32\data\Z\resource\apps\uniutils.mif "resource\apps\uniutils.mif" -file=\epoc32\release\ARMV5\urel\USSD.EXE "sys\bin\Ussd.exe" data=\epoc32\data\Z\System\install\Ussd_stub.sis "System\Install\Ussd_stub.sis" -data=\epoc32\data\Z\resource\apps\Ussd_AIF.MIF "resource\apps\Ussd_aif.mif" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\Ussd_reg.rsc "Private\10003a3f\apps\Ussd_reg.rsc" file=\epoc32\release\ARMV5\urel\vcalbc.dll "sys\bin\vcalbc.dll" file=\epoc32\release\ARMV5\urel\VcardBc.dll "sys\bin\VcardBc.dll" file=\epoc32\release\ARMV5\urel\vccutils.dll "sys\bin\vccutils.dll" data=\epoc32\data\Z\System\install\vcc_stub.sis "System\Install\vcc_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wpvccadapter.dll , wpvccadapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmvccadapter.dll , nsmldmvccadapter.dll ) -file=\epoc32\release\ARMV5\urel\vcchotrigger.dll "sys\bin\vcchotrigger.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vccperformer.dll , vccperformer.dll ) file=\epoc32\release\ARMV5\urel\vccuipropertyhandler.dll "sys\bin\vccuipropertyhandler.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vcxnsscheduleplugin.dll , vcxnsscheduleplugin.dll ) -file=\epoc32\release\ARMV5\urel\vcxnsscheduleview.dll "sys\bin\vcxnsscheduleview.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vccontrolpanelplugin.dll , vccontrolpanelplugin.dll ) data=\epoc32\data\Z\resource\apps\vccontrolpanelplugin.mif "resource\apps\vccontrolpanelplugin.mif" data=\epoc32\data\Z\Private\101F8555\backup_registration.xml "PRIVATE\101F8555\backup_registration.xml" @@ -3330,27 +2933,14 @@ data=\epoc32\data\Z\Resource\versions\imeisv.txt "resource\versions\imeisv.txt" REM Versit2 Parsers file=\epoc32\release\ARMV5\urel\versit2.dll "sys\bin\Versit2.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, VcXNotifierPlugin.DLL , VcXNotifierPlugin.DLL ) -file=\epoc32\release\ARMV5\urel\vcxnsuiengine.dll "sys\bin\vcxnsuiengine.dll" -file=\epoc32\release\ARMV5\urel\IptvClientApi.dll "sys\bin\IptvClientApi.dll" -file=\epoc32\release\ARMV5\urel\IptvServer.exe "sys\bin\IptvServer.exe" -file=\epoc32\release\ARMV5\urel\LiveTvUtils.dll "sys\bin\LiveTvUtils.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, IptvOmaProvisioningAdapter.dll , IptvOmaProvisioningAdapter.dll ) -file=\epoc32\release\ARMV5\urel\vcxnssettingsengine.dll "sys\bin\vcxnssettingsengine.dll" -file=\epoc32\release\ARMV5\urel\IptvProvisioningProcessor.dll "sys\bin\IptvProvisioningProcessor.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, IptvProvRec.DLL , IptvProvRec.DLL ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, IptvRssPlugin.DLL , IptvRssPlugin.DLL ) -file=\epoc32\release\ARMV5\urel\VideoSource.dll "sys\bin\VideoSource.dll" data=\epoc32\data\Z\System\install\videosource_stub.sis "system\install\videosource_stub.sis" REM Video telephony engine libraries file=\epoc32\release\ARMV5\urel\videotelproto.dll "sys\bin\videotelproto.dll" -file=\epoc32\release\ARMV5\urel\Videoteleng.dll "sys\bin\Videoteleng.dll" -file=\epoc32\release\ARMV5\urel\cscallctrl.dll "sys\bin\cscallctrl.dll" file=\epoc32\release\ARMV5\urel\vtlogger.dll "sys\bin\vtlogger.dll" data=\epoc32\data\Z\System\install\videoteleng_stub.sis "system\install\videoteleng_stub.sis" REM Video Telephone application data=\epoc32\data\Z\System\install\videotelui_stub.sis "system\install\videotelui_stub.sis" -file=\epoc32\release\ARMV5\urel\IptvUtil.dll "sys\bin\IptvUtil.dll" data=\epoc32\data\Z\resource\apps\iptvmimesupport.RSC "resource\apps\iptvmimesupport.RSC" file=\epoc32\release\ARMV5\urel\vcxviewmessageutility.dll "sys\bin\vcxviewmessageutility.dll" data=\epoc32\data\Z\private\10202be9\2001B288.txt "private\10202BE9\2001B288.txt" @@ -3360,11 +2950,8 @@ file=\epoc32\release\ARMV5\urel\VPbkEngUtils.dll "sys\bin\VPbkEngUtils.dll" file=\epoc32\release\ARMV5\urel\VPbkVCardEng.dll "sys\bin\VPbkVCardEng.dll" file=\epoc32\release\ARMV5\urel\VPbkSimStoreService.dll "sys\bin\VPbkSimStoreService.dll" -file=\epoc32\release\ARMV5\urel\VPbkSimStoreImpl.dll "sys\bin\VPbkSimStoreImpl.dll" file=\epoc32\release\ARMV5\urel\VPbkSimStoreCommon.dll "sys\bin\VPbkSimStoreCommon.dll" -file=\epoc32\release\ARMV5\urel\VPbkSimServer.exe "sys\bin\VPbkSimServer.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, VPbkCntModel.dll , VPbkCntModel.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, VPbkSimStore.dll , VPbkSimStore.dll ) data=\epoc32\data\Z\resource\VPbkEng.rsc "resource\VPbkEng.rsc" data=\epoc32\data\Z\resource\VPbkFieldTypeSelectors.rsc "resource\VPbkFieldTypeSelectors.rsc" data=\epoc32\data\Z\resource\VPbkVCardEng.rsc "resource\VPbkVCardEng.rsc" @@ -3373,26 +2960,18 @@ data=\epoc32\data\Z\System\install\vm_stub.sis "System\Install\vm_stub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSVoiceRecorderPlugin.dll , GSVoiceRecorderPlugin.dll ) file=\epoc32\release\ARMV5\urel\VoicerecorderUtils.DLL "sys\bin\VoicerecorderUtils.DLL" -file=\epoc32\release\ARMV5\urel\VoicerecorderRecview.DLL "sys\bin\VoicerecorderRecview.DLL" file=\epoc32\release\ARMV5\urel\NewService.DLL "sys\bin\NewService.DLL" data=\epoc32\data\Z\resource\apps\GSVoiceRecorderPlugin.mif "resource\apps\GSVoiceRecorderPlugin.mif" data=\epoc32\data\Z\Private\100058CA\backup_registration.xml "private\100058CA\backup_registration.xml" data=\epoc32\data\Z\System\Install\VoiceRecorder_stub.SIS "System\install\VoiceRecorder_stub.SIS" data=\epoc32\data\Z\resource\apps\voiceui.mif "resource\apps\voiceui.mif" file=\epoc32\release\ARMV5\urel\voiceUiRecognition.dll "sys\bin\voiceUiRecognition.dll" -file=\epoc32\release\ARMV5\urel\vuivoicerecognition.exe "sys\bin\vuivoicerecognition.exe" -data=\epoc32\data\Z\resource\apps\vuivoicerecognition_AIF.MIF "resource\apps\vuivoicerecognition_aif.mif" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\vuivoicerecognition_reg.rsc "Private\10003a3f\apps\vuivoicerecognition_reg.rsc" data=\epoc32\release\ARMV5\urel\z\system\sounds\digital\NameDiallerStartTone.wav "System\sounds\digital\NameDiallerStartTone.wav" data=\epoc32\release\ARMV5\urel\z\system\sounds\digital\namediallerconfirmtone.wav "System\sounds\digital\namediallerconfirmtone.wav" data=\epoc32\release\ARMV5\urel\z\system\sounds\digital\btnamediallerstarttone.wav "System\sounds\digital\btnamediallerstarttone.wav" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aiwpbkinfoviewprovider.dll , aiwpbkinfoviewprovider.dll ) -file=\epoc32\release\ARMV5\urel\pbkinfoview.dll "sys\bin\pbkinfoview.dll" file=\epoc32\release\ARMV5\urel\voipeventlog.dll "sys\bin\voipeventlog.dll" file=\epoc32\release\ARMV5\urel\voipxmlprocessor.dll "sys\bin\voipxmlprocessor.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, voipprovrec.dll , voipprovrec.dll ) -file=\epoc32\release\ARMV5\urel\voipprovisioningapp.exe "sys\bin\voipprovisioningapp.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\voipprovisioningapp_reg.rsc "Private\10003a3f\import\apps\voipprovisioningapp_reg.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vrec.dll , vrec.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, vtmediatorplugin.dll , vtmediatorplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WallpaperAdapter.dll , WallpaperAdapter.dll ) @@ -3419,8 +2998,6 @@ data=\epoc32\data\Z\System\install\widgetmanager_stub.sis "system\install\widgetmanager_stub.sis" data=\epoc32\data\Z\private\10202be9\20026F53.txt "private\10202be9\20026F53.txt" file=\epoc32\release\ARMV5\urel\WMLBC.dll "sys\bin\WMLBC.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wpgeneralvoipsettingsadapter.dll , wpgeneralvoipsettingsadapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wpvoipadapter.dll , wpvoipadapter.dll ) file=\epoc32\release\ARMV5\urel\WVSAPSettingsStore.dll "sys\bin\WVSAPSettingsStore.dll" REM xhtmlparser component dll file=\epoc32\release\ARMV5\urel\xhtmlparser.dll "sys\bin\xhtmlparser.dll" @@ -3431,8 +3008,6 @@ data=\epoc32\data\Z\private\10282BC4\rules\keyevent.rul "private\10282BC4\rules\keyevent.rul" data=\epoc32\data\Z\private\10282BC4\rules\keyincall.rul "private\10282BC4\rules\keyincall.rul" data=\epoc32\data\Z\private\10282BC4\rules\keyinfmtx.rul "private\10282BC4\rules\keyinfmtx.rul" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aidevstaplg.dll , aidevstaplg.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aiprofileplugin.dll , aiprofileplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aisatplugin.dll , aisatplugin.dll ) data=\epoc32\data\Z\System\install\SatPlugin_stub.sis "System\Install\SatPlugin_stub.sis" file=\epoc32\release\ARMV5\urel\aiwdialdata.dll "sys\bin\aiwdialdata.dll" @@ -3557,14 +3132,8 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, alfcontainerwidget.dll , alfcontainerwidget.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, alfscrollbarwidget.dll , alfscrollbarwidget.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, alfviewwidget.dll , alfviewwidget.dll ) -file=\epoc32\release\ARMV5\urel\ALWAYSONLINEMANAGERSERVER.dll "sys\bin\ALWAYSONLINEMANAGERSERVER.dll" -file=\epoc32\release\ARMV5\urel\ALWAYSONLINEMANAGERCLIENT.dll "sys\bin\ALWAYSONLINEMANAGERCLIENT.dll" -file=\epoc32\release\ARMV5\urel\ALWAYSONLINESTARTER.exe "sys\bin\ALWAYSONLINESTARTER.exe" data=\epoc32\data\Z\system\install\aomanager_stub.sis "system\install\aomanager_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ALWAYSONLINEEMAILPLUGIN.DLL , ALWAYSONLINEEMAILPLUGIN.DLL ) data=\epoc32\data\Z\system\install\aoemailplugin_stub.sis "system\install\aoemailplugin_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, APControlListPlugin.DLL , APControlListPlugin.DLL ) -data=\epoc32\data\Z\resource\apps\APControlListplugin.mif "resource\apps\APControlListplugin.mif" file=\epoc32\release\ARMV5\urel\ApEngine.dll "sys\bin\ApEngine.dll" file=\epoc32\release\ARMV5\urel\SWInstCli.dll "sys\bin\SWInstCli.dll" file=\epoc32\release\ARMV5\urel\SWInstSvrUI.exe "sys\bin\SWInstSvrUI.exe" @@ -3605,7 +3174,7 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, audiofetcher.dll , audiofetcher.dll ) data=\epoc32\data\Z\resource\apps\audiofetcher.mif "resource\apps\audiofetcher.mif" REM AVKON -file=\epoc32\release\ARMV5\urel\avkon.dll "sys\bin\avkon.dll" +file=\epoc32\release\ARMV5\urel\stem_avkon.dll "sys\bin\avkon.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, akninit.dll , akninit.dll ) file=\epoc32\release\ARMV5\urel\aknnotify.dll "sys\bin\aknnotify.dll" file=\epoc32\release\ARMV5\urel\aknnotifyplugin.dll "sys\bin\aknnotifyplugin.dll" @@ -3657,11 +3226,9 @@ data=\epoc32\data\Z\resource\apps\BTMouseBitMaps.mbm "resource\apps\BTMouseBitMaps.mbm" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, btmonobearer.dll , btmonobearer.dll ) file=\epoc32\release\ARMV5\urel\atcodec.dll "sys\bin\atcodec.dll" -file=\epoc32\release\ARMV5\urel\BTMonoCmdHandler.dll "sys\bin\BTMonoCmdHandler.dll" REM Bluetooth notifiers library __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, btnotifwrapper.dll , btnotifwrapper.dll ) REM Bluetooth SAP ECom Plugin -file=\epoc32\release\ARMV5\urel\CallAudioControl.dll "sys\bin\CallAudioControl.dll" data=\epoc32\data\Z\System\install\CallAudioControl_Stub.sis "System\Install\CallAudioControl_Stub.sis" data=\epoc32\data\Z\private\10207BD2\backup_registration.xml "private\10207BD2\backup_registration.xml" file=\epoc32\release\ARMV5\urel\callprovider.dll "sys\bin\callprovider.dll" @@ -3672,13 +3239,8 @@ REM CallUI Engine REM Enabler for exlipsing ROM binaries data=\epoc32\data\Z\System\install\callui_stub.sis "system\install\callui_stub.sis" -file=\epoc32\release\ARMV5\urel\CAEENGINE.DLL "sys\bin\CAEENGINE.DLL" file=\epoc32\release\ARMV5\urel\ASYNCHFSQ.DLL "sys\bin\ASYNCHFSQ.DLL" file=\epoc32\release\ARMV5\urel\CAESTILLCONVERTER.DLL "sys\bin\CAESTILLCONVERTER.DLL" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CAMCCONTROLLER.DLL , CAMCCONTROLLER.DLL ) -file=\epoc32\release\ARMV5\urel\CAMC3GPSINK.DLL "sys\bin\CAMC3GPSINK.DLL" -file=\epoc32\release\ARMV5\urel\CAMCMEDIARECORDER.DLL "sys\bin\CAMCMEDIARECORDER.DLL" -file=\epoc32\release\ARMV5\urel\CBSSERVER.EXE "sys\bin\CBSSERVER.EXE" file=\epoc32\release\ARMV5\urel\CBSCLIENT.DLL "sys\bin\CBSCLIENT.DLL" file=\epoc32\release\ARMV5\urel\CBSMCNCLIENT.DLL "sys\bin\CBSMCNCLIENT.DLL" data=\epoc32\data\Z\private\1000A859\backup_registration.xml "private\1000A859\backup_registration.xml" @@ -3711,8 +3273,6 @@ data=\epoc32\data\Z\resource\apps\cmmanager.mif "resource\apps\cmmanager.mif" file=\epoc32\release\ARMV5\urel\cmmanagerdatabase.dll "sys\bin\cmmanagerdatabase.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, cmpluginembdestination.dll , cmpluginembdestination.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, cmpluginpacketdata.dll , cmpluginpacketdata.dll ) -data=\epoc32\data\Z\resource\apps\cmpluginpacketdata.mif "resource\apps\cmpluginpacketdata.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, cmpluginvpn.dll , cmpluginvpn.dll ) data=\epoc32\data\Z\resource\apps\cmpluginvpn.mif "resource\apps\cmpluginvpn.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, cmpluginwlan.dll , cmpluginwlan.dll ) @@ -3720,21 +3280,13 @@ file=\epoc32\release\ARMV5\urel\CMS.dll "sys\bin\CMS.dll" file=\epoc32\release\ARMV5\urel\cntparserserverexe.exe "sys\bin\cntparserserverexe.exe" file=\epoc32\release\ARMV5\urel\cntparserserver.dll "sys\bin\cntparserserver.dll" -file=\epoc32\release\ARMV5\urel\CodEng.dll "sys\bin\CodEng.dll" -file=\epoc32\release\ARMV5\urel\CodUi.dll "sys\bin\CodUi.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CodRecog.dll , CodRecog.dll ) -file=\epoc32\release\ARMV5\urel\CodViewer.exe "sys\bin\CodViewer.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\CodViewer_reg.rsc "Private\10003a3f\import\apps\CodViewer_reg.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DdRecog.dll , DdRecog.dll ) -file=\epoc32\release\ARMV5\urel\CodDownload.dll "sys\bin\CodDownload.dll" -file=\epoc32\release\ARMV5\urel\RoapApp.exe "sys\bin\RoapApp.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\RoapApp_reg.rsc "Private\10003a3f\import\apps\RoapApp_reg.rsc" file=\epoc32\release\ARMV5\urel\commonadapter.dll "sys\bin\commonadapter.dll" file=\epoc32\release\ARMV5\urel\commondialogs.dll "sys\bin\commondialogs.dll" data=\epoc32\data\Z\resource\apps\commondialogs.mif "resource\apps\commondialogs.mif" file=\epoc32\release\ARMV5\urel\commonui.dll "sys\bin\commonui.dll" file=\epoc32\release\ARMV5\urel\commonuinpdapiloader.dll "sys\bin\commonuinpdapiloader.dll" -file=\epoc32\release\ARMV5\urel\commonuimpengineapiloader.dll "sys\bin\commonuimpengineapiloader.dll" REM binaries file=\epoc32\release\ARMV5\urel\commsdatstartup.exe "Sys\Bin\commsdatstartup.exe" file=\epoc32\release\ARMV5\urel\commsdatcreator.dll "sys\bin\commsdatcreator.dll" @@ -3742,7 +3294,6 @@ REM Varintadata for commsdat creation REM data=\epoc32\data\Z\private\10281BC3\VariantData.xml private\10281BC3\VariantData.xml __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, connectiondialogswrapper.DLL , connectiondialogswrapper.DLL ) -file=\epoc32\release\ARMV5\urel\ConnectionManager.dll "sys\bin\ConnectionManager.dll" auto-bitmap=\epoc32\data\Z\resource\apps\ConnMan.mbm resource\apps\ConnMan.mbm data=\epoc32\data\Z\resource\apps\ConnMan.mif "resource\apps\ConnMan.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, connectionmonitorplugin.dll , connectionmonitorplugin.dll ) @@ -3750,9 +3301,6 @@ file=\epoc32\release\ARMV5\urel\ConnectionUiUtilities.dll "sys\bin\ConnectionUiUtilities.dll" file=\epoc32\release\ARMV5\urel\ConnUiUtilsNotif.DLL "sys\bin\ConnUiUtilsNotif.DLL" data=\epoc32\data\Z\resource\apps\ConnectionUiUtilities.mif "resource\apps\ConnectionUiUtilities.mif" -file=\epoc32\release\ARMV5\urel\CONNMON.DLL "sys\bin\CONNMON.DLL" -file=\epoc32\release\ARMV5\urel\CONNMONEXE.EXE "sys\bin\CONNMONEXE.EXE" -file=\epoc32\release\ARMV5\urel\CONNMONEXT.DLL "sys\bin\CONNMONEXT.DLL" file=\epoc32\release\ARMV5\urel\ContentListingFramework.dll "sys\bin\ContentListingFramework.dll" file=\epoc32\release\ARMV5\urel\MediaCollectionManager.dll "sys\bin\MediaCollectionManager.dll" file=\epoc32\release\ARMV5\urel\cpserver.exe "sys\bin\cpserver.exe" @@ -3779,41 +3327,20 @@ file=\epoc32\release\ARMV5\urel\CookieManager.dll "sys\bin\CookieManager.dll" file=\epoc32\release\ARMV5\urel\CookieServer.exe "sys\bin\CookieServer.exe" data=\epoc32\data\z\private\101F8530\CookieGroup.xml "private\101F8530\CookieGroup.xml" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, csplugin.dll , csplugin.dll ) data=\epoc32\data\Z\System\install\csplugin_stub.sis "System\Install\csplugin_stub.sis" file=\epoc32\release\ARMV5\urel\CTSecDlgs.dll "sys\bin\CTSecDlgs.dll" file=\epoc32\release\ARMV5\urel\CTSecDialogImpl.dll "sys\bin\CTSecDialogImpl.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CTSECDLGNOTIFIER.dll , CTSECDLGNOTIFIER.dll ) file=\epoc32\release\ARMV5\urel\cXmlParser.dll "sys\bin\cXmlParser.dll" -file=\epoc32\release\ARMV5\urel\Dataconnectionlogger.exe "sys\bin\Dataconnectionlogger.exe" data=\epoc32\data\Z\private\101F6CFE\backup_registration.xml "private\101F6CFE\backup_registration.xml" file=\epoc32\release\ARMV5\urel\DBRECOVERY.EXE "sys\bin\DBRECOVERY.EXE" file=\epoc32\release\ARMV5\urel\dcmoclient.dll "sys\bin\dcmoclient.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DeflateFilter.dll , DeflateFilter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagaudioplugin.dll , devdiagaudioplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagbatterychargercabletestplugin.dll , devdiagbatterychargercabletestplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagbrowserplugin.dll , devdiagbrowserplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagconnectivitysuiteplugin.dll , devdiagconnectivitysuiteplugin.dll ) data=\epoc32\data\Z\resource\devdiagconnectivitysuitepluginrsc.rsc "resource\devdiagconnectivitysuitepluginrsc.rsc" -data=\epoc32\data\Z\resource\apps\devdiagconnectivitysuiteplugin.mif "resource\apps\devdiagconnectivitysuiteplugin.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagcoveragesuiteplugin.dll , devdiagcoveragesuiteplugin.dll ) data=\epoc32\data\Z\resource\devdiagcoveragesuitepluginrsc.rsc "resource\devdiagcoveragesuitepluginrsc.rsc" -data=\epoc32\data\Z\resource\apps\devdiagcoveragesuiteplugin.mif "resource\apps\devdiagcoveragesuiteplugin.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagdatanetworktestplugin.dll , devdiagdatanetworktestplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagexternalmediacardplugin.dll , devdiagexternalmediacardplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiaghardwaresuiteplugin.dll , devdiaghardwaresuiteplugin.dll ) data=\epoc32\data\Z\resource\devdiaghardwaresuitepluginrsc.rsc "resource\devdiaghardwaresuitepluginrsc.rsc" -data=\epoc32\data\Z\resource\apps\devdiaghardwaresuiteplugin.mif "resource\apps\devdiaghardwaresuiteplugin.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagheadsetcabletestplugin.dll , devdiagheadsetcabletestplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagnetcoverageplugin.dll , devdiagnetcoverageplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagservicessuiteplugin.dll , devdiagservicessuiteplugin.dll ) data=\epoc32\data\Z\resource\devdiagservicessuitepluginrsc.rsc "resource\devdiagservicessuitepluginrsc.rsc" -data=\epoc32\data\Z\resource\apps\devdiagservicessuiteplugin.mif "resource\apps\devdiagservicessuiteplugin.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagspeakerplugin.dll , devdiagspeakerplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagtoplevelsuiteplugin.dll , devdiagtoplevelsuiteplugin.dll ) data=\epoc32\data\Z\resource\devdiagtoplevelsuitepluginrsc.rsc "resource\devdiagtoplevelsuitepluginrsc.rsc" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DevDiagUSBCableTestPlugin.dll , DevDiagUSBCableTestPlugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiagvibrateplugin.dll , devdiagvibrateplugin.dll ) file=\epoc32\release\ARMV5\urel\devenccommonutils.dll "sys\bin\devenccommonutils.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DevEncRfsPlugin.dll , DevEncRfsPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Pk5Recognizer.dll , Pk5Recognizer.dll ) @@ -3827,14 +3354,10 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DevCertStore.DLL , DevCertStore.DLL ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DevKeyStore.DLL , DevKeyStore.DLL ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DevSrvCertStore.DLL , DevSrvCertStore.DLL ) -file=\epoc32\release\ARMV5\urel\diagframework.dll "sys\bin\diagframework.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, devdiaginternalmemoryplugin.dll , devdiaginternalmemoryplugin.dll ) -file=\epoc32\release\ARMV5\urel\diagpluginbase.dll "sys\bin\diagpluginbase.dll" file=\epoc32\release\ARMV5\urel\diagresultsdatabase.dll "sys\bin\diagresultsdatabase.dll" file=\epoc32\release\ARMV5\urel\diagresultsdatabaseserver.exe "sys\bin\diagresultsdatabaseserver.exe" file=\epoc32\release\ARMV5\urel\directorylocalizer.dll "sys\bin\directorylocalizer.dll" file=\epoc32\release\ARMV5\urel\DisconnectDlgClient.DLL "sys\bin\DisconnectDlgClient.dll" -file=\epoc32\release\ARMV5\urel\DisconnectDlg.dll "sys\bin\DisconnectDlg.dll" auto-bitmap=\epoc32\data\Z\resource\apps\DisconnectDlgUi.mbm resource\apps\DisconnectDlgUi.mbm data=\epoc32\data\Z\resource\apps\DisconnectDlgUi.mif "resource\apps\DisconnectDlgUi.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, displaysourceplugin.dll , displaysourceplugin.dll ) @@ -3843,42 +3366,29 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmsipadapter.dll , nsmldmsipadapter.dll ) file=\epoc32\release\ARMV5\urel\DMUtilServer.exe "sys\bin\DMUtilServer.exe" file=\epoc32\release\ARMV5\urel\DMUtil.dll "sys\bin\DMUtil.dll" -file=\epoc32\release\ARMV5\urel\HttpDMServEng.dll "sys\bin\HttpDMServEng.dll" -file=\epoc32\release\ARMV5\urel\DownloadMgr.dll "sys\bin\DownloadMgr.dll" -file=\epoc32\release\ARMV5\urel\DownloadMgrServer.exe "sys\bin\DownloadMgrServer.exe" -file=\epoc32\release\ARMV5\urel\DownloadMgrUiLib.dll "sys\bin\DownloadMgrUiLib.dll" -auto-bitmap=\epoc32\data\Z\resource\apps\DownloadMgrUiLib.mbm resource\apps\DownloadMgrUiLib.mbm -data=\epoc32\data\Z\resource\apps\DownloadMgrUiLib.mif "resource\apps\DownloadMgrUiLib.mif" file=\epoc32\release\ARMV5\urel\DRMCOMMON.DLL "sys\bin\DRMCOMMON.DLL" data=\epoc32\data\Z\resource\DRMCOMMON.RSC "resource\DRMCOMMON.RSC" file=\epoc32\release\ARMV5\urel\DcfRep.dll "sys\bin\DcfRep.dll" file=\epoc32\release\ARMV5\urel\DcfRepSrv.EXE "sys\bin\DcfRepSrv.EXE" file=\epoc32\release\ARMV5\urel\DRMHELPERSERVER.EXE "sys\bin\DRMHELPERSERVER.EXE" file=\epoc32\release\ARMV5\urel\DrmKeyStorage.dll "sys\bin\DrmKeyStorage.dll" -file=\epoc32\release\ARMV5\urel\DrmStdKeyStorage.dll "sys\bin\DrmStdKeyStorage.dll" +file=\epoc32\release\ARMV5\urel\stem_DrmStdKeyStorage.dll "sys\bin\DrmStdKeyStorage.dll" file=\epoc32\release\ARMV5\urel\DrmCrypto.DLL "sys\bin\DrmCrypto.DLL" file=\epoc32\release\ARMV5\urel\DrmDcf.DLL "sys\bin\DrmDcf.DLL" file=\epoc32\release\ARMV5\urel\DrmRights.DLL "sys\bin\DrmRights.DLL" file=\epoc32\release\ARMV5\urel\DrmServerInterfaces.DLL "sys\bin\DrmServerInterfaces.DLL" file=\epoc32\release\ARMV5\urel\DrmParsers.DLL "sys\bin\DrmParsers.DLL" -file=\epoc32\release\ARMV5\urel\RightsServer.EXE "sys\bin\RightsServer.EXE" +file=\epoc32\release\ARMV5\urel\stem_RightsServer.EXE "sys\bin\RightsServer.EXE" file=\epoc32\release\ARMV5\urel\DrmServiceAPI.dll "sys\bin\DrmServiceAPI.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, RECDRM.DLL , RECDRM.DLL ) data=\epoc32\data\Z\private\102073ea\excludes\101F51F2.exc "private\102073ea\excludes\101F51F2.exc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, OmaDrmAgent.dll , OmaDrmAgent.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DrmRel1_0StringDict00.dll , DrmRel1_0StringDict00.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DrmRel2_1StringDict00.dll , DrmRel2_1StringDict00.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ROHANDLER.DLL , ROHANDLER.DLL ) -file=\epoc32\release\ARMV5\urel\RoapHandler.DLL "sys\bin\RoapHandler.DLL" +file=\epoc32\release\ARMV5\urel\stem_RoapHandler.DLL "sys\bin\RoapHandler.DLL" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, HTTPFilterDRM.dll , HTTPFilterDRM.dll ) data=\epoc32\data\Z\Private\101F51F2\backup_registration.xml "PRIVATE\101F51F2\backup_registration.xml" data=\epoc32\data\Z\System\Install\OmaDrm_Stub.SIS "system\install\OmaDrm_Stub.SIS" -file=\epoc32\release\ARMV5\urel\DRMENCRYPTOR.exe "sys\bin\DRMENCRYPTOR.exe" -auto-bitmap=\epoc32\data\Z\resource\apps\DRMEncryptor.mbm resource\apps\DRMEncryptor.mbm -data=\epoc32\data\Z\resource\apps\DRMEncryptor.mif "resource\apps\DRMEncryptor.mif" -data=\epoc32\data\Z\resource\apps\DRMENCRYPTOR_AIF.MIF "resource\apps\DRMENCRYPTOR_aif.mif" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\DRMENCRYPTOR_reg.rsc "Private\10003a3f\apps\DRMENCRYPTOR_reg.rsc" -data=\epoc32\data\Z\resource\apps\drmencryptor.rsc "resource\apps\drmencryptor.rsc" file=\epoc32\release\ARMV5\urel\DRMHelper.dll "sys\bin\DRMHelper.dll" file=\epoc32\release\ARMV5\urel\DRMLicenseManager.DLL "sys\bin\DRMLicenseManager.DLL" file=\epoc32\release\ARMV5\urel\DRMLicenseChecker.DLL "sys\bin\DRMLicenseChecker.DLL" @@ -3895,7 +3405,6 @@ file=\epoc32\release\ARMV5\urel\DRMUtility.dll "sys\bin\DRMUtility.dll" file=\epoc32\release\ARMV5\urel\drmutilitycommon.dll "sys\bin\drmutilitycommon.dll" file=\epoc32\release\ARMV5\urel\drmutilitywmdrmwrapper.dll "sys\bin\drmutilitywmdrmwrapper.dll" -file=\epoc32\release\ARMV5\urel\DrmUtilityDmgrWrapper.dll "sys\bin\DrmUtilityDmgrWrapper.dll" file=\epoc32\release\ARMV5\urel\DrmRightsInfo.dll "sys\bin\DrmRightsInfo.dll" file=\epoc32\release\ARMV5\urel\DrmRightsInfoImpl.dll "sys\bin\DrmRightsInfoImpl.dll" file=\epoc32\release\ARMV5\urel\DRMUiHandling.dll "sys\bin\DRMUiHandling.dll" @@ -3904,19 +3413,12 @@ file=\epoc32\release\ARMV5\urel\DRMAutomatedUsageImpl.dll "sys\bin\DRMAutomatedUsageImpl.dll" file=\epoc32\release\ARMV5\urel\dunatext.dll "sys\bin\dunatext.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, dunclient.dll , dunclient.dll ) -file=\epoc32\release\ARMV5\urel\dunir.dll "sys\bin\dunir.dll" -file=\epoc32\release\ARMV5\urel\dunserver.exe "sys\bin\dunserver.exe" -file=\epoc32\release\ARMV5\urel\dunusb.dll "sys\bin\dunusb.dll" -file=\epoc32\release\ARMV5\urel\dunutils.dll "sys\bin\dunutils.dll" file=\epoc32\release\ARMV5\urel\eapol.dll "sys\bin\Eapol.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eapsim.dll , eapsim.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eapaka.dll , eapaka.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eapmschapv2.dll , eapmschapv2.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eaptlspeap.dll , eaptlspeap.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eapsecurid.dll , eapsecurid.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eapvpnif.dll , eapvpnif.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wlaneapolif.dll , wlaneapolif.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eapprotectedsetup.dll , eapprotectedsetup.dll ) data=\epoc32\data\Z\Private\100012A5\policy\102072e9.spd "private\100012A5\policy\102072e9.spd" data=\epoc32\data\Z\Private\101F8EC5\backup_registration_eapol.xml "private\101F8EC5\backup_registration_eapol.xml" data=\epoc32\data\Z\Private\101F8EC5\eap.conf "private\101F8EC5\eap.conf" @@ -3926,25 +3428,14 @@ file=\epoc32\release\ARMV5\urel\eikdlg.dll "sys\bin\eikdlg.dll" file=\epoc32\release\ARMV5\urel\eikcdlg.dll "sys\bin\eikcdlg.dll" data=\epoc32\data\Z\Resource\eikcdlg.rsc "resource\eikcdlg.rsc" -file=\epoc32\release\ARMV5\urel\eiksrvui.dll "sys\bin\eiksrvui.dll" +file=\epoc32\release\ARMV5\urel\stem_eiksrvui.dll "sys\bin\eiksrvui.dll" file=\epoc32\release\ARMV5\urel\eikalert.dll "sys\bin\eikalert.dll" file=\epoc32\release\ARMV5\urel\econseik.dll "sys\bin\econs.dll" uid3=0x100039e7 -file=\epoc32\release\ARMV5\urel\MMDataSourceFactory.dll "sys\bin\MMDataSourceFactory.dll" -file=\epoc32\release\ARMV5\urel\StreamControlCustomCommands.dll "sys\bin\StreamControlCustomCommands.dll" -file=\epoc32\release\ARMV5\urel\CacheSource.dll "sys\bin\CacheSource.dll" file=\epoc32\release\ARMV5\urel\DataSourceConfigIntfc.dll "sys\bin\DataSourceConfigIntfc.dll" -file=\epoc32\release\ARMV5\urel\EnhancedMediaClient.dll "sys\bin\EnhancedMediaClient.dll" file=\epoc32\release\ARMV5\urel\TransferRateMonitor.dll "sys\bin\TransferRateMonitor.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ProgDLSource.dll , ProgDLSource.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DataBufferSource.DLL , DataBufferSource.DLL ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, FileSource.DLL , FileSource.DLL ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DescriptorDataSource.DLL , DescriptorDataSource.DLL ) data=\epoc32\data\Z\System\install\WMA_AudCon_stub.sis "System\Install\WMA_AudCon_stub.sis" data=\epoc32\data\Z\System\install\EnhancedMediaClient_Stub.SIS "System\Install\EnhancedMediaClient_Stub.SIS" -file=\epoc32\release\ARMV5\urel\DOSENPOLICY.DLL "sys\bin\DOSENPOLICY.DLL" data=\epoc32\data\Z\System\install\DosEnPolicy_stub.sis "system\install\DosEnPolicy_stub.sis" -data=\epoc32\data\Z\resource\apps\Equalizer.mif "resource\apps\Equalizer.mif" -file=\epoc32\release\ARMV5\urel\Equalizer.dll "sys\bin\Equalizer.dll" file=\epoc32\release\ARMV5\urel\extendedconnpref.dll "sys\bin\extendedconnpref.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, extendedconnprefecom.dll , extendedconnprefecom.dll ) REM Favourites Engine @@ -3953,7 +3444,6 @@ data=\epoc32\data\Z\private\100012a5\policy\101FD685.SPD "private\100012a5\policy\101FD685.SPD" data=\epoc32\data\Z\private\10008d38\backup_registration.xml "private\10008d38\backup_registration.xml" data=\epoc32\data\Z\private\10008d38\BookmarkImportSample.txt "data\BookmarkImportSample.txt" -file=\epoc32\release\ARMV5\urel\FeedsServer.exe "sys\bin\FeedsServer.exe" file=\epoc32\release\ARMV5\urel\FeedsServerApi.dll "sys\bin\FeedsServerApi.dll" file=\epoc32\release\ARMV5\urel\FeedsServerClient.dll "sys\bin\FeedsServerClient.dll" data=\epoc32\data\z\private\1020728E\default_feeds.xml "private\1020728E\default_feeds.xml" @@ -3969,7 +3459,6 @@ file=\epoc32\release\ARMV5\urel\fotaengine.dll "sys\bin\fotaengine.dll" file=\epoc32\release\ARMV5\urel\FMSClient.dll "sys\bin\FMSClient.dll" file=\epoc32\release\ARMV5\urel\fotaschedulehandler.exe "sys\bin\fotaschedulehandler.exe" -file=\epoc32\release\ARMV5\urel\FMSServer.exe "sys\bin\FMSServer.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fotadiskstorage.dll , fotadiskstorage.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, RfsFotaPlugin.dll , RfsFotaPlugin.dll ) file=\epoc32\release\ARMV5\urel\fotacustcmds.dll "sys\bin\fotacustcmds.dll" @@ -3980,13 +3469,11 @@ FILE=\epoc32\release\ARMV5\urel\gba2.dll "sys\bin\gba2.dll" FILE=\epoc32\release\ARMV5\urel\gbaserver2.exe "sys\bin\gbaserver2.exe" data=\epoc32\data\Z\System\install\gba_stub.sis "System\Install\gba_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, gbauicc2.dll , gbauicc2.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, httpfiltergba2.dll , httpfiltergba2.dll ) file=\epoc32\release\ARMV5\urel\generichid.dll "sys\bin\generichid.dll" file=\epoc32\release\ARMV5\urel\gesturehelper.dll "sys\bin\gesturehelper.dll" file=\epoc32\release\ARMV5\urel\goommonitor.dll "sys\bin\goommonitor.dll" data=\epoc32\data\Z\System\..\private\10207218\goomconfig.xml "private\10207218\goomconfig.xml" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, gsaccessoryplugin.dll , gsaccessoryplugin.dll ) data=\epoc32\data\Z\resource\apps\gsaccplugin.mif "resource\apps\gsaccplugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSAdminPlugin.dll , GSAdminPlugin.dll ) data=\epoc32\data\Z\resource\apps\GSAdminPlugin.mif "resource\apps\GSAdminPlugin.mif" @@ -3999,7 +3486,6 @@ data=\epoc32\data\Z\private\100058EC\backup_registration.xml "private\100058EC\backup_registration.xml" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSAppsPlugin.dll , GSAppsPlugin.dll ) data=\epoc32\data\Z\resource\apps\GSAppsPlugin.mif "resource\apps\GSAppsPlugin.mif" -file=\epoc32\release\ARMV5\urel\BackgroundImage.dll "sys\bin\BackgroundImage.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, gsconnsettingsplugin.dll , gsconnsettingsplugin.dll ) data=\epoc32\data\Z\resource\apps\gsconnsettingsplugin.mif "resource\apps\gsconnsettingsplugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSConPlugin.dll , GSConPlugin.dll ) @@ -4008,8 +3494,6 @@ data=\epoc32\data\Z\resource\apps\GSDataCallPlugin.mif "resource\apps\GSDataCallPlugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSDeviceManagementPlugin.dll , GSDeviceManagementPlugin.dll ) data=\epoc32\data\Z\resource\apps\GSDeviceManagementPlugin.mif "resource\apps\GSDeviceManagementPlugin.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSDisplayPlugin.dll , GSDisplayPlugin.dll ) -data=\epoc32\data\Z\resource\apps\GSDisplayplugin.mif "resource\apps\GSDisplayplugin.mif" data=\epoc32\data\Z\Private\2000B187\2000B591.xml "private\2000B187\2000B591.xml" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSGenPlugin.dll , GSGenPlugin.dll ) data=\epoc32\data\Z\resource\apps\GSGenPlugin.mif "resource\apps\GSGenPlugin.mif" @@ -4023,9 +3507,6 @@ data=\epoc32\data\Z\Private\2000B187\2000B593.xml "private\2000B187\2000B593.xml" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSOpticalJoystickPlugin.dll , GSOpticalJoystickPlugin.dll ) data=\epoc32\data\Z\resource\apps\GSOpticalJoystickPlugin.mif "resource\apps\GSOpticalJoystickPlugin.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSPDataAccessPointPlugin.dll , GSPDataAccessPointPlugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSPDataConnectionPlugin.dll , GSPDataConnectionPlugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSPDataHSDPAPlugin.dll , GSPDataHSDPAPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSPDataPlugin.dll , GSPDataPlugin.dll ) data=\epoc32\data\Z\resource\apps\GSPDataPlugin.mif "resource\apps\GSPDataPlugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSPowerSavingQueryPlugin.dll , GSPowerSavingQueryPlugin.dll ) @@ -4035,7 +3516,6 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, gssensorplugin.dll , gssensorplugin.dll ) data=\epoc32\data\Z\resource\apps\gssenplugin.mif "resource\apps\gssenplugin.mif" file=\epoc32\release\ARMV5\urel\GSServerEngine.dll "sys\bin\GSServerEngine.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSSimSecPlugin.dll , GSSimSecPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSSIPSettingsPlugin.dll , GSSIPSettingsPlugin.dll ) data=\epoc32\data\Z\resource\apps\GSSIPSettingsPlugin.mif "resource\apps\GSSIPSettingsPlugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSSynchronisationPlugin.dll , GSSynchronisationPlugin.dll ) @@ -4045,7 +3525,6 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSXDMPlugin.dll , GSXDMPlugin.dll ) data=\epoc32\data\Z\resource\apps\GSXDMplugin.mif "resource\apps\GSXDMplugin.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, hapticsconnplugin.dll , hapticsconnplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, hidheadset.dll , hidheadset.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, hidremconbearer.dll , hidremconbearer.dll ) file=\epoc32\release\ARMV5\urel\hotspotclient.dll "sys\bin\hotspotclient.dll" file=\epoc32\release\ARMV5\urel\ictsclientinterface.dll "sys\bin\ictsclientinterface.dll" @@ -4076,15 +3555,12 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, HttpFilterAcceptHeader.dll , HttpFilterAcceptHeader.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, httpfilterauthentication.dll , httpfilterauthentication.dll ) file=\epoc32\release\ARMV5\urel\httpfiltercommon.dll "sys\bin\httpfiltercommon.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, httpfilterconnhandler.dll , httpfilterconnhandler.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, httpfilterIop.dll , httpfilterIop.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, httpfilterproxy.dll , httpfilterproxy.dll ) file=\epoc32\release\ARMV5\urel\iaupdatetools.dll "sys\bin\iaupdatetools.dll" file=\epoc32\release\ARMV5\urel\iaupdateapi.dll "sys\bin\iaupdateapi.dll" -file=\epoc32\release\ARMV5\urel\iaupdateengine.dll "sys\bin\iaupdateengine.dll" file=\epoc32\release\ARMV5\urel\iaupdaterfiles.dll "sys\bin\iaupdaterfiles.dll" file=\epoc32\release\ARMV5\urel\iaupdatebg.exe "sys\bin\iaupdatebg.exe" -file=\epoc32\release\ARMV5\urel\iaupdatefwupdate.dll "sys\bin\iaupdatefwupdate.dll" data=\epoc32\data\Z\Private\2000F85A\iaupdateengineconfig_testing.xml "PRIVATE\2000F85A\iaupdateengineconfig.xml" data=\epoc32\data\Z\Private\2000F85A\backup_registration.xml "PRIVATE\2000F85A\backup_registration.xml" data=\epoc32\data\Z\System\install\iaupdate_stub.sis "system\install\iaupdate_stub.sis" @@ -4099,7 +3575,6 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SenIDWSFplugin.dll , SenIDWSFplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SenIdWsfSecMech.dll , SenIdWsfSecMech.dll ) file=\epoc32\release\ARMV5\urel\Ihl.dll "sys\bin\Ihl.dll" -file=\epoc32\release\ARMV5\urel\EngineWrapper.dll "sys\bin\ENgineWrapper.dll" file=\epoc32\release\ARMV5\urel\FilterBrightness.dll "sys\bin\FilterBrightness.dll" file=\epoc32\release\ARMV5\urel\FilterBubble.dll "sys\bin\FilterBubble.dll" file=\epoc32\release\ARMV5\urel\FilterBuffer.dll "sys\bin\FilterBuffer.dll" @@ -4120,7 +3595,6 @@ file=\epoc32\release\ARMV5\urel\FilterSharpness.dll "sys\bin\FilterSharpness.dll" file=\epoc32\release\ARMV5\urel\FilterText.dll "sys\bin\FilterText.dll" file=\epoc32\release\ARMV5\urel\SystemParameters.dll "sys\bin\SystemParameters.dll" -file=\epoc32\release\ARMV5\urel\ImageEditorUtils.dll "sys\bin\ImageEditorUtils.dll" file=\epoc32\release\ARMV5\urel\IMAGINGCONFIGMANAGER.DLL "sys\bin\IMAGINGCONFIGMANAGER.DLL" file=\epoc32\release\ARMV5\urel\immanager.dll "sys\bin\immanager.dll" file=\epoc32\release\ARMV5\urel\imdatamodel.dll "sys\bin\imdatamodel.dll" @@ -4141,8 +3615,6 @@ file=\epoc32\release\ARMV5\urel\KeyPublisherPlugin.dll "sys\bin\KeyPublisherPlugin.dll" REM LBS Query And Notification Api file=\epoc32\release\ARMV5\urel\eposprvqnif.dll "sys\bin\eposprvqnif.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, LBTContextSourcePlugIn.dll , LBTContextSourcePlugIn.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, lbtmgmtplugin.dll , lbtmgmtplugin.dll ) data=\epoc32\data\Z\System\install\lbtmgmtuistub.sis "system\install\lbtmgmtuistub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, lccustomplugin.dll , lccustomplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, lcstylustap.dll , lcstylustap.dll ) @@ -4172,30 +3644,21 @@ file=\epoc32\release\ARMV5\urel\mnservicelib.dll "sys\bin\mnservicelib.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mnaiwprovider.dll , mnaiwprovider.dll ) data=\epoc32\data\Z\System\install\locationmnfwstub.sis "system\install\locationmnfwstub.sis" -file=\epoc32\release\ARMV5\urel\epos_suplterminitiation.dll "sys\bin\epos_suplterminitiation.dll" file=\epoc32\release\ARMV5\urel\epos_suplnetinitiation.dll "sys\bin\epos_suplnetinitiation.dll" -file=\epoc32\release\ARMV5\urel\epossuplgateway.exe "sys\bin\epossuplgateway.exe" data=\epoc32\data\Z\private\102073CA\backup_registration.xml "private\102073CA\backup_registration.xml" file=\epoc32\release\ARMV5\urel\epossuplprotocolhandlerplugin.dll "sys\bin\epossuplprotocolhandlerplugin.dll" -file=\epoc32\release\ARMV5\urel\epos_suplsettings.dll "sys\bin\epos_suplsettings.dll" file=\epoc32\release\ARMV5\urel\epos_csuplutils.dll "sys\bin\epos_csuplutils.dll" data=\epoc32\data\Z\System\install\locationsuplfwstub.sis "system\install\locationsuplfwstub.sis" data=\epoc32\data\Z\System\install\locationsysuistub.sis "system\install\locationsysuistub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, locsysuiview.dll , locsysuiview.dll ) data=\epoc32\data\Z\resource\apps\locsysuiview.mif "resource\apps\locsysuiview.mif" file=\epoc32\release\ARMV5\urel\locsysuiengine.dll "sys\bin\locsysuiengine.dll" -file=\epoc32\release\ARMV5\urel\lbt.dll "sys\bin\lbt.dll" file=\epoc32\release\ARMV5\urel\lbtlogger.dll "sys\bin\lbtlogger.dll" file=\epoc32\release\ARMV5\urel\lbtserverlogicbase.dll "sys\bin\lbtserverlogicbase.dll" file=\epoc32\release\ARMV5\urel\lbtserver.exe "sys\bin\lbtserver.exe" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, lbtserverlogic.dll , lbtserverlogic.dll ) file=\epoc32\release\ARMV5\urel\lbtstrategypluginapi.dll "sys\bin\lbtstrategypluginapi.dll" -file=\epoc32\release\ARMV5\urel\lbtcontainer.dll "sys\bin\lbtcontainer.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, lbtstrategy.dll , lbtstrategy.dll ) file=\epoc32\release\ARMV5\urel\ltmvmtdetapi.dll "sys\bin\ltmvmtdetapi.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ltcellidmovdet.dll , ltcellidmovdet.dll ) data=\epoc32\data\Z\private\1028312B\backup_registration.xml "private\1028312B\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\lbtmanager.dll "sys\bin\lbtmanager.dll" data=\epoc32\data\Z\System\install\lbtstub.sis "system\install\lbtstub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, locbtnotifier.dll , locbtnotifier.dll ) data=\epoc32\data\Z\private\10282BC4\Rules\locbtgpspsypscontextstate.rul "private\10282BC4\Rules\locbtgpspsypscontextstate.rul" @@ -4213,31 +3676,18 @@ data=\epoc32\data\Z\resource\apps\locsettingsuiserver_AIF.MIF "resource\apps\locsettingsuiserver_aif.mif" data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\locsettingsuiserver_reg.rsc "Private\10003a3f\import\apps\locsettingsuiserver_reg.rsc" data=\epoc32\data\Z\private\10281861\backup_registration.xml "private\10281861\backup_registration.xml" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, locsuplsettings.dll , locsuplsettings.dll ) -data=\epoc32\data\Z\resource\apps\locsuplsettings.mif "resource\apps\locsuplsettings.mif" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, locnotifierwrapper.dll , locnotifierwrapper.dll ) -file=\epoc32\release\ARMV5\urel\locverifierdlg.dll "sys\bin\locverifierdlg.dll" file=\epoc32\release\ARMV5\urel\locutils.dll "sys\bin\locutils.dll" data=\epoc32\data\Z\RESOURCE\locutils.rsc "resource\locutils.rsc" file=\epoc32\release\ARMV5\urel\mcsmenuutils.dll "sys\bin\mcsmenuutils.dll" file=\epoc32\release\ARMV5\urel\mcsmenueng.dll "sys\bin\mcsmenueng.dll" -file=\epoc32\release\ARMV5\urel\mcsmenu.dll "sys\bin\mcsmenu.dll" -file=\epoc32\release\ARMV5\urel\mcsmenuserver.exe "sys\bin\mcsmenuserver.exe" -file=\epoc32\release\ARMV5\urel\mcsextendedmenu.dll "sys\bin\mcsextendedmenu.dll" file=\epoc32\release\ARMV5\urel\mcssathandler.dll "sys\bin\mcssathandler.dll" file=\epoc32\release\ARMV5\urel\menuinterface.dll "sys\bin\menuinterface.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mcsmenuhandler.dll , mcsmenuhandler.dll ) data=\epoc32\data\Z\Private\200113dd\backup_registration.xml "PRIVATE\200113dd\backup_registration.xml" data=\epoc32\data\Z\resource\apps\aimcsplugin.mif "resource\apps\aimcsplugin.mif" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mcsplugin.dll , mcsplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mcspluginhandler.dll , mcspluginhandler.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mcspluginsettings.dll , mcspluginsettings.dll ) -file=\epoc32\release\ARMV5\urel\mcsservice.dll "sys\bin\mcsservice.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mcsprovider.dll , mcsprovider.dll ) rem - MdE binaries file=\epoc32\release\ARMV5\urel\mdeclient.dll "sys\bin\mdeclient.dll" file=\epoc32\release\ARMV5\urel\mdccommon.dll "sys\bin\mdccommon.dll" -file=\epoc32\release\ARMV5\urel\!mdsserver.exe "sys\bin\!mdsserver.exe" rem - MdE data files data=\epoc32\data\z\Private\200009F3\schema.mde "PRIVATE\200009F3\schema.mde" data=\epoc32\data\z\Private\200009F3\defaultimportfile.mde "PRIVATE\200009F3\defaultimportfile.mde" @@ -4251,9 +3701,7 @@ file=\epoc32\release\ARMV5\urel\harvestercommon.dll "sys\bin\harvestercommon.dll" file=\epoc32\release\ARMV5\urel\harvesterdata.dll "sys\bin\harvesterdata.dll" file=\epoc32\release\ARMV5\urel\mdsfileserverplugin.pxt "sys\bin\mdsfileserverplugin.pxt" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, HarvesterImagePlugin.dll , HarvesterImagePlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, HarvesterVideoPlugin.dll , HarvesterVideoPlugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, HarvesterMessagePlugin.dll , HarvesterMessagePlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, harvesteromadrmplugin.dll , harvesteromadrmplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, harvesterwmvplugin.dll , harvesterwmvplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, harvesterrtpplugin.dll , harvesterrtpplugin.dll ) @@ -4268,18 +3716,15 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mdsoomplugin.dll , mdsoomplugin.dll ) file=\epoc32\release\ARMV5\urel\ContextPluginInterface.dll "sys\bin\ContextPluginInterface.dll" file=\epoc32\release\ARMV5\urel\ContextEngine.dll "sys\bin\ContextEngine.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, locationcontextplugin.dll , locationcontextplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, calendarcontextplugin.dll , calendarcontextplugin.dll ) file=\epoc32\release\ARMV5\urel\ComposerPluginInterface.dll "sys\bin\ComposerPluginInterface.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ComposerImagePlugin.dll , ComposerImagePlugin.dll ) REM locationmanager file=\epoc32\release\ARMV5\urel\locationmanager.dll "sys\bin\locationmanager.dll" REM locationmanagerserver -file=\epoc32\release\ARMV5\urel\locationmanagerserver.exe "sys\bin\locationmanagerserver.exe" REM watchdog file=\epoc32\release\ARMV5\urel\mdswatchdog.exe "sys\bin\mdswatchdog.exe" REM locationtrail -file=\epoc32\release\ARMV5\urel\locationtrail.dll "sys\bin\locationtrail.dll" REM ReverseGeocode file=\epoc32\release\ARMV5\urel\ReverseGeocode.dll "sys\bin\ReverseGeocode.dll" REM Reverse geocoder plugin @@ -4287,7 +3732,6 @@ REM tagcreator file=\epoc32\release\ARMV5\urel\tagcreator.dll "sys\bin\tagcreator.dll" REM geotagger -file=\epoc32\release\ARMV5\urel\geotagger.dll "sys\bin\geotagger.dll" REM geoconverter file=\epoc32\release\ARMV5\urel\geoconverter.dll "sys\bin\geoconverter.dll" REM Location Manager data files @@ -4318,25 +3762,17 @@ REM MISSING data=\epoc32\data\Z\System\install\geotagger_stub.sis system\install\geotagger_stub.sis REM MISSING data=\epoc32\data\Z\System\install\geoconverter_stub.sis system\install\geoconverter_stub.sis file=\epoc32\release\ARMV5\urel\MGFetch.dll "sys\bin\MGFetch.dll" -file=\epoc32\release\ARMV5\urel\MediaFileList.dll "sys\bin\MediaFileList.dll" -data=\epoc32\data\Z\resource\apps\mediafilelist.mif "resource\apps\mediafilelist.mif" file=\epoc32\release\ARMV5\urel\MetaDataUtility.dll "sys\bin\MetaDataUtility.dll" file=\epoc32\release\ARMV5\urel\3GPExtParser.dll "sys\bin\3GPExtParser.dll" data=\epoc32\data\Z\Resource\TopCharacterSet.rsc "resource\TopCharacterSet.rsc" data=\epoc32\data\Z\System\install\metadata_stub.sis "System\Install\metadata_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmfaudiotonecontroller.dll , mmfaudiotonecontroller.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, recrt.dll , recrt.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, MMKeyBearer.dll , MMKeyBearer.dll ) data=\epoc32\data\Z\System\install\mmmtpdpstub.sis "System\install\mmmtpdpstub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mediamtpdataprovider.dll , mediamtpdataprovider.dll ) data=\epoc32\data\Z\resource\mtp\10207C4B.rsc "resource\mtp\10207C4B.rsc" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, abstractmediamtpdataprovider.dll , abstractmediamtpdataprovider.dll ) data=\epoc32\data\Z\resource\mtp\10207C53.rsc "resource\mtp\10207C53.rsc" -file=\epoc32\release\ARMV5\urel\mmmtpdprequestprocessor.dll "sys\bin\mmmtpdprequestprocessor.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, modematplugin.dll , modematplugin.dll ) file=\epoc32\release\ARMV5\urel\mpm.dll "sys\bin\mpm.dll" file=\epoc32\release\ARMV5\urel\mpmdefaultconnection.dll "sys\bin\mpmdefaultconnection.dll" -file=\epoc32\release\ARMV5\urel\mpmserver.exe "sys\bin\mpmserver.exe" REM Media Player Settings Engine data=\epoc32\data\Z\System\install\mpsetteng_stub.sis "system\install\mpsetteng_stub.sis" file=\epoc32\release\ARMV5\urel\MPSettEngine.dll "sys\bin\MPSettEngine.dll" @@ -4345,14 +3781,10 @@ file=\epoc32\release\ARMV5\urel\mpxcollectionutility.dll "sys\bin\mpxcollectionutility.dll" file=\epoc32\release\ARMV5\urel\mpxcollectionserver.exe "sys\bin\mpxcollectionserver.exe" file=\epoc32\release\ARMV5\urel\mpxcollectionengine.dll "sys\bin\mpxcollectionengine.dll" -file=\epoc32\release\ARMV5\urel\mpxcollectionhelper.dll "sys\bin\mpxcollectionhelper.dll" file=\epoc32\release\ARMV5\urel\mpxcommon.dll "sys\bin\mpxcommon.dll" data=\epoc32\data\Z\Private\101ffc02\backup_registration.xml "private\101ffc02\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\mpxharvesterserver.exe "sys\bin\mpxharvesterserver.exe" -file=\epoc32\release\ARMV5\urel\mpxfilehandler.dll "sys\bin\mpxfilehandler.dll" file=\epoc32\release\ARMV5\urel\mpxharvesterutility.dll "sys\bin\mpxharvesterutility.dll" file=\epoc32\release\ARMV5\urel\mpxcollectionmediator.dll "sys\bin\mpxcollectionmediator.dll" -file=\epoc32\release\ARMV5\urel\mpxmetadataextractor.dll "sys\bin\mpxmetadataextractor.dll" file=\epoc32\release\ARMV5\urel\mpxplaybackengine.dll "sys\bin\mpxplaybackengine.dll" file=\epoc32\release\ARMV5\urel\mpxplaybackserver.exe "sys\bin\mpxplaybackserver.exe" file=\epoc32\release\ARMV5\urel\mpxplaybackutility.dll "sys\bin\mpxplaybackutility.dll" @@ -4387,27 +3819,8 @@ file=\epoc32\release\armv5\urel\muldatamodel.dll "sys\bin\muldatamodel.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mulsliderwidget.dll , mulsliderwidget.dll ) data=\epoc32\data\Z\resource\apps\mulsliderwidget.mif "resource\apps\mulsliderwidget.mif" -file=\epoc32\release\ARMV5\urel\mmccinterface.dll "sys\bin\mmccinterface.dll" -file=\epoc32\release\ARMV5\urel\mmccjitterbuffer.dll "sys\bin\mmccjitterbuffer.dll" file=\epoc32\release\ARMV5\urel\mmccqoscontroller.dll "sys\bin\mmccqoscontroller.dll" -file=\epoc32\release\ARMV5\urel\mmccmultiplexer.dll "sys\bin\mmccmultiplexer.dll" -file=\epoc32\release\ARMV5\urel\mmccsubcontroller.dll "sys\bin\mmccsubcontroller.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmcccontroller.dll , mmcccontroller.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccrtpsourcesink.dll , mmccrtpsourcesink.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccamrplformat.dll , mmccamrplformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccg711plformat.dll , mmccg711plformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccredplformat.dll , mmccredplformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccg729plformat.dll , mmccg729plformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccilbcplformat.dll , mmccilbcplformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccdtmfplformat.dll , mmccdtmfplformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccanyplformat.dll , mmccanyplformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmcch263plformat.dll , mmcch263plformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccavcplformat.dll , mmccavcplformat.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccfilesourcesink.dll , mmccfilesourcesink.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccvideosourcesink.dll , mmccvideosourcesink.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mmccanysourcesink.dll , mmccanysourcesink.dll ) data=\epoc32\data\Z\System\install\multimediacommscontroller_stub.sis "System\Install\multimediacommscontroller_stub.sis" -file=\epoc32\release\ARMV5\urel\mceserver.exe "sys\bin\mceserver.exe" file=\epoc32\release\ARMV5\urel\mceclient.dll "sys\bin\mceclient.dll" file=\epoc32\release\ARMV5\urel\fcpluginengine.dll "sys\bin\fcpluginengine.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, fctbcp.dll , fctbcp.dll ) @@ -4429,17 +3842,12 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, NATTraversalController.dll , NATTraversalController.dll ) data=\epoc32\data\Z\System\Install\altair-engine-stub.sis "System\Install\altair-engine-stub.sis" file=\epoc32\release\ARMV5\urel\ncdengine_20019119.dll "sys\bin\ncdengine_20019119.dll" -file=\epoc32\release\ARMV5\urel\ncdserver_20019119.exe "sys\bin\ncdserver_20019119.exe" file=\epoc32\release\ARMV5\urel\ncdutils_20019119.dll "sys\bin\ncdutils_20019119.dll" -file=\epoc32\release\ARMV5\urel\ncddevicemgmt_20019119.dll "sys\bin\ncddevicemgmt_20019119.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ncdproxy_20019119.dll , ncdproxy_20019119.dll ) data=\epoc32\data\Z\Private\20019119\backup_registration.xml "PRIVATE\20019119\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\NETWORKHANDLING.DLL "sys\bin\NETWORKHANDLING.DLL" REM Enabler for exlipsing ROM binaries data=\epoc32\data\Z\System\install\networkhandling_stub.sis "system\install\networkhandling_stub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nlanpppsy.dll , nlanpppsy.dll ) data=\epoc32\data\Z\System\install\npppsystub.sis "system\install\npppsystub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nlasuplpsy.dll , nlasuplpsy.dll ) data=\epoc32\data\Z\System\install\suplpsystub.sis "system\install\suplpsystub.sis" REM SyncML Common modules REM \common\inc\policy @@ -4487,8 +3895,6 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmstreamingadapter.dll , nsmldmstreamingadapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmbrowseradapter.dll , nsmldmbrowseradapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldssettingsadapter.dll , nsmldssettingsadapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmemailadapter.dll , nsmldmemailadapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmmmsadapter.dll , nsmldmmmsadapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmfotaadapter.dll , nsmldmfotaadapter.dll ) data=\epoc32\release\ARMV5\urel\z\private\100012a5\policy\101F9A02.SPD "private\100012a5\policy\101F9A02.SPD" REM DM utils @@ -4509,7 +3915,6 @@ file=\epoc32\release\ARMV5\urel\nsmldmhostserver2.exe "sys\bin\nsmldmhostserver2.exe" file=\epoc32\release\ARMV5\urel\nsmldmhostserver3.exe "sys\bin\nsmldmhostserver3.exe" file=\epoc32\release\ARMV5\urel\nsmldmhostserver4.exe "sys\bin\nsmldmhostserver4.exe" -file=\epoc32\release\ARMV5\urel\dmnetworkmon.exe "sys\bin\dmnetworkmon.exe" REM Tree module file=\epoc32\release\ARMV5\urel\nsmldmmodule.dll "sys\bin\nsmldmmodule.dll" REM Sync Agent @@ -4520,7 +3925,6 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldmbmadapter.dll , nsmldmbmadapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wlanctrldcmoadapter.dll , wlanctrldcmoadapter.dll ) REM DM OMA provisioning -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wpdm.dll , wpdm.dll ) REM SyncML Data Synchronisation REM Sync settings OTA configuration disabled REM data=\epoc32\data\Z\resource\messaging\bif\nsmlsp_sms_no.rsc resource\messaging\bif\nsmlsp_sms_no.rsc @@ -4528,7 +3932,6 @@ data=\epoc32\release\ARMV5\urel\z\private\100012a5\policy\101F99FD.SPD "private\100012a5\policy\101F99FD.SPD" data=\epoc32\release\ARMV5\urel\z\private\100012a5\policy\101F99FE.SPD "private\100012a5\policy\101F99FE.SPD" REM SyncML Data Synchronisation plug-in adapters -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmlagendadataprovider.dll , nsmlagendadataprovider.dll ) data=\epoc32\data\Z\resource\NSmlAgendaDataStore_1_1_2.rsc "resource\NSmlAgendaDataStore_1_1_2.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmlcontactsdataprovider.dll , nsmlcontactsdataprovider.dll ) data=\epoc32\data\Z\resource\NSmlContactsDataStoreFormat_1_1_2.rsc "resource\NSmlContactsDataStoreFormat_1_1_2.rsc" @@ -4543,7 +3946,6 @@ REM \ds\dshostclient REM \ds\dshostserverbase REM \ds\dshostservers -file=\epoc32\release\ARMV5\urel\netmon.exe "sys\bin\netmon.exe" data=\epoc32\data\Z\private\101F99FD\backup_registration.xml "private\101F99FD\backup_registration.xml" data=\epoc32\data\Z\private\101F99FE\backup_registration.xml "private\101F99FE\backup_registration.xml" REM \ds\setting @@ -4552,7 +3954,6 @@ REM ds\wappushalert REM \ds\alerthandler REM \ds\provisioningadapter -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wpds.dll , wpds.dll ) REM \ds\dsutils file=\epoc32\release\ARMV5\urel\nsmlchangefinder.dll "sys\bin\nsmlchangefinder.dll" file=\epoc32\release\ARMV5\urel\nsmlCGIScriptParser.dll "sys\bin\nsmlCGIScriptParser.dll" @@ -4561,7 +3962,6 @@ file=\epoc32\release\ARMV5\urel\NsmlProfileUtil.dll "sys\bin\NsmlProfileUtil.dll" file=\epoc32\release\ARMV5\urel\nsmlfolderparser.dll "sys\bin\nsmlfolderparser.dll" REM defaultagendahandler plugin -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, nsmldefaultagendahandler.dll , nsmldefaultagendahandler.dll ) data=\epoc32\data\Z\resource\nsmldefaultagendahandler_1_2.RSC "resource\nsmldefaultagendahandler_1_2.rsc" REM \ds\syncagent REM NUMBERGROUPING @@ -4574,14 +3974,8 @@ data=\epoc32\data\Z\Private\101F7C87\backup_registration.xml "private\101F7C87\backup_registration.xml" file=\epoc32\release\ARMV5\urel\ode.dll "sys\bin\ode.dll" file=\epoc32\release\ARMV5\urel\epos_comasuplasnplugin.dll "sys\bin\epos_comasuplasnplugin.dll" -file=\epoc32\release\ARMV5\urel\epos_omasupllistener.exe "sys\bin\epos_omasupllistener.exe" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eposomasuplprotocolhandler.dll , eposomasuplprotocolhandler.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eposomasuplprotocolhandler1.dll , eposomasuplprotocolhandler1.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eposomasuplprotocolhandler2.dll , eposomasuplprotocolhandler2.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, epos_omasuplprovhandler.dll , epos_omasuplprovhandler.dll ) data=\epoc32\data\Z\resource\epos_omasuplprovhandlerres.rsc "resource\epos_omasuplprovhandlerres.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, epos_omasuplwaplistener.dll , epos_omasuplwaplistener.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, epos_omasuplsyncmldm.dll , epos_omasuplsyncmldm.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, epos_omasuplnotifierplugin.dll , epos_omasuplnotifierplugin.dll ) file=\epoc32\release\ARMV5\urel\epos_omasuplnotifier.dll "sys\bin\epos_omasuplnotifier.dll" data=\epoc32\data\Z\private\1027509E\backup_registration.xml "private\1027509E\backup_registration.xml" @@ -4609,20 +4003,13 @@ data=\epoc32\data\Z\resource\apps\peninputmodeswitcher.mif "resource\apps\peninputmodeswitcher.mif" file=\epoc32\release\ARMV5\urel\peninputcommonlayout.dll "sys\bin\peninputcommonlayout.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, peninputimeplugingeneric.dll , peninputimeplugingeneric.dll ) -file=\epoc32\release\ARMV5\urel\phoneclient.DLL "sys\bin\phoneclient.dll" data=\epoc32\data\Z\System\install\PhoneClient_stub.sis "system\install\PhoneClient_stub.sis" -file=\epoc32\release\ARMV5\urel\phonecmdhandler.dll "sys\bin\phonecmdhandler.dll" -file=\epoc32\release\ARMV5\urel\PhoneParser.dll "sys\bin\PhoneParser.dll" data=\epoc32\data\Z\System\install\phoneparser_stub.SIS "System\Install\phoneparser_stub.SIS" -file=\epoc32\release\ARMV5\urel\PhoneServer.exe "sys\bin\PhoneServer.exe" data=\epoc32\data\Z\System\install\PhoneServer_stub.sis "system\install\PhoneServer_stub.sis" REM redefined DATAZ_ as \epoc32\data\Z data=\epoc32\data\Z\Private\10000850\backup_registration.xml "PRIVATE\10000850\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\pictbridge.dll "sys\bin\pictbridge.dll" data=\epoc32\data\Z\resource\dps.RSC "resource\dps.RSC" data=\epoc32\data\Z\System\install\playbackhelper_stub.sis "system\install\playbackhelper_stub.sis" -file=\epoc32\release\ARMV5\urel\playbackhelper.dll "sys\bin\playbackhelper.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, playlistrecognizer.dll , playlistrecognizer.dll ) data=\epoc32\data\Z\System\install\playlistrecognizer_stub.sis "system\install\playlistrecognizer_stub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, pmadapter.dll , pmadapter.dll ) file=\epoc32\release\ARMV5\urel\PolicyEngine.dll "sys\bin\PolicyEngine.dll" @@ -4640,37 +4027,19 @@ data=\epoc32\data\Z\system\install\presencefwsimpleadptstub.sis "system\install\presencefwsimpleadptstub.sis" data=\epoc32\data\z\private\10202BE9\1028224B_s60.cre "private\10202BE9\1028224B.cre" data=\epoc32\data\z\private\10202BE9\10282266_s60.cre "private\10202BE9\10282266.cre" -file=\epoc32\release\ARMV5\urel\profileengine.dll "sys\bin\profileengine.dll" -file=\epoc32\release\ARMV5\urel\profileeng.dll "sys\bin\profileeng.dll" -file=\epoc32\release\ARMV5\urel\profilescheduleevent.exe "sys\bin\profilescheduleevent.exe" data=\epoc32\release\ARMV5\urel\z\system\sounds\digital\No_Sound.wav "resource\No_Sound.wav" data=\epoc32\data\Z\Private\100058F8\backup_registration.xml "private\100058F8\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\ProfileSettingsMonitor.exe "sys\bin\ProfileSettingsMonitor.exe" data=\epoc32\data\Z\System\install\ProfileSettingsMonitor_Stub.SIS "System\Install\ProfileSettingsMonitor_Stub.SIS" -file=\epoc32\release\ARMV5\urel\ProgressiveDownloadUtility.dll "sys\bin\ProgressiveDownloadUtility.dll" -file=\epoc32\release\ARMV5\urel\PDProperties.dll "sys\bin\PDProperties.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ProgressiveDownloadSource.dll , ProgressiveDownloadSource.dll ) data=\epoc32\data\Z\System\install\ProgressiveDownload_Stub.SIS "System\Install\ProgressiveDownload_Stub.SIS" -file=\epoc32\release\ARMV5\urel\ProvisioningEngine.dll "sys\bin\ProvisioningEngine.dll" file=\epoc32\release\ARMV5\urel\ProvisioningParser.dll "sys\bin\ProvisioningParser.dll" -file=\epoc32\release\ARMV5\urel\ProvisioningBC.dll "sys\bin\ProvisioningBC.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ProvisioningHandler.dll , ProvisioningHandler.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WPWAPAdapter.dll , WPWAPAdapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WPStreamingAdapter.dll , WPStreamingAdapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WPAPAdapter.dll , WPAPAdapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wpdestinationnwadapter.dll , wpdestinationnwadapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WPWVAdapter.dll , WPWVAdapter.dll ) -file=\epoc32\release\ARMV5\urel\ProvisioningSC.exe "sys\bin\ProvisioningSC.exe" data=\epoc32\data\Z\Private\100012a5\policy\101F84D6.spd "PRIVATE\100012a5\policy\101F84D6.spd" data=\epoc32\data\Z\Private\\101F8597\backup_registration.xml "PRIVATE\101F8597\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\PnP.dll "sys\bin\PnP.dll" file=\epoc32\release\ARMV5\urel\psln.exe "sys\bin\psln.exe" data=\epoc32\data\Z\resource\apps\pslnicon.mif "resource\apps\pslnicon.mif" data=\epoc32\data\Z\resource\apps\psln_AIF.MIF "resource\apps\psln_aif.mif" data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\psln_reg.rsc "Private\10003a3f\apps\psln_reg.rsc" file=\epoc32\release\ARMV5\urel\pslnengine.dll "sys\bin\pslnengine.dll" file=\epoc32\release\ARMV5\urel\pslnframework.dll "sys\bin\pslnframework.dll" -file=\epoc32\release\ARMV5\urel\pslnprofilesettingsloader.dll "sys\bin\pslnprofilesettingsloader.dll" file=\epoc32\release\ARMV5\urel\pslnwallpaperutilsloader.dll "sys\bin\pslnwallpaperutilsloader.dll" file=\epoc32\release\ARMV5\urel\pslnbrowserlaunchloader.dll "sys\bin\pslnbrowserlaunchloader.dll" data=\epoc32\data\Z\resource\apps\pslngsplugin.mif "resource\apps\pslngsplugin.mif" @@ -4686,29 +4055,16 @@ file=\epoc32\release\ARMV5\urel\ptiengine.dll "sys\bin\ptiengine.dll" data=\epoc32\data\Z\resource\ptiengine.rsc "resource\ptiengine.rsc" file=\epoc32\release\ARMV5\urel\QtCore.dll "sys\bin\QtCore.dll" UNPAGED -file=\epoc32\release\ARMV5\urel\QtGui.dll "sys\bin\QtGui.dll" -file=\epoc32\release\ARMV5\urel\QtOpenVG.dll "sys\bin\QtOpenVG.dll" -file=\epoc32\release\ARMV5\urel\QtSvg.dll "sys\bin\QtSvg.dll" file=\epoc32\release\ARMV5\urel\QtSql.dll "sys\bin\QtSql.dll" file=\epoc32\release\ARMV5\urel\QtXml.dll "sys\bin\QtXml.dll" file=\epoc32\release\ARMV5\urel\QtNetwork.dll "sys\bin\QtNetwork.dll" file=\epoc32\release\ARMV5\urel\QtScript.dll "sys\bin\QtScript.dll" file=\epoc32\release\ARMV5\urel\QtTest.dll "sys\bin\QtTest.dll" -file=\epoc32\release\ARMV5\urel\QtWebKit.dll "sys\bin\QtWebKit.dll" -file=\epoc32\release\ARMV5\urel\phonon.dll "sys\bin\phonon.dll" -file=\epoc32\release\ARMV5\urel\QtMultimedia.dll "sys\bin\QtMultimedia.dll" file=\epoc32\release\ARMV5\urel\QtXmlPatterns.dll "sys\bin\QtXmlPatterns.dll" -file=\epoc32\release\ARMV5\urel\qgif.dll "sys\bin\qgif.dll" -file=\epoc32\release\ARMV5\urel\qico.dll "sys\bin\qico.dll" -file=\epoc32\release\ARMV5\urel\qjpeg.dll "sys\bin\qjpeg.dll" -file=\epoc32\release\ARMV5\urel\qmng.dll "sys\bin\qmng.dll" -file=\epoc32\release\ARMV5\urel\qsvg.dll "sys\bin\qsvg.dll" -file=\epoc32\release\ARMV5\urel\qtiff.dll "sys\bin\qtiff.dll" file=\epoc32\release\ARMV5\urel\qcncodecs.dll "sys\bin\qcncodecs.dll" file=\epoc32\release\ARMV5\urel\qjpcodecs.dll "sys\bin\qjpcodecs.dll" file=\epoc32\release\ARMV5\urel\qkrcodecs.dll "sys\bin\qkrcodecs.dll" file=\epoc32\release\ARMV5\urel\qtwcodecs.dll "sys\bin\qtwcodecs.dll" -file=\epoc32\release\ARMV5\urel\qsvgicon.dll "sys\bin\qsvgicon.dll" REM MISSING file=\epoc32\release\ARMV5\urel\qaudio.dll sys\bin\qaudio.dll REM MISSING file=\epoc32\release\ARMV5\urel\qvggraphicssystem.dll sys\bin\qvggraphicssystem.dll file=\epoc32\release\ARMV5\urel\qts60plugin_5_0.dll "sys\bin\qts60plugin_5_0.dll" @@ -4728,18 +4084,9 @@ data=\epoc32\data\z\resource\qt\plugins\graphicssystems\qvggraphicssystem.qtplugin "resource\qt\plugins\graphicssystems\qvggraphicssystem.qtplugin" data=\epoc32\data\Z\System\install\qt_stub.sis "System\Install\qt_stub.sis" data=\epoc32\data\Z\System\install\qtwebkit_stub.sis "System\Install\qtwebkit_stub.sis" -file=\epoc32\release\ARMV5\urel\Radio_Utility.dll "sys\bin\Radio_Utility.dll" data=\epoc32\data\Z\System\install\radioutility_stub.sis "system\install\radioutility_stub.sis" -file=\epoc32\release\ARMV5\urel\RadioSession.dll "sys\bin\RadioSession.dll" -file=\epoc32\release\ARMV5\urel\RadioServer.exe "sys\bin\RadioServer.exe" file=\epoc32\release\ARMV5\urel\RECENTURLSTORE.DLL "sys\bin\RECENTURLSTORE.DLL" file=\epoc32\release\ARMV5\urel\RLockSettings.dll "sys\bin\RLockSettings.dll" -file=\epoc32\release\ARMV5\urel\RLock.exe "sys\bin\RLock.exe" -file=\epoc32\release\ARMV5\urel\RFS.DLL "sys\bin\RFS.DLL" -file=\epoc32\release\ARMV5\urel\RfsServer.exe "sys\bin\RfsServer.exe" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GSRFSPlugin.dll , GSRFSPlugin.dll ) -data=\epoc32\data\Z\resource\apps\GSRFSPlugin.mif "resource\apps\GSRFSPlugin.mif" -file=\epoc32\release\ARMV5\urel\rfscustcmd.dll "sys\bin\rfscustcmd.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, AIRFSPlugin.dll , AIRFSPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CertRFSPlugin.dll , CertRFSPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ClockRFSPlugin.dll , ClockRFSPlugin.dll ) @@ -4779,54 +4126,17 @@ file=\epoc32\release\ARMV5\urel\rtpservice.dll "sys\bin\rtpservice.dll" file=\epoc32\release\ARMV5\urel\rtpstppacket.dll "sys\bin\rtpstppacket.dll" data=\epoc32\data\Z\System\install\rtpstack_stub.sis "system\install\rtpstack_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, S60StreamingSource.dll , S60StreamingSource.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, s60mcpr.dll , s60mcpr.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, bsservice.dll , bsservice.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, cpclient.dll , cpclient.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sapidataplugin.dll , sapidataplugin.dll ) -file=\epoc32\release\ARMV5\urel\SatSystemState.dll "sys\bin\SatSystemState.dll" -file=\epoc32\release\ARMV5\urel\SatEventMonitors.dll "sys\bin\SatEventMonitors.dll" -file=\epoc32\release\ARMV5\urel\SATENGINE.DLL "sys\bin\SATENGINE.DLL" -file=\epoc32\release\ARMV5\urel\SATSERVER.EXE "sys\bin\SATSERVER.EXE" file=\epoc32\release\ARMV5\urel\SATCLIENT.DLL "sys\bin\SATCLIENT.DLL" -file=\epoc32\release\ARMV5\urel\SATINTERNALCLIENT.DLL "sys\bin\SATINTERNALCLIENT.DLL" data=\epoc32\data\Z\System\install\SatServer_stub.sis "System\Install\SatServer_stub.sis" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, DisplayTextCmd.dll , DisplayTextCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CallControlCmd.dll , CallControlCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GetInkeyCmd.dll , GetInkeyCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GetInputCmd.dll , GetInputCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, LanguageNotificationCmd.dll , LanguageNotificationCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, LaunchBrowserCmd.dll , LaunchBrowserCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, MoSmControlCmd.dll , MoSmControlCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PlayToneCmd.dll , PlayToneCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ProvideLocalInfoCmd.dll , ProvideLocalInfoCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, RefreshCmd.dll , RefreshCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, RefreshRequiredCmd.dll , RefreshRequiredCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SelectItemCmd.dll , SelectItemCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SendDtmfCmd.dll , SendDtmfCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SendSmCmd.dll , SendSmCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SendUssdCmd.dll , SendUssdCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SetUpCallCmd.dll , SetUpCallCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SetUpEventListCmd.dll , SetUpEventListCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SetUpIdleModeTextCmd.dll , SetUpIdleModeTextCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SetUpMenuCmd.dll , SetUpMenuCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SimSessionEndCmd.dll , SimSessionEndCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, CloseChannelCmd.dll , CloseChannelCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, OpenChannelCmd.dll , OpenChannelCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SendDataCmd.dll , SendDataCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ReceiveDataCmd.dll , ReceiveDataCmd.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, GetChannelStatusCmd.dll , GetChannelStatusCmd.dll ) -file=\epoc32\release\ARMV5\urel\SATUI.exe "sys\bin\SATUI.exe" -data=\epoc32\data\Z\resource\apps\Satui_AIF.MIF "resource\apps\Satui_aif.mif" -auto-bitmap=\epoc32\data\Z\resource\apps\Satui.mbm resource\apps\Satui.mbm -data=\epoc32\data\Z\resource\apps\Satui.mif "resource\apps\Satui.mif" file=\epoc32\release\ARMV5\urel\SATSHELLCNTRL.DLL "sys\bin\SATSHELLCNTRL.DLL" -data=\epoc32\data\Z\Private\10003a3f\apps\Satui_reg.rsc "private\10003a3f\import\apps\Satui_reg.rsc" data=\epoc32\data\Z\System\install\SatApp_stub.sis "System\Install\SatApp_stub.sis" file=\epoc32\release\ARMV5\urel\SchemeApp.exe "sys\bin\SchemeApp.exe" data=\epoc32\data\Z\resource\apps\SchemeApp_AIF.MIF "resource\apps\SchemeApp_aif.mif" data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\SchemeApp_reg.rsc "Private\10003a3f\import\apps\SchemeApp_reg.rsc" -file=\epoc32\release\ARMV5\urel\sconcsc.dll "sys\bin\sconcsc.dll" data=\epoc32\data\Z\Private\101F99F6\capability\101F9698.xml "PRIVATE\101F99F6\capability\101F9698.xml" data=\epoc32\data\Z\Private\101F99F6\capability\fwdcomp.xml "PRIVATE\101F99F6\capability\fwdcomp.xml" data=\epoc32\data\Z\Private\101F99F6\capability\101F99F6.xml "PRIVATE\101F99F6\capability\101F99F6.xml" @@ -4836,19 +4146,14 @@ data=\epoc32\data\Z\System\install\sconpcconnplugin_stub.sis "system\install\sconpcconnplugin_stub.sis" data=\epoc32\data\Z\System\install\sconftpplugin_stub.sis "system\install\sconftpplugin_stub.sis" file=\epoc32\release\ARMV5\urel\catalogspcconnectivityplugin.dll "sys\bin\catalogspcconnectivityplugin.dll" -file=\epoc32\release\ARMV5\urel\sconpcd.dll "sys\bin\sconpcd.dll" data=\epoc32\data\Z\Private\10202D56\sbeconfig.xml "PRIVATE\10202D56\sbeconfig.xml" file=\epoc32\release\ARMV5\urel\SCPClient.dll "sys\bin\SCPClient.dll" file=\epoc32\release\ARMV5\urel\SCPDatabase.dll "sys\bin\SCPDatabase.dll" data=\epoc32\data\Z\Private\100012a5\policy\2002677A.SPD "PRIVATE\100012a5\policy\2002677A.SPD" file=\epoc32\release\ARMV5\urel\SCPEventHandler.dll "sys\bin\SCPEventHandler.dll" -file=\epoc32\release\ARMV5\urel\SCPServer.exe "sys\bin\SCPServer.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SCPPatternPlugin.dll , SCPPatternPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SCPHistoryPlugin.dll , SCPHistoryPlugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SCPTimestampPlugin.dll , SCPTimestampPlugin.dll ) -file=\epoc32\release\ARMV5\urel\screensaver.exe "sys\bin\screensaver.exe" -data=\epoc32\data\Z\resource\apps\screensaver.RSC "resource\apps\screensaver.rsc" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\screensaver_reg.rsc "Private\10003a3f\apps\screensaver_reg.rsc" data=\epoc32\data\Z\Private\100056CF\backup_registration.xml "private\100056CF\backup_registration.xml" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, screensaveraiwplugin.dll , screensaveraiwplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ScreenSaverAnimPlugin.dll , ScreenSaverAnimPlugin.dll ) @@ -4862,11 +4167,8 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, searchoperationshook.dll , searchoperationshook.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, searchprocessorhook.dll , searchprocessorhook.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SecModUI.dll , SecModUI.dll ) -file=\epoc32\release\ARMV5\urel\SecUi.dll "sys\bin\SecUi.dll" -file=\epoc32\release\ARMV5\urel\SecurityNotifier.dll "sys\bin\SecurityNotifier.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Securitynotifierwrapper.dll , Securitynotifierwrapper.dll ) file=\epoc32\release\ARMV5\urel\SENDUI.DLL "sys\bin\Sendui.dll" -file=\epoc32\release\ARMV5\urel\SenduiDataUtils.dll "sys\bin\SenduiDataUtils.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SendUiWatcher.dll , SendUiWatcher.dll ) file=\epoc32\release\ARMV5\urel\SendUiServiceResolver.exe "sys\bin\SendUiServiceResolver.exe" data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\SendUiServiceResolver_reg.rsc "Private\10003a3f\import\apps\SendUiServiceResolver_reg.rsc" @@ -4890,16 +4192,8 @@ __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, locationprovider.dll , locationprovider.dll ) file=\epoc32\release\ARMV5\urel\landmarkservice.dll "sys\bin\landmarkservice.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, landmarkprovider.dll , landmarkprovider.dll ) -file=\epoc32\release\ARMV5\urel\messagingservice.dll "sys\bin\messagingservice.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, messagingprovider.dll , messagingprovider.dll ) -file=\epoc32\release\ARMV5\urel\mediamanagementservice.dll "sys\bin\mediamanagementservice.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, mediamanagementprovider.dll , mediamanagementprovider.dll ) file=\epoc32\release\ARMV5\urel\contactservice.dll "sys\bin\contactservice.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, contactprovider.dll , contactprovider.dll ) -file=\epoc32\release\ARMV5\urel\appmanagerservice.dll "sys\bin\appmanagerservice.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, appmanagerprovider.dll , appmanagerprovider.dll ) -file=\epoc32\release\ARMV5\urel\calendarservice.dll "sys\bin\calendarservice.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, calendarprovider.dll , calendarprovider.dll ) file=\epoc32\release\ARMV5\urel\loggingservice.dll "sys\bin\loggingservice.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, loggingprovider.dll , loggingprovider.dll ) file=\epoc32\release\ARMV5\urel\sensorservice.dll "sys\bin\sensorservice.dll" @@ -4911,7 +4205,6 @@ file=\epoc32\release\ARMV5\urel\servicehandler.dll "sys\bin\servicehandler.dll" data=\epoc32\data\Z\resource\AiwServiceHandler.rsc "resource\AiwServiceHandler.rsc" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, aiwresolver.dll , aiwresolver.dll ) -file=\epoc32\release\ARMV5\urel\serviceselector.dll "sys\bin\serviceselector.dll" data=\epoc32\data\Z\System\install\serviceselector_stub.sis "System\Install\serviceselector_stub.sis" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, presenceplugin.dll , presenceplugin.dll ) file=\epoc32\release\ARMV5\urel\simpleengine.dll "sys\bin\simpleengine.dll" @@ -4920,12 +4213,7 @@ file=\epoc32\release\ARMV5\urel\rlspresxdm.dll "sys\bin\rlspresxdm.dll" file=\epoc32\release\ARMV5\urel\presencesettingsapi.dll "sys\bin\presencesettingsapi.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PresenceDM.dll , PresenceDM.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, PresenceProvisioning.dll , PresenceProvisioning.dll ) data=\epoc32\data\Z\private\10281EEB\backup_registration.xml "private\10281EEB\backup_registration.xml" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, simpleimplugin.dll , simpleimplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wpsipadapter.dll , wpsipadapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipsystemstatemonitor.dll , sipsystemstatemonitor.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sipwlanmon.dll , sipwlanmon.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SlideshowPlugin.dll , SlideshowPlugin.dll ) file=\epoc32\release\ARMV5\urel\sortutil.dll "sys\bin\sortutil.dll" file=\epoc32\release\ARMV5\urel\SplashScreen.exe "sys\bin\SplashScreen.exe" @@ -4943,15 +4231,13 @@ file=\epoc32\release\ARMV5\urel\sanimengine.dll "sys\bin\sanimengine.dll" file=\epoc32\release\ARMV5\urel\sanimctrl.dll "sys\bin\sanimctrl.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sanimihlplugin.dll , sanimihlplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sanimmmfplugin.dll , sanimmmfplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, sanimsvgplugin.dll , sanimsvgplugin.dll ) file=\epoc32\release\ARMV5\urel\stmgesturefw.dll "sys\bin\stmgesturefw.dll" data=\epoc32\data\Z\System\install\CenRepStub.sis "System\Install\CenRepStub.sis" -file=\epoc32\release\ARMV5\urel\SVGEngine.dll "sys\bin\SVGEngine.dll" +file=\epoc32\release\ARMV5\urel\stem_SVGEngine.dll "sys\bin\SVGEngine.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, Svgrecog.dll , Svgrecog.dll ) file=\epoc32\release\ARMV5\urel\SVGEngineJI.dll "sys\bin\SVGEngineJI.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, npsvgtplugin.dll , npsvgtplugin.dll ) -file=\epoc32\release\ARMV5\urel\SyncMLNotifier.dll "sys\bin\SyncMLNotifier.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, SyncMLNotifierWrapper.dll , SyncMLNotifierWrapper.dll ) file=\epoc32\release\ARMV5\urel\SyncService.dll "sys\bin\SyncService.dll" file=\epoc32\release\ARMV5\urel\NspsWsPlugin.dll "sys\bin\NspsWsPlugin.dll" @@ -4982,7 +4268,6 @@ data=\epoc32\release\armv5\urel\Z\private\1020783F\format_e_.txt "private\1020783F\format_e_.txt" file=\epoc32\release\ARMV5\urel\thumbagdaemon.exe "sys\bin\thumbagdaemon.exe" file=\epoc32\release\ARMV5\urel\thumbnailmanager.dll "sys\bin\thumbnailmanager.dll" -file=\epoc32\release\ARMV5\urel\thumbnailserver.exe "sys\bin\thumbnailserver.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, thumbnailvideoprovider.dll , thumbnailvideoprovider.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, thumbnailimageprovider.dll , thumbnailimageprovider.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, thumbnailaudioprovider.dll , thumbnailaudioprovider.dll ) @@ -4996,7 +4281,6 @@ file=\epoc32\release\ARMV5\urel\tsfswutils.dll "sys\bin\tsfswutils.dll" file=\epoc32\release\ARMV5\urel\tsfswengine.dll "sys\bin\tsfswengine.dll" file=\epoc32\release\ARMV5\urel\tsfswserver.exe "sys\bin\tsfswserver.exe" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, uaproffilter.dll , uaproffilter.dll ) file=\epoc32\release\ARMV5\urel\avcontrolframework.dll "sys\bin\avcontrolframework.dll" file=\epoc32\release\ARMV5\urel\upnpcommand.dll "sys\bin\upnpcommand.dll" file=\epoc32\release\ARMV5\urel\avconnectionmanager.dll "sys\bin\avconnectionmanager.dll" @@ -5027,18 +4311,12 @@ data=\epoc32\data\Z\resource\apps\usbui.mif "resource\apps\usbui.mif" data=\epoc32\data\Z\resource\apps\usbclasschangeui_AIF.MIF "resource\apps\usbclasschangeui_aif.mif" data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\usbclasschangeui_reg.rsc "Private\10003a3f\apps\usbclasschangeui_reg.rsc" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, USBClassChangeUIPlugin.dll , USBClassChangeUIPlugin.dll ) -file=\epoc32\release\ARMV5\urel\usbdevcon.exe "sys\bin\usbdevcon.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, usblocodplugin.dll , usblocodplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, usbmscpersonality.dll , usbmscpersonality.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, usbobexclasscontroller.dll , usbobexclasscontroller.dll ) -file=\epoc32\release\ARMV5\urel\usbotgwatcher.dll "sys\bin\usbotgwatcher.dll" REM MISSING file=\epoc32\release\ARMV5\urel\errrd c:\resource\errrd -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, usbremotepersonality.dll , usbremotepersonality.dll ) REM USB UI notifiers ecom plug-in __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, usbuinotif.dll , usbuinotif.dll ) -file=\epoc32\release\ARMV5\urel\usbavkonnotif.dll "sys\bin\usbavkonnotif.dll" -file=\epoc32\release\ARMV5\urel\usbwatcher.exe "sys\bin\usbwatcher.exe" file=\epoc32\release\ARMV5\urel\usbwatcher.dll "sys\bin\usbwatcher.dll" file=\epoc32\release\ARMV5\urel\usbpersonality.dll "sys\bin\usbpersonality.dll" data=\epoc32\data\Z\private\101F9696\backup_registration.xml "private\101F9696\backup_registration.xml" @@ -5047,14 +4325,10 @@ file=\epoc32\release\ARMV5\urel\PseudoVG.dll "sys\bin\PseudoVG.dll" file=\epoc32\release\ARMV5\urel\SWVG.dll "sys\bin\SWVG.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, VibraActionPlugIn.dll , VibraActionPlugIn.dll ) -file=\epoc32\release\ARMV5\urel\vcxconnectionutility.dll "sys\bin\vcxconnectionutility.dll" file=\epoc32\release\ARMV5\urel\vcxconnutilpsworker.exe "sys\bin\vcxconnutilpsworker.exe" -file=\epoc32\release\ARMV5\urel\videoplaylistutility.dll "sys\bin\videoplaylistutility.dll" file=\epoc32\release\ARMV5\urel\CseSchedulerClient.dll "sys\bin\CseSchedulerClient.dll" file=\epoc32\release\ARMV5\urel\CseSchedulerServer.exe "sys\bin\CseSchedulerServer.exe" data=\epoc32\data\Z\System\install\vmbx_stub.sis "System\Install\vmbx_stub.sis" -file=\epoc32\release\ARMV5\urel\VoIPJitterBuffer.dll "sys\bin\VoIPJitterBuffer.dll" -file=\epoc32\release\ARMV5\urel\VoIPAudioServer.exe "sys\bin\VoIPAudioServer.exe" file=\epoc32\release\ARMV5\urel\VoIPAudioSession.dll "sys\bin\VoIPAudioSession.dll" file=\epoc32\release\ARMV5\urel\VoIPAudioIntfc.dll "sys\bin\VoIPAudioIntfc.dll" data=\epoc32\data\Z\System\install\VoIPAudioSrvc_Stub.sis "System\Install\VoIPAudioSrvc_Stub.sis" @@ -5063,7 +4337,6 @@ file=\epoc32\release\ARMV5\urel\vpnapi.dll "sys\bin\vpnapi.dll" FILE=\epoc32\release\ARMV5\urel\wapisecuritysettingsui.dll "sys\bin\wapisecuritysettingsui.dll" auto-bitmap=\epoc32\data\Z\resource\apps\webkit.mbm resource\apps\webkit.mbm -file=\epoc32\release\ARMV5\urel\BrowserEngine.dll "sys\bin\BrowserEngine.dll" file=\epoc32\release\ARMV5\urel\JavascriptCore.dll "sys\bin\JavascriptCore.dll" file=\epoc32\release\ARMV5\urel\WebKitUtils.dll "sys\bin\WebKitUtils.dll" file=\epoc32\release\ARMV5\urel\PageScaler.dll "sys\bin\PageScaler.dll" @@ -5078,15 +4351,12 @@ FILE=\epoc32\release\ARMV5\urel\WEPSecuritySettingsUI.dll "sys\bin\WEPSecuritySettingsUI.dll" file=\epoc32\release\ARMV5\urel\WidgetBackupRestore.exe "sys\bin\WidgetBackupRestore.exe" data=\epoc32\data\Z\Private\2000B4D8\backup_registration.xml "private\2000B4D8\backup_registration.xml" -file=\epoc32\release\ARMV5\urel\WidgetEngine.dll "sys\bin\WidgetEngine.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WidgetMemoryPlugin.dll , WidgetMemoryPlugin.dll ) file=\epoc32\release\ARMV5\urel\WidgetInstaller.dll "sys\bin\WidgetInstaller.dll" file=\epoc32\release\ARMV5\urel\WidgetRegistry.exe "sys\bin\WidgetRegistry.exe" file=\epoc32\release\ARMV5\urel\WidgetRegistryClient.dll "sys\bin\WidgetRegistryClient.dll" data=\epoc32\data\Z\Private\10282f06\Widget_lproj.xml "private\10282f06\Widget_lproj.xml" data=\epoc32\data\Z\Private\10282f06\WidgetAccessPolicy.xml "private\10282f06\WidgetAccessPolicy.xml" -file=\epoc32\release\ARMV5\urel\WidgetUi.exe "sys\bin\WidgetUi.exe" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\WidgetUi_reg.rsc "Private\10003a3f\import\apps\WidgetUi_reg.rsc" file=\epoc32\release\ARMV5\urel\WidgetLauncher.exe "sys\bin\WidgetLauncher.exe" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WidgetInstallerUI.dll , WidgetInstallerUI.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WidgetRecognizer.dll , WidgetRecognizer.dll ) @@ -5095,9 +4365,7 @@ file=\epoc32\release\ARMV5\urel\WIFIPROTCLIENT.DLL "sys\bin\WIFIPROTCLIENT.DLL" file=\epoc32\release\ARMV5\urel\WIFIPROTPLUGIN.DLL "sys\bin\WIFIPROTPLUGIN.DLL" FILE=\epoc32\release\ARMV5\urel\WIMCLIENT.DLL "sys\bin\WIMCLIENT.DLL" -FILE=\epoc32\release\ARMV5\urel\SWIMREADER.DLL "sys\bin\SWIMREADER.DLL" FILE=\epoc32\release\ARMV5\urel\SCARD.DLL "sys\bin\SCARD.DLL" -FILE=\epoc32\release\ARMV5\urel\WIMSERVER.EXE "sys\bin\WIMSERVER.EXE" FILE=\epoc32\release\ARMV5\urel\WIMUTIL.DLL "sys\bin\WIMUTIL.DLL" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, WIMPLUGIN.DLL , WIMPLUGIN.DLL ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, eapnotifwrapper.dll , eapnotifwrapper.dll ) @@ -5105,7 +4373,6 @@ file=\epoc32\release\ARMV5\urel\gtcnotifdlg.dll "sys\bin\gtcnotifdlg.dll" file=\epoc32\release\ARMV5\urel\papnotifdlg.dll "sys\bin\papnotifdlg.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, EapPluginConfig.dll , EapPluginConfig.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wlanindicatorplugin.dll , wlanindicatorplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wlanplugin.DLL , wlanplugin.DLL ) data=\epoc32\data\Z\resource\apps\wlanplugin.mif "resource\apps\wlanplugin.mif" data=\epoc32\data\Z\Private\2000b187\200100c0.xml "private\2000b187\200100c0.xml" @@ -5123,8 +4390,6 @@ file=\epoc32\release\ARMV5\urel\wmdrmclientwrapper.dll "sys\bin\wmdrmclientwrapper.dll" data=\epoc32\data\Z\System\install\wmdrm_stub.sis "system\install\wmdrm_stub.sis" data=\epoc32\data\Z\private\102073ea\excludes\10282F1B.exc "private\102073ea\excludes\10282F1B.exc" -file=\epoc32\release\ARMV5\urel\wmdrmdlaapp.exe "sys\bin\wmdrmdlaapp.exe" -data=\epoc32\data\Z\private\10003a3f\apps\wmdrmdlaapp_reg.rsc "private\10003a3f\import\apps\wmdrmdlaapp_reg.rsc" file=\epoc32\release\ARMV5\urel\wmdrmdlautils.dll "sys\bin\wmdrmdlautils.dll" data=\epoc32\data\Z\resource\apps\wmdrmdla.mif "resource\apps\wmdrmdla.mif" file=\epoc32\release\ARMV5\urel\wmdrmdlawrapper.dll "sys\bin\wmdrmdlawrapper.dll" @@ -5139,12 +4404,10 @@ file=\epoc32\release\ARMV5\urel\wmdrmdla.dll "sys\bin\wmdrmdla.dll" file=\epoc32\release\ARMV5\urel\wmdrmpd.dll "sys\bin\wmdrmpd.dll" FILE=\epoc32\release\ARMV5\urel\WPASecuritySettingsUI.dll "sys\bin\WPASecuritySettingsUI.dll" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wpnatfwtraversaladapter.dll , wpnatfwtraversaladapter.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wrtdataplugin.dll , wrtdataplugin.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wrtharvester.dll , wrtharvester.dll ) file=\epoc32\release\ARMV5\urel\SenServConn.dll "sys\bin\SenServConn.dll" file=\epoc32\release\ARMV5\urel\wsconnagent.dll "sys\bin\wsconnagent.dll" -file=\epoc32\release\ARMV5\urel\Sen.EXE "sys\bin\Sen.EXE" data=\epoc32\data\Z\System\install\S60SOA.SIS "System\Install\S60SOA.SIS" data=\epoc32\data\Z\private\101F96F4\backup_registration.xml "private\101F96F4\backup_registration.xml" file=\epoc32\release\ARMV5\urel\SenCredentialManager.dll "sys\bin\SenCredentialManager.dll" @@ -5152,20 +4415,16 @@ REM WlanSnifferAiHelperApplication data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\wsfaihelper_reg.rsc "Private\10003a3f\apps\wsfaihelper_reg.rsc" file=\epoc32\release\ARMV5\urel\wsfaihelper.exe "sys\bin\wsfaihelper.exe" -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wsfaiplugin.dll , wsfaiplugin.dll ) REM WlanSnifferApWizard file=\epoc32\release\ARMV5\urel\wsfapwizard.dll "sys\bin\wsfapwizard.dll" REM WlanSnifferClient file=\epoc32\release\ARMV5\urel\wsfclient.dll "sys\bin\wsfclient.dll" REM WlanSnifferApplication -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\wlansniffer_reg.rsc "Private\10003a3f\apps\wlansniffer_reg.rsc" -file=\epoc32\release\ARMV5\urel\wlansniffer.exe "sys\bin\wlansniffer.exe" REM WlanSnifferModel file=\epoc32\release\ARMV5\urel\wsfmodel.dll "sys\bin\wsfmodel.dll" file=\epoc32\release\ARMV5\urel\SenFragment.dll "sys\bin\SenFragment.dll" file=\epoc32\release\ARMV5\urel\SenFramework.dll "sys\bin\SenFramework.dll" REM WlanSnifferServer -file=\epoc32\release\ARMV5\urel\wsfserver.exe "sys\bin\wsfserver.exe" data=\epoc32\data\Z\Private\200159c0\install\wsfwidget_20026F45\hsps\00\manifest.dat "private\200159c0\install\wsfwidget_20026F45\hsps\00\manifest.dat" data=\epoc32\data\Z\Private\200159c0\install\wsfwidget_20026F45\xuikon\00\wsfwidget.o0000 "private\200159c0\install\wsfwidget_20026F45\xuikon\00\wsfwidget.o0000" REM WlanInfo @@ -5202,14 +4461,10 @@ file=\epoc32\release\ARMV5\urel\XdmXmlParser.dll "sys\bin\XdmXmlParser.dll" file=\epoc32\release\ARMV5\urel\XdmSettingsApi.dll "sys\bin\XdmSettingsApi.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, XdmDeviceManagementAdapter.dll , XdmDeviceManagementAdapter.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, XdmProvisioning.dll , XdmProvisioning.dll ) -file=\epoc32\release\ARMV5\urel\XcapUtils.dll "sys\bin\XcapUtils.dll" file=\epoc32\release\ARMV5\urel\XcapCacheClient.dll "sys\bin\XcapCacheClient.dll" file=\epoc32\release\ARMV5\urel\XcapCache.exe "sys\bin\XcapCache.exe" file=\epoc32\release\ARMV5\urel\XcapHttpTransport.dll "sys\bin\XcapHttpTransport.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, XcapAppUsage.dll , XcapAppUsage.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, XcapOperations.dll , XcapOperations.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, XcapProtocol.dll , XcapProtocol.dll ) data=\epoc32\data\Z\private\10207421\backup_registration.xml "private\10207421\backup_registration.xml" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, LocalProtocol.dll , LocalProtocol.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, LocalOperations.dll , LocalOperations.dll ) @@ -5246,7 +4501,6 @@ file=\epoc32\release\ARMV5\urel\accsrvutil.dll "sys\bin\accsrvutil.dll" file=\epoc32\release\ARMV5\urel\accpolaudiodevicetopology.dll "sys\bin\accpolaudiodevicetopology.dll" data=\epoc32\data\Z\Private\100012A5\policy\10205030.spd "private\100012A5\policy\10205030.spd" -file=\epoc32\release\ARMV5\urel\AddedDevSoundControlMsgHdlr.dll "sys\bin\AddedDevSoundControlMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\AddedDevSoundControlProxy.dll "sys\bin\AddedDevSoundControlProxy.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ASYReferencePlugin.dll , ASYReferencePlugin.dll ) file=\epoc32\release\ARMV5\urel\atextclient.dll "sys\bin\atextclient.dll" @@ -5256,22 +4510,13 @@ file=\epoc32\release\ARMV5\urel\atext.exe "sys\bin\atext.exe" file=\epoc32\release\ARMV5\urel\atextcommon.exe "sys\bin\atextcommon.exe" file=\epoc32\release\ARMV5\urel\AudioOutputControlUtility.dll "sys\bin\AudioOutputControlUtility.dll" -file=\epoc32\release\ARMV5\urel\AudioOutputControlUtilityProxy.dll "sys\bin\AudioOutputControlUtilityProxy.dll" data=\epoc32\data\Z\System\install\AudioOutputControlUtility_Stub.SIS "System\Install\AudioOutputControlUtility_Stub.SIS" -file=\epoc32\release\ARMV5\urel\AudioInputRouting.dll "sys\bin\AudioInputRouting.dll" -file=\epoc32\release\ARMV5\urel\AudioInputMessageHandler.dll "sys\bin\AudioInputMessageHandler.dll" file=\epoc32\release\ARMV5\urel\AudioInputProxy.dll "sys\bin\AudioInputProxy.dll" -file=\epoc32\release\ARMV5\urel\AudioOutputRouting.dll "sys\bin\AudioOutputRouting.dll" -file=\epoc32\release\ARMV5\urel\AudioOutputMessageHandler.dll "sys\bin\AudioOutputMessageHandler.dll" file=\epoc32\release\ARMV5\urel\AudioOutputProxy.dll "sys\bin\AudioOutputProxy.dll" data=\epoc32\data\Z\System\install\AudioRouting_Stub.SIS "System\Install\AudioRouting_Stub.SIS" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ciextnclientplugin.DLL , ciextnclientplugin.DLL ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ciextnserverplugin.DLL , ciextnserverplugin.DLL ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ciplatformfactoryplugin.DLL , ciplatformfactoryplugin.DLL ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, ciplatformmsghndlrplugin.DLL , ciplatformmsghndlrplugin.DLL ) -file=\epoc32\release\ARMV5\urel\CommonDSY.DLL "sys\bin\CommonDSY.DLL" data=\epoc32\release\ARMV5\urel\Z\private\101f6efa\dosserver.ini "private\101f6efa\dosserver.ini" -file=\epoc32\release\ARMV5\urel\ConfigurationComponentsFactory.dll "sys\bin\ConfigurationComponentsFactory.dll" data=\epoc32\data\Z\System\install\ConfigurationComponentsFactory_Stub.SIS "System\Install\ConfigurationComponentsFactory_Stub.SIS" file=\epoc32\release\ARMV5\UREL\libdbus.dll "sys\bin\libdbus.dll" file=\epoc32\release\ARMV5\UREL\libdbus-utils.dll "sys\bin\libdbus-utils.dll" @@ -5280,60 +4525,14 @@ data=\EPOC32\WINSCW\C\data\dbus\system.conf "data\dbus\system.conf" file=\epoc32\release\ARMV5\urel\diskspacereserver.dll "sys\bin\diskspacereserver.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, diskspacereservationplugin.dll , diskspacereservationplugin.dll ) -file=\epoc32\release\ARMV5\urel\DosSrv.dll "sys\bin\DosSrv.dll" -file=\epoc32\release\ARMV5\urel\DosServer.exe "sys\bin\DosServer.exe" file=\epoc32\release\ARMV5\urel\DSClient.dll "sys\bin\DSClient.dll" -file=\epoc32\release\ARMV5\urel\DRMAudioPlayUtility.dll "sys\bin\DRMAudioPlayUtility.dll" -file=\epoc32\release\ARMV5\urel\DRMPlayServer.exe "sys\bin\DRMPlayServer.exe" data=\epoc32\data\Z\System\install\DRMAudioPlayer_Stub.SIS "System\Install\DRMAudioPlayer_Stub.SIS" file=\epoc32\release\ARMV5\urel\edidparser.dll "sys\bin\edidparser.dll" -file=\epoc32\release\ARMV5\urel\AudioEqualizerEffect.dll "sys\bin\AudioEqualizerEffect.dll" -file=\epoc32\release\ARMV5\urel\AudioEqualizerMessageHandler.dll "sys\bin\AudioEqualizerMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\AudioEqualizerProxy.dll "sys\bin\AudioEqualizerProxy.dll" -file=\epoc32\release\ARMV5\urel\BassBoostEffect.dll "sys\bin\BassBoostEffect.dll" -file=\epoc32\release\ARMV5\urel\BassBoostMessageHandler.dll "sys\bin\BassBoostMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\BassBoostProxy.dll "sys\bin\BassBoostProxy.dll" -file=\epoc32\release\ARMV5\urel\DistanceAttenuationEffect.dll "sys\bin\DistanceAttenuationEffect.dll" -file=\epoc32\release\ARMV5\urel\DistanceAttenuationMessageHandler.dll "sys\bin\DistanceAttenuationMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\DistanceAttenuationProxy.dll "sys\bin\DistanceAttenuationProxy.dll" file=\epoc32\release\ARMV5\urel\DopplerBase.dll "sys\bin\DopplerBase.dll" file=\epoc32\release\ARMV5\urel\EffectBase.dll "sys\bin\EffectBase.dll" -file=\epoc32\release\ARMV5\urel\EnvironmentalReverbEffect.dll "sys\bin\EnvironmentalReverbEffect.dll" -file=\epoc32\release\ARMV5\urel\EnvironmentalReverbMessageHandler.dll "sys\bin\EnvironmentalReverbMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\EnvironmentalReverbProxy.dll "sys\bin\EnvironmentalReverbProxy.dll" -file=\epoc32\release\ARMV5\urel\ListenerDopplerEffect.dll "sys\bin\ListenerDopplerEffect.dll" -file=\epoc32\release\ARMV5\urel\ListenerDopplerMessageHandler.dll "sys\bin\ListenerDopplerMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\ListenerDopplerProxy.dll "sys\bin\ListenerDopplerProxy.dll" -file=\epoc32\release\ARMV5\urel\ListenerLocationEffect.dll "sys\bin\ListenerLocationEffect.dll" -file=\epoc32\release\ARMV5\urel\ListenerLocationMessageHandler.dll "sys\bin\ListenerLocationMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\ListenerLocationProxy.dll "sys\bin\ListenerLocationProxy.dll" -file=\epoc32\release\ARMV5\urel\ListenerOrientationEffect.dll "sys\bin\ListenerOrientationEffect.dll" -file=\epoc32\release\ARMV5\urel\ListenerOrientationMessageHandler.dll "sys\bin\ListenerOrientationMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\ListenerOrientationProxy.dll "sys\bin\ListenerOrientationProxy.dll" file=\epoc32\release\ARMV5\urel\LocationBase.dll "sys\bin\LocationBase.dll" -file=\epoc32\release\ARMV5\urel\LoudnessEffect.dll "sys\bin\LoudnessEffect.dll" -file=\epoc32\release\ARMV5\urel\LoudnessMessageHandler.dll "sys\bin\LoudnessMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\LoudnessProxy.dll "sys\bin\LoudnessProxy.dll" file=\epoc32\release\ARMV5\urel\OrientationBase.dll "sys\bin\OrientationBase.dll" -file=\epoc32\release\ARMV5\urel\RoomLevelEffect.dll "sys\bin\RoomLevelEffect.dll" -file=\epoc32\release\ARMV5\urel\RoomLevelMessageHandler.dll "sys\bin\RoomLevelMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\RoomLevelProxy.dll "sys\bin\RoomLevelProxy.dll" -file=\epoc32\release\ARMV5\urel\SourceDopplerEffect.dll "sys\bin\SourceDopplerEffect.dll" -file=\epoc32\release\ARMV5\urel\SourceDopplerMessageHandler.dll "sys\bin\SourceDopplerMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\SourceDopplerProxy.dll "sys\bin\SourceDopplerProxy.dll" -file=\epoc32\release\ARMV5\urel\SourceLocationEffect.dll "sys\bin\SourceLocationEffect.dll" -file=\epoc32\release\ARMV5\urel\SourceLocationMessageHandler.dll "sys\bin\SourceLocationMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\SourceLocationProxy.dll "sys\bin\SourceLocationProxy.dll" -file=\epoc32\release\ARMV5\urel\SourceOrientationEffect.dll "sys\bin\SourceOrientationEffect.dll" -file=\epoc32\release\ARMV5\urel\SourceOrientationMessageHandler.dll "sys\bin\SourceOrientationMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\SourceOrientationProxy.dll "sys\bin\SourceOrientationProxy.dll" -file=\epoc32\release\ARMV5\urel\StereoWideningEffect.dll "sys\bin\StereoWideningEffect.dll" -file=\epoc32\release\ARMV5\urel\StereoWideningMessageHandler.dll "sys\bin\StereoWideningMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\StereoWideningProxy.dll "sys\bin\StereoWideningProxy.dll" data=\epoc32\data\Z\System\install\Effect_Stub.SIS "System\Install\Effect_Stub.SIS" -file=\epoc32\release\ARMV5\urel\AudioEqualizerUtility.dll "sys\bin\AudioEqualizerUtility.dll" -file=\epoc32\release\ARMV5\urel\EnvironmentalReverbUtility.dll "sys\bin\EnvironmentalReverbUtility.dll" -file=\epoc32\release\ARMV5\urel\StereoWideningUtility.dll "sys\bin\StereoWideningUtility.dll" data=\epoc32\data\Z\System\install\EffectsPresets_Stub.SIS "System\Install\EffectsPresets_Stub.SIS" file=\epoc32\release\ARMV5\urel\ExifLib.dll "sys\bin\ExifLib.dll" file=\epoc32\release\ARMV5\urel\FrameTable.dll "sys\bin\FrameTable.dll" @@ -5349,7 +4548,6 @@ REM HeadsetStatus file=\epoc32\release\ARMV5\urel\HeadsetStatus.dll "sys\bin\HeadsetStatus.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, hwrmdefaultlighttargetmodifierplugin.dll , hwrmdefaultlighttargetmodifierplugin.dll ) -__ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, hwrmfmtxwatcherplugin.dll , hwrmfmtxwatcherplugin.dll ) file=\epoc32\release\ARMV5\urel\hwrmhapticspluginservice.dll "sys\bin\hwrmhapticspluginservice.dll" file=\epoc32\release\ARMV5\urel\hwrmhapticsserver.exe "sys\bin\hwrmhapticsserver.exe" file=\epoc32\release\ARMV5\urel\hwrmhapticspluginmanager.dll "sys\bin\hwrmhapticspluginmanager.dll" @@ -5373,50 +4571,18 @@ file=\epoc32\release\ARMV5\urel\MediatorPluginBase.dll "sys\bin\MediatorPluginBase.dll" data=\epoc32\data\Z\private\10207449\allowedsids.rsc "private\10207449\allowedsids.rsc" data=\epoc32\data\Z\resource\MediatorDebug.rsc "resource\MediatorDebug.rsc" -file=\epoc32\release\ARMV5\urel\CustomCommandUtility.dll "sys\bin\CustomCommandUtility.dll" -file=\epoc32\release\ARMV5\urel\CustomInterfaceBuilder.dll "sys\bin\CustomInterfaceBuilder.dll" -file=\epoc32\release\ARMV5\urel\CustomInterfaceUtility.dll "sys\bin\CustomInterfaceUtility.dll" -file=\epoc32\release\ARMV5\urel\MessageHandlerFactory.dll "sys\bin\MessageHandlerFactory.dll" -file=\epoc32\release\ARMV5\urel\CustomInterfaceProxyFactory.dll "sys\bin\CustomInterfaceProxyFactory.dll" data=\epoc32\data\Z\System\install\MMExtFw_Stub.SIS "System\Install\MMExtFw_Stub.SIS" -file=\epoc32\release\ARMV5\urel\AacDecoderConfig.dll "sys\bin\AacDecoderConfig.dll" -file=\epoc32\release\ARMV5\urel\AacDecoderConfigMsgHdlr.dll "sys\bin\AacDecoderConfigMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\AacDecoderConfigProxy.dll "sys\bin\AacDecoderConfigProxy.dll" -file=\epoc32\release\ARMV5\urel\ErrorConcealmentIntfc.dll "sys\bin\ErrorConcealmentIntfc.dll" -file=\epoc32\release\ARMV5\urel\ErrorConcealmentIntfcMsgHdlr.dll "sys\bin\ErrorConcealmentIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\ErrorConcealmentIntfcProxy.dll "sys\bin\ErrorConcealmentIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\G711DecoderIntfc.dll "sys\bin\G711DecoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\G711DecoderIntfcMsgHdlr.dll "sys\bin\G711DecoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\G711DecoderIntfcProxy.dll "sys\bin\G711DecoderIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\G711EncoderIntfc.dll "sys\bin\G711EncoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\G711EncoderIntfcMsgHdlr.dll "sys\bin\G711EncoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\G711EncoderIntfcProxy.dll "sys\bin\G711EncoderIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\G729DecoderIntfc.dll "sys\bin\G729DecoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\G729DecoderIntfcMsgHdlr.dll "sys\bin\G729DecoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\G729DecoderIntfcProxy.dll "sys\bin\G729DecoderIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\G729EncoderIntfc.dll "sys\bin\G729EncoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\G729EncoderIntfcMsgHdlr.dll "sys\bin\G729EncoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\G729EncoderIntfcProxy.dll "sys\bin\G729EncoderIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\IlbcDecoderIntfc.dll "sys\bin\IlbcDecoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\IlbcDecoderIntfcMsgHdlr.dll "sys\bin\IlbcDecoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\IlbcDecoderIntfcProxy.dll "sys\bin\IlbcDecoderIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\IlbcEncoderIntfc.dll "sys\bin\IlbcEncoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\IlbcEncoderIntfcMsgHdlr.dll "sys\bin\IlbcEncoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\IlbcEncoderIntfcProxy.dll "sys\bin\IlbcEncoderIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\SpeechEncoderConfig.dll "sys\bin\SpeechEncoderConfig.dll" -file=\epoc32\release\ARMV5\urel\SpeechEncoderConfigMsgHdlr.dll "sys\bin\SpeechEncoderConfigMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\SpeechEncoderConfigProxy.dll "sys\bin\SpeechEncoderConfigProxy.dll" -file=\epoc32\release\ARMV5\urel\EAacPlusDecoderIntfc.dll "sys\bin\EAacPlusDecoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\EAacPlusDecoderIntfcMsgHdlr.dll "sys\bin\EAacPlusDecoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\EAacPlusDecoderIntfcProxy.dll "sys\bin\EAacPlusDecoderIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\SbcEncoderIntfc.dll "sys\bin\SbcEncoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\SbcEncoderIntfcMsgHdlr.dll "sys\bin\SbcEncoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\SbcEncoderIntfcProxy.dll "sys\bin\SbcEncoderIntfcProxy.dll" -file=\epoc32\release\ARMV5\urel\Ra8DecoderIntfc.dll "sys\bin\Ra8DecoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\Ra8CustomInterfaceMsgHdlr.dll "sys\bin\Ra8CustomInterfaceMsgHdlr.dll" -file=\epoc32\release\ARMV5\urel\Ra8CustomInterfaceProxy.dll "sys\bin\Ra8CustomInterfaceProxy.dll" -file=\epoc32\release\ARMV5\urel\WmaDecoderIntfc.dll "sys\bin\WmaDecoderIntfc.dll" -file=\epoc32\release\ARMV5\urel\WmaDecoderIntfcMsgHdlr.dll "sys\bin\WmaDecoderIntfcMsgHdlr.dll" file=\epoc32\release\ARMV5\urel\WmaDecoderIntfcProxy.dll "sys\bin\WmaDecoderIntfcProxy.dll" data=\epoc32\data\Z\System\install\WmaDecoderIntfc_Stub.sis "System\Install\WmaDecoderIntfc_Stub.sis" data=\epoc32\data\Z\System\install\nga_mdf_postprocessor_stub.sis "System\install\nga_mdf_postprocessor_stub.sis" @@ -5435,8 +4601,6 @@ file=\epoc32\release\ARMV5\urel\psmserver.exe "sys\bin\psmserver.exe" file=\epoc32\release\ARMV5\urel\psmclient.dll "sys\bin\psmclient.dll" file=\epoc32\release\ARMV5\urel\RestrictedAudioOutput.dll "sys\bin\RestrictedAudioOutput.dll" -file=\epoc32\release\ARMV5\urel\RestrictedAudioOutputMessageHandler.dll "sys\bin\RestrictedAudioOutputMessageHandler.dll" -file=\epoc32\release\ARMV5\urel\RestrictedAudioOutputProxy.dll "sys\bin\RestrictedAudioOutputProxy.dll" data=\epoc32\data\Z\System\install\RestrictedAudioOutput_Stub.SIS "System\Install\RestrictedAudioOutput_Stub.SIS" file=\epoc32\release\ARMV5\urel\sensordatacompensator.dll "sys\bin\sensordatacompensator.dll" file=\epoc32\release\ARMV5\urel\sensorserver.exe "sys\bin\sensorserver.exe" @@ -5451,7 +4615,6 @@ data=\epoc32\data\Z\private\2000D75B\startup\0\stem_criticalappscmdlist.rsc "private\2000D75B\startup\0\criticalappscmdlist.rsc" data=\epoc32\data\Z\private\2000D75B\startup\0\stem_noncriticalcmdlist.rsc "private\2000D75B\startup\0\noncriticalcmdlist.rsc" data=\epoc32\data\Z\private\2000D75B\hw\stem_wserv_hw.rsc "private\2000D75B\startup\0\wserv.rsc" -//data=\epoc32\data\Z\private\2000D75B\hw\stem_noncriticalcmdlist_hw.rsc "private\2000D75B\startup\0\noncriticalcmdlist_hw.rsc" data=\epoc32\data\Z\private\2000D75B\shutdown\stem_shutdowncmdlists.rsc "private\2000D75B\shutdown\shutdowncmdlists.rsc" file=\epoc32\release\ARMV5\urel\saaemergencycallrfadaptation.dll "sys\bin\emergencycallrfadaptation.dll" file=\epoc32\release\ARMV5\urel\saastateadaptation.dll "sys\bin\stateadaptation.dll" @@ -5460,11 +4623,10 @@ file=\epoc32\release\ARMV5\urel\saartcadaptation.dll "sys\bin\rtcadaptation.dll" file=\epoc32\release\ARMV5\DEBUG_DIR\starterclient.dll "sys\bin\starterclient.dll" file=\epoc32\release\ARMV5\DEBUG_DIR\startupadaptationadapter.dll "sys\bin\startupadaptationadapter.dll" -file=\epoc32\release\ARMV5\DEBUG_DIR\ssmclayersup.dll "sys\bin\ssmclayersup.dll" file=\epoc32\release\ARMV5\DEBUG_DIR\rfstatusswppolicy.dll "sys\bin\rfstatusswppolicy.dll" file=\epoc32\release\ARMV5\DEBUG_DIR\ssm.state.policy.0001.dll "sys\bin\ssm.state.policy.0001.dll" data=\epoc32\data\Z\private\2000d75b\normal\gsanormalcmdlist.rsc "private\2000d75b\normal\gsanormalcmdlist.rsc" -file=\epoc32\release\ARMV5\DEBUG_DIR\customcmds.dll "sys\bin\customcmds.dll" +file=\epoc32\release\ARMV5\DEBUG_DIR\stem_customcmds.dll "sys\bin\customcmds.dll" file=\epoc32\release\ARMV5\DEBUG_DIR\ssm.swp.policy.simstatus.dll "sys\bin\ssm.swp.policy.simstatus.dll" data=\epoc32\data\Z\private\10202be9\2001d2aa.txt "private\10202be9\2001d2aa.txt" file=\epoc32\release\ARMV5\DEBUG_DIR\ssmactivitycmd.dll "sys\bin\ssmactivitycmd.dll" @@ -5506,10 +4668,7 @@ file=\epoc32\release\ARMV5\urel\wlanagt.agt "sys\bin\wlanagt.agt" file=\epoc32\release\ARMV5\urel\WLANDBIF.dll "sys\bin\WLANDBIF.dll" file=\epoc32\release\ARMV5\urel\wlandevicesettings.dll "sys\bin\wlandevicesettings.dll" -file=\epoc32\release\ARMV5\urel\wlmplatform.dll "sys\bin\wlmplatform.dll" file=\epoc32\release\ARMV5\urel\wlmserver.dll "sys\bin\wlmserver.dll" -file=\epoc32\release\ARMV5\urel\wlmserverexe.exe "sys\bin\wlmserverexe.exe" -file=\epoc32\release\ARMV5\urel\wlmserversrv.dll "sys\bin\wlmserversrv.dll" __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wlanmgmtimpl.dll , wlanmgmtimpl.dll ) __ECOM_PLUGIN(\epoc32\release\ARMV5\urel,Sys\Bin,\epoc32\data\Z,Resource\Plugins, wlancontrolimpl.dll , wlancontrolimpl.dll ) data=\epoc32\data\Z\Private\101f8ec5\backup_registration.xml "private\101f8ec5\backup_registration.xml" @@ -5618,10 +4777,6 @@ data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\PerfMon_reg.rsc "Private\10003a3f\import\apps\PerfMon_reg.rsc" data=\epoc32\data\Z\Private\20011385\backup_registration.xml "private\20011385\backup_registration.xml" data=\epoc32\data\Z\System\Install\PerfMon_stub.sis "system\install\PerfMon_stub.sis" -file=\epoc32\release\ARMV5\urel\ScreenGrabber.exe "sys\bin\ScreenGrabber.exe" -data=\epoc32\data\Z\resource\apps\ScreenGrabber_AIF.MIF "resource\apps\ScreenGrabber_aif.mif" -data=\epoc32\data\Z\resource\apps\ScreenGrabber.RSC "resource\apps\ScreenGrabber.rsc" -data=\epoc32\data\Z\PRIVATE\10003A3F\APPS\ScreenGrabber_reg.rsc "Private\10003a3f\import\apps\ScreenGrabber_reg.rsc" data=\epoc32\data\Z\Private\101FB751\backup_registration.xml "private\101FB751\backup_registration.xml" data=\epoc32\data\Z\System\Install\ScreenGrabber_stub.sis "system\install\ScreenGrabber_stub.sis" file=\epoc32\release\ARMV5\urel\stiftestengine.dll "sys\bin\stiftestengine.dll" @@ -5652,7 +4807,6 @@ data=\epoc32\data\Z\resource\AspSyncUtil.RSC "resource\AspSyncUtil.rsc" data=\epoc32\data\Z\resource\messaging\audiomessagemtm.rsc "resource\messaging\audiomessagemtm.rsc" data=\epoc32\data\Z\resource\messaging\mtm\audiomessageregistry.rsc "resource\messaging\mtm\audiomessagereg.rsc" -data=\epoc32\data\Z\resource\apps\audiomessage.rsc "resource\apps\audiomessage.rsc" data=\epoc32\data\Z\resource\messaging\mtm\BioMtm.rsc "resource\messaging\mtm\BioMtm.rsc" data=\epoc32\data\Z\resource\messaging\Bium.rsc "resource\messaging\Bium.rsc" data=\epoc32\data\Z\resource\satinfo.rsC "resource\satinfo.rsc" @@ -5662,7 +4816,6 @@ data=\epoc32\data\Z\resource\apps\Calcsoft.RSC "resource\apps\Calcsoft.rsc" data=\epoc32\data\Z\resource\apps\calenaiwprovidermenu.rsc "resource\apps\calenaiwprovidermenu.rsc" data=\epoc32\data\Z\resource\CalenCommonUI.rsc "resource\CalenCommonUI.rsc" -data=\epoc32\data\Z\resource\apps\CALENDAR.RSC "resource\apps\Calendar.rsc" data=\epoc32\data\Z\resource\plugins\calendarpluginresource.Rsc "resource\plugins\calendarpluginresource.Rsc" data=\epoc32\data\Z\resource\CalenDefaultEditorsData.rsc "resource\CalenDefaultEditorsData.rsc" file=\epoc32\release\ARMV5\urel\calenregionalutil.dll "sys\bin\calenregionalutil.dll" @@ -5673,15 +4826,12 @@ data=\epoc32\data\Z\resource\apps\vgacamsettings.RSC "resource\apps\vgacamsettings.rsc" data=\epoc32\data\Z\resource\gscamerapluginrsc.rsc "resource\gscamerapluginrsc.rsc" data=\epoc32\data\Z\resource\gscamerapluginrscv2.rsc "resource\gscamerapluginrscv2.rsc" -data=\epoc32\data\Z\resource\apps\ccaapp.RSC "resource\apps\ccaapp.rsc" data=\epoc32\data\Z\resource\ccappcommlauncherpluginrsc.rsc "resource\ccappcommlauncherpluginrsc.rsc" data=\epoc32\data\Z\resource\ccacontactorservicersc.rsc "resource\ccacontactorservicersc.rsc" data=\epoc32\data\Z\resource\ccappmycardpluginrsc.rsc "resource\ccappmycardpluginrsc.rsc" data=\epoc32\data\Z\resource\ccappdetailsviewpluginrsc.rsc "resource\ccappdetailsviewpluginrsc.rsc" data=\epoc32\data\Z\Resource\apps\cch.RSC "resource\apps\cch.RSC" data=\epoc32\data\Z\Resource\apps\cchuinotif.rsc "resource\apps\cchuinotif.rsc" -data=\epoc32\data\Z\resource\apps\clock.RSC "resource\apps\clock.rsc" -data=\epoc32\data\Z\resource\apps\clock_loc.RSC "resource\apps\clock_loc.rsc" data=\epoc32\data\Z\resource\timezonelocalization\timezones.rsc "resource\timezonelocalization\timezones.rsc" data=\epoc32\data\Z\resource\timezonelocalization\timezonegroups.rsc "resource\timezonelocalization\timezonegroups.rsc" data=\epoc32\data\Z\resource\apps\clockindicatorpaneplugin.rsc "resource\apps\clockindicatorpaneplugin.rsc" @@ -5694,8 +4844,6 @@ data=\epoc32\data\Z\resource\gsdasplugin_rsc.rsc "resource\gsdasplugin_rsc.rsc" data=\epoc32\data\Z\Private\200159c0\install\desktop_20026f4f\hsps\00\icon.mif "private\200159c0\install\desktop_20026f4f\hsps\00\icon.mif" data=\epoc32\data\Z\Private\200159c0\install\desktop_20026f4f\hsps\00\desktopconfiguration.dtd "private\200159c0\install\desktop_20026f4f\hsps\00\desktopconfiguration.dtd" -data=\epoc32\data\Z\resource\apps\devdiagapp.RSC "resource\apps\devdiagapp.rsc" -data=\epoc32\data\Z\resource\apps\DevEncUi.RSC "resource\apps\DevEncUi.rsc" data=\epoc32\data\Z\resource\devencnotifplugin.rsc "resource\devencnotifplugin.rsc" data=\epoc32\data\Z\resource\devencGsPluginRsc.rsc "resource\devencGsPluginRsc.rsc" data=\epoc32\data\Z\resource\easydialingpluginresources.rsc "resource\easydialingpluginresources.rsc" @@ -5740,10 +4888,7 @@ data=\epoc32\data\Z\resource\apps\GSEmailSettingsPlugin.rsc "resource\apps\GSEmailSettingsPlugin.rsc" data=\epoc32\data\Z\resource\mediasettings.rsc "resource\mediasettings.rsc" data=\epoc32\data\Z\resource\gsvmbxpluginrsc.rsc "resource\gsvmbxpluginrsc.rsc" -data=\epoc32\data\Z\resource\apps\vcxhgmyvideos.rsc "resource\apps\vcxhgmyvideos.rsc" -data=\epoc32\data\Z\resource\apps\vcxhgmyvideos.mif "resource\apps\vcxhgmyvideos.mif" data=\epoc32\data\Z\resource\apps\vcxhgmyvideosicons.mif "resource\apps\vcxhgmyvideosicons.mif" -data=\epoc32\data\Z\resource\apps\vcxhgvodui.rsc "resource\apps\vcxhgvodui.rsc" data=\epoc32\data\Z\resource\apps\vcxhgvoddefaulticons.mif "resource\apps\vcxhgvoddefaulticons.mif" data=\epoc32\data\Z\private\101ffa91\plugins\BlackWhite.rsc "private\101ffa91\plugins\BlackWhite.rsc" data=\epoc32\data\Z\private\101ffa91\plugins\Brightness.rsc "private\101ffa91\plugins\Brightness.rsc" @@ -5764,14 +4909,12 @@ data=\epoc32\data\Z\resource\ImageEditorProviderInternal.rsc "resource\ImageEditorProviderInternal.rsc" data=\epoc32\data\Z\resource\apps\ImageEditorPluginBase.rsc "resource\apps\ImageEditorPluginBase.rsc" data=\epoc32\data\Z\resource\apps\ImageEditor.rsc "resource\apps\ImageEditor.rsc" -data=\epoc32\data\Z\resource\apps\ImageEditorUi.rsc "resource\apps\ImageEditorUi.rsc" DATA=\epoc32\data\Z\resource\imageprintengine.rsc "resource\imageprintengine.rsc" DATA=\epoc32\data\Z\resource\aiwprintingprovider.rsc "resource\aiwprintingprovider.rsc" data=\epoc32\data\Z\resource\imageprintdata\protocols\dpof.rsc "resource\imageprintdata\protocols\dpof.rsc" data=\epoc32\data\Z\resource\imstatuspaneindicatorpluginrss.rsc "resource\imstatuspaneindicatorpluginrss.rsc" data=\epoc32\data\Z\resource\vimpstuires.rsc "resource\vimpstuires.rsc" data=\epoc32\data\Z\resource\vimpstdetailsviewpluginrsc.rsc "resource\vimpstdetailsviewpluginrsc.rsc" -data=\epoc32\data\Z\resource\apps\vimpstui.mif "resource\apps\vimpstui.mif" data=\epoc32\data\Z\resource\apps\vimpst_servicetab_default.mif "resource\apps\vimpst_servicetab_default.mif" data=\epoc32\winscw\c\private\102828DD\data\xsp\xsp\files\r47.conversations.mif "private\102828DD\data\xsp\xsp\files\r47.conversations.mif" data=\epoc32\winscw\c\private\102828DD\data\xsp\xsp\brandfile.bin.r47 "private\102828DD\data\xsp\xsp\brandfile.bin.r47" @@ -5790,17 +4933,14 @@ data=\epoc32\data\Z\resource\java\eswtcore.rsc "resource\java\eswtcore.rsc" data=\epoc32\data\Z\resource\lmkui.rsC "resource\lmkui.rsc" data=\epoc32\data\Z\Resource\apps\Landmarks.rsc "resource\apps\Landmarks.rsc" -data=\epoc32\data\Z\resource\apps\Logs.rsc "resource\apps\Logs.rsc" REM Light Weight Player data=\epoc32\data\Z\resource\MailPlainView.rsc "resource\MailPlainView.rsc" data=\epoc32\data\Z\resource\MsgMailUtils.rsc "resource\MsgMailUtils.rsc" data=\epoc32\data\Z\resource\apps\matrixmenu.RSC "resource\apps\matrixmenu.rsc" data=\epoc32\data\Z\resource\apps\MCEEXTRAITEMS.RSC "resource\apps\mceextraitems.rsc" -data=\epoc32\data\Z\resource\apps\MCE.RSC "resource\apps\Mce.rsc" data=\epoc32\data\Z\resource\apps\MceLogEng.rsc "resource\apps\MceLogEng.rsc" data=\epoc32\data\Z\resource\mcesettings.rsc "resource\mcesettings.rsc" data=\epoc32\data\Z\resource\MceSettingsGSPluginRsc.rsc "resource\MceSettingsGSPluginRsc.rsc" -data=\epoc32\data\Z\resource\apps\mediasettings.RSC "resource\apps\mediasettings.rsc" data=\epoc32\data\Z\resource\MemStatePopup.rsc "resource\MemStatePopup.rsc" data=\epoc32\data\z\resource\apps\foldersuite.rsc "resource\apps\foldersuite.rsc" data=\epoc32\data\Z\private\200113DD\content\01\matrixmenudata.dtd "private\200113DD\content\01\matrixmenudata.dtd" @@ -5814,16 +4954,10 @@ data=\epoc32\data\Z\resource\messaging\mtm\not.rsc "resource\messaging\mtm\Not.rsc" data=\epoc32\data\Z\resource\apps\mpxaudioeffectsview.rsc "resource\apps\mpxaudioeffectsview.rsc" data=\epoc32\data\Z\resource\apps\mpxfmtx.rsc "resource\apps\mpxfmtx.rsc" -data=\epoc32\data\Z\resource\apps\mpxmediakeyhandler.rsc "resource\apps\mpxmediakeyhandler.rsc" -data=\epoc32\data\Z\resource\apps\mpxscreensaverplugin.rsc "resource\apps\mpxscreensaverplugin.rsc" data=\epoc32\data\Z\resource\apps\mpxcollectiondbhgres.rsc "resource\apps\mpxcollectiondbhgres.rsc" data=\epoc32\data\Z\resource\apps\mpxcollectiondbres.rsc "resource\apps\mpxcollectiondbres.rsc" data=\epoc32\data\Z\resource\apps\pcres.rsc "resource\apps\pcres.rsc" data=\epoc32\data\Z\resource\apps\mpxupnpbrowsedialog.rsc "resource\apps\mpxupnpbrowsedialog.rsc" -data=\epoc32\data\Z\resource\apps\mpxvideoplaybackcontrols.rsc "resource\apps\mpxvideoplaybackcontrols.rsc" -data=\epoc32\data\Z\resource\apps\mpxvideoplaybackviews.rsc "resource\apps\mpxvideoplaybackviews.rsc" -data=\epoc32\data\Z\resource\apps\mpxvideoplayer.RSC "resource\apps\mpxvideoplayer.rsc" -data=\epoc32\data\Z\resource\apps\mpxvideoplayer_aif.mif "resource\apps\mpxvideoplayer_aif.mif" data=\epoc32\data\Z\resource\apps\mpxwaitnotedialog.rsc "resource\apps\mpxwaitnotedialog.rsc" data=\epoc32\data\Z\resource\mseng.rsc "resource\mseng.rsc" data=\epoc32\data\Z\resource\MsgEditorAppUi.rsc "resource\MsgEditorAppUi.rsc" @@ -5847,10 +4981,8 @@ data=\epoc32\data\Z\resource\plugins\notespluginsresource.rsc "resource\plugins\notespluginsresource.Rsc" data=\epoc32\data\Z\resource\WPEMailAdapterResource.rsc "resource\WPEMailAdapter.rsc" REM OMA Device Management Application UI IBY-file for localizable elements -data=\epoc32\data\Z\resource\apps\NSmlDMSync.RSC "resource\apps\NSmlDMSync.rsc" data=\epoc32\data\Z\resource\OmaDmCPPluginResource.rsc "resource\OmaDmCPPluginResource.rsc" REM OMA Data Synchronization Application UI IBY-file for localizable elements -data=\epoc32\data\Z\resource\apps\NSmlDSSync.RSC "resource\apps\NSmlDSSync.rsc" data=\epoc32\data\Z\resource\NsmlDSGSPluginResource.RSC "resource\NsmlDSGSPluginResource.RSC" data=\epoc32\data\Z\resource\apps\Operatormenu.RSC "resource\apps\Operatormenu.rsc" data=\epoc32\data\Z\Private\200159c0\install\organizer_2001f481\xuikon\00\orga.o0000 "private\200159c0\install\organizer_2001f481\xuikon\00\orga.o0000" @@ -5862,7 +4994,6 @@ data=\epoc32\data\Z\resource\apps\pbk2rclsendbusinesscardpluginimpl.RSC "resource\apps\pbk2rclsendbusinesscardpluginimpl.rsc" data=\epoc32\data\Z\resource\apps\pbk2rclactionutils.RSC "resource\apps\pbk2rclactionutils.rsc" data=\epoc32\data\Z\resource\pbk2rclengine.rsc "resource\pbk2rclengine.rsc" -data=\epoc32\data\Z\resource\apps\Phonebook2.RSC "resource\apps\Phonebook2.rsc" data=\epoc32\data\Z\resource\Pbk2Presentation.rsc "resource\Pbk2Presentation.rsc" data=\epoc32\data\Z\resource\Pbk2PresentationChinese.rsc "resource\Pbk2PresentationChinese.rsc" data=\epoc32\data\Z\resource\Pbk2PresentationJapanese.rsc "resource\Pbk2PresentationJapanese.rsc" @@ -5870,7 +5001,6 @@ data=\epoc32\data\Z\resource\Pbk2Commands.rsc "resource\Pbk2Commands.rsc" data=\epoc32\data\Z\resource\Pbk2UiExtCommon.rsc "resource\Pbk2UiExtCommon.rsc" data=\epoc32\data\Z\resource\Pbk2CommonUi.rsc "resource\Pbk2CommonUi.rsc" -data=\epoc32\data\Z\resource\apps\Pbk2ServerApp.rsc "resource\apps\Pbk2ServerApp.rsc" data=\epoc32\data\Z\resource\Pbk2UIServicesRes.rsc "resource\Pbk2UIServicesRes.rsc" data=\epoc32\data\Z\resource\Pbk2ExNamesListRes.rsc "resource\Pbk2ExNamesListRes.rsc" data=\epoc32\data\Z\resource\Pbk2GroupUIRes.rsc "resource\Pbk2GroupUIRes.rsc" @@ -5895,7 +5025,6 @@ data=\epoc32\data\Z\resource\apps\callhandlingui.rsc "resource\apps\callhandlingui.rsc" data=\epoc32\data\Z\resource\apps\phoneuitouch.rsc "resource\apps\phoneuitouch.rsc" data=\epoc32\data\Z\resource\apps\phoneuivoip.rsc "resource\apps\phoneuivoip.rsc" -data=\epoc32\data\Z\resource\apps\pnpprovisioning.RSC "resource\apps\pnpprovisioning.rsc" data=\epoc32\data\Z\Private\200159c0\install\posterwideimage_2001fdbc\xuikon\00\posterwideimage.o0000 "private\200159c0\install\posterwideimage_2001fdbc\xuikon\00\posterwideimage.o0000" data=\epoc32\data\Z\Private\200159c0\install\profile_2001cb7c\xuikon\00\profile.o0000 "private\200159c0\install\profile_2001cb7c\xuikon\00\profile.o0000" data=\epoc32\data\Z\Private\200159c0\install\profile_2001cb7c\hsps\00\icon.mif "private\200159c0\install\profile_2001cb7c\hsps\00\icon.mif" @@ -5949,7 +5078,6 @@ data=\epoc32\data\Z\resource\SVGTUIControl.rsc "resource\SVGTUIControl.rsc" data=\epoc32\data\Z\resource\apps\glxtagsbrowserview.rsc "resource\glxtagsbrowserview.rsc" data=\epoc32\data\Z\Private\200159c0\install\templateview_20026f50\xuikon\00\templateview.o0000 "private\200159c0\install\templateview_20026f50\xuikon\00\templateview.o0000" -data=\epoc32\data\Z\resource\apps\UISettingsSrv.RSC "resource\apps\UISettingsSrv.rsc" data=\epoc32\data\Z\resource\UniMmsPluginD.rsc "resource\UniMmsPluginD.rsc" data=\epoc32\data\Z\resource\UniDataModel.rsc "resource\UniDataModel.rsc" data=\epoc32\data\Z\resource\messaging\UniMtms.rsc "resource\messaging\UniMtms.rsc" @@ -5957,9 +5085,7 @@ data=\epoc32\data\Z\resource\UniSmsPluginD.rsc "resource\UniSmsPluginD.rsc" data=\epoc32\data\Z\resource\UniUtils.rsc "resource\UniUtils.rsc" REM Resource file(s) for Ussd application (ussd.iby) -data=\epoc32\data\Z\resource\apps\ussd.RSC "resource\apps\ussd.rsc" data=\epoc32\data\Z\resource\wpvccadapterrsc.rsc "resource\wpvccadapterrsc.rsc" -data=\epoc32\data\Z\resource\apps\vcxnsscheduleview.rsc "resource\apps\vcxnsscheduleview.rsc" data=\epoc32\data\Z\resource\vccontrolpanelpluginrsc.rsc "resource\vccontrolpanelpluginrsc.rsc" data=\epoc32\data\Z\resource\Plugins\vcxnotifier.rsc "resource\Plugins\vcxnotifier.rsc" data=\epoc32\data\Z\resource\Plugins\IptvOmaProvisioningAdapterRes.rsc "resource\Plugins\IptvOmaProvisioningAdapterRes.rsc" @@ -5968,10 +5094,8 @@ data=\epoc32\data\Z\Private\200159c0\install\view_200286e4\xuikon\00\view.o0000 "private\200159c0\install\view_200286e4\xuikon\00\view.o0000" data=\epoc32\data\Z\Private\200159c0\install\view_200286e5\xuikon\00\view.o0000 "private\200159c0\install\view_200286e5\xuikon\00\view.o0000" data=\epoc32\data\Z\resource\VPbkCntModelRes.rsc "resource\VPbkCntModelRes.rsc" -data=\epoc32\data\Z\resource\apps\vuivoicerecognition.RSC "resource\apps\vuivoicerecognition.rsc" data=\epoc32\data\Z\resource\aiwpbkinfoviewprovider.rsc "resource\aiwpbkinfoviewprovider.rsc" data=\epoc32\data\Z\resource\pbkinfoview.rsc "resource\pbkinfoview.rsc" -data=\epoc32\data\Z\resource\apps\VoIPProvisioningApp.RSC "resource\apps\VoIPProvisioningApp.rsc" data=\epoc32\data\Z\resource\apps\widgetmanagerview.rsc "resource\apps\widgetmanagerview.rsc" data=\epoc32\data\Z\resource\wpgeneralvoipsettingsadapter.rsc "resource\wpgeneralvoipsettingsadapter.rsc" data=\epoc32\data\Z\resource\wpvoipadapter.rsc "resource\wpvoipadapter.rsc" @@ -5989,7 +5113,6 @@ data=\epoc32\data\Z\resource\SWInstCommonUI.rsc "resource\SWInstCommonUI.rsc" data=\epoc32\data\Z\Resource\SisxUIData.rsc "Resource\SisxUIData.rsc" data=\epoc32\data\Z\resource\swidaemon.rsc "resource\swidaemon.rsc" -data=\epoc32\data\Z\resource\apps\ApplicationManagement.RSC "resource\apps\ApplicationManagement.rsc" data=\epoc32\data\Z\resource\appmngr2gsinstalledpluginrsc.rsc "resource\appmngr2gsinstalledpluginrsc.rsc" data=\epoc32\data\Z\resource\appmngr2gsinstfilespluginrsc.rsc "resource\appmngr2gsinstfilespluginrsc.rsc" data=\epoc32\data\Z\resource\appmngr2gssettingspluginrsc.rsc "resource\appmngr2gssettingspluginrsc.rsc" @@ -6013,8 +5136,6 @@ data=\epoc32\data\Z\resource\cmpluginvpnui.rsc "resource\cmpluginvpnui.rsc" data=\epoc32\data\Z\resource\cmwlanui.rsc "resource\cmwlanui.rsc" data=\epoc32\data\Z\resource\CodUi.rsc "resource\CodUi.rsc" -data=\epoc32\data\Z\resource\apps\CodViewer.RSC "resource\apps\CodViewer.rsc" -data=\epoc32\data\Z\resource\apps\RoapApp.RSC "resource\apps\RoapApp.rsc" data=\epoc32\data\Z\Resource\CommonDialogs.rsc "resource\CommonDialogs.rsc" data=\epoc32\data\Z\Resource\FindItemui.rsc "resource\FindItemui.rsc" data=\epoc32\data\Z\Resource\FindItemmenu.rsc "resource\FindItemmenu.rsc" @@ -6051,7 +5172,6 @@ data=\epoc32\data\Z\Resource\EIKCOCTL.rsc "resource\EikCoctl.rsc" file=\epoc32\release\ARMV5\urel\Elocl.dll "sys\bin\Elocl.loc" REM Equalizer -data=\epoc32\data\Z\resource\apps\Equalizer.rsc "resource\apps\Equalizer.rsc" data=\epoc32\data\Z\resource\gsaccessoryplugin.rsc "resource\gsaccessoryplugin.rsc" data=\epoc32\data\Z\resource\GSAdminPluginRsc.rsc "resource\GSAdminPluginRsc.rsc" data=\epoc32\data\Z\resource\apps\GSApp.RSC "resource\apps\GSApp.rsc" @@ -6157,7 +5277,6 @@ data=\epoc32\data\Z\resource\messaging\bif\rsfwmountconfbcbif.rsc "resource\messaging\bif\rsfwmountconfbcbif.rsc" data=\epoc32\data\Z\resource\rsfwnotplugindlg.rsc "resource\rsfwnotplugindlg.rsc" data=\epoc32\data\Z\resource\satserver.rsc "resource\satserver.rsc" -data=\epoc32\data\Z\resource\apps\SatUI.RSC "resource\apps\SatUI.rsc" data=\epoc32\data\Z\resource\apps\SchemeApp.rsc "resource\apps\SchemeApp.rsc" data=\epoc32\data\Z\resource\sconftp.rsc "resource\sconftp.rsc" data=\epoc32\data\Z\resource\SCPNotifier.rsc "resource\SCPNotifier.rsc" @@ -6201,7 +5320,6 @@ DATA=\epoc32\data\Z\resource\WEPSecuritySettingsUI.rsc "resource\WEPSecuritySettingsUI.rsc" data=\epoc32\data\Z\resource\WidgetMenu.rsc "resource\WidgetMenu.rsc" data=\epoc32\data\Z\Resource\WidgetInstallerUI.rsc "Resource\WidgetInstallerUI.rsc" -data=\epoc32\data\Z\resource\apps\WidgetUi.RSC "resource\apps\WidgetUi.rsc" data=\epoc32\data\Z\resource\WiFiProtPlugin.rsc "resource\WiFiProtPlugin.rsc" DATA=\epoc32\data\Z\resource\EapSimUi.rsc "resource\EapSimUi.rsc" DATA=\epoc32\data\Z\resource\EapAkaUi.rsc "resource\EapAkaUi.rsc" @@ -6219,7 +5337,6 @@ data=\epoc32\data\Z\resource\wlanpluginrsc.rsc "resource\wlanpluginrsc.rsc" data=\epoc32\data\Z\resource\wlansettingsui.rsc "resource\wlansettingsui.rsc" data=\epoc32\data\Z\resource\wmdrmpkserver.rsc "resource\wmdrmpkserver.rsc" -data=\epoc32\data\Z\resource\apps\wmdrmdlaapp.RSC "resource\apps\wmdrmdlaapp.rsc" data=\epoc32\data\Z\resource\wmdrmdlautils.rsc "resource\wmdrmdlautils.rsc" DATA=\epoc32\data\Z\resource\WPASecuritySettingsUI.rsc "resource\WPASecuritySettingsUI.rsc" data=\epoc32\data\Z\resource\wpnatfwtraversaladapter.rsc "resource\wpnatfwtraversaladapter.rsc" @@ -6230,7 +5347,6 @@ REM WlanSnifferApWizardResources data=\epoc32\data\Z\resource\wsfapwizard.rsc "resource\wsfapwizard.rsc" REM WlanSnifferApplicationResources -data=\epoc32\data\Z\resource\apps\wlansniffer.RSC "resource\apps\wlansniffer.rsc" data=\epoc32\data\Z\Private\200159c0\install\wsfwidget_20026F45\hsps\00\wsfwidgetconfiguration.dtd "private\200159c0\install\wsfwidget_20026F45\hsps\00\wsfwidgetconfiguration.dtd" REM WlanInfoSortingResources data=\epoc32\data\Z\resource\wsfwlaninfosorting.rsc "resource\wsfwlaninfosorting.rsc" @@ -6318,88 +5434,25 @@ data=\epoc32\release\ARMV5\urel\z\private\100059C9\script0.txt "private\100059C9\script0.txt" data=\epoc32\release\ARMV5\urel\z\private\100059C9\script1.txt "private\100059C9\script1.txt" data=\epoc32\data\Z\Private\200159c0\install\wsfwidget_20026F45\hsps\00\wsfwidgetconfiguration.xml "private\200159c0\install\wsfwidget_20026F45\hsps\00\wsfwidgetconfiguration.xml" -file=\epoc32\release\ARMV5\urel\star.exe "sys\bin\star.exe" -data=\epoc32\data\Z\resource\apps\star.RSC "resource\apps\star.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\star_reg.rsc "private\10003a3f\import\apps\star_reg.rsc" -file=\epoc32\release\ARMV5\urel\wiggly.exe "sys\bin\wiggly.exe" -data=\epoc32\data\Z\resource\apps\wiggly.RSC "resource\apps\wiggly.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\wiggly_reg.rsc "private\10003a3f\import\apps\wiggly_reg.rsc" -file=\epoc32\release\ARMV5\urel\animatedtiles.exe "sys\bin\animatedtiles.exe" -data=\epoc32\data\Z\resource\apps\animatedtiles.RSC "resource\apps\animatedtiles.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\animatedtiles_reg.rsc "private\10003a3f\import\apps\animatedtiles_reg.rsc" -file=\epoc32\release\ARMV5\urel\collidingmice.exe "sys\bin\collidingmice.exe" -data=\epoc32\data\Z\resource\apps\collidingmice.RSC "resource\apps\collidingmice.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\collidingmice_reg.rsc "private\10003a3f\import\apps\collidingmice_reg.rsc" -file=\epoc32\release\ARMV5\urel\addressbook.exe "sys\bin\addressbook.exe" -data=\epoc32\data\Z\resource\apps\addressbook.RSC "resource\apps\addressbook.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\addressbook_reg.rsc "private\10003a3f\import\apps\addressbook_reg.rsc" -file=\epoc32\release\ARMV5\urel\svgviewer.exe "sys\bin\svgviewer.exe" -data=\epoc32\data\Z\resource\apps\svgviewer.RSC "resource\apps\svgviewer.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\svgviewer_reg.rsc "private\10003a3f\import\apps\svgviewer_reg.rsc" -file=\epoc32\release\ARMV5\urel\analogclock.exe "sys\bin\analogclock.exe" -data=\epoc32\data\Z\resource\apps\analogclock.RSC "resource\apps\analogclock.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\analogclock_reg.rsc "private\10003a3f\import\apps\analogclock_reg.rsc" -file=\epoc32\release\ARMV5\urel\imagegestures.exe "sys\bin\imagegestures.exe" -data=\epoc32\data\Z\resource\apps\imagegestures.RSC "resource\apps\imagegestures.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\imagegestures_reg.rsc "private\10003a3f\import\apps\imagegestures_reg.rsc" -file=\epoc32\release\ARMV5\urel\qftp.exe "sys\bin\qftp.exe" -data=\epoc32\data\Z\resource\apps\qftp.RSC "resource\apps\qftp.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\qftp_reg.rsc "private\10003a3f\import\apps\qftp_reg.rsc" -file=\epoc32\release\ARMV5\urel\masterdetail.exe "sys\bin\masterdetail.exe" -data=\epoc32\data\Z\resource\apps\masterdetail.RSC "resource\apps\masterdetail.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\masterdetail_reg.rsc "private\10003a3f\import\apps\masterdetail_reg.rsc" -file=\epoc32\release\ARMV5\urel\previewer.exe "sys\bin\previewer.exe" -data=\epoc32\data\Z\resource\apps\previewer.RSC "resource\apps\previewer.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\previewer_reg.rsc "private\10003a3f\import\apps\previewer_reg.rsc" -file=\epoc32\release\ARMV5\urel\fluidlauncher.exe "sys\bin\fluidlauncher.exe" -data=\epoc32\data\Z\resource\apps\fluidlauncher.RSC "resource\apps\fluidlauncher.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\fluidlauncher_reg.rsc "private\10003a3f\import\apps\fluidlauncher_reg.rsc" -file=\epoc32\release\ARMV5\urel\deform.exe "sys\bin\deform.exe" -data=\epoc32\data\Z\resource\apps\deform.RSC "resource\apps\deform.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\deform_reg.rsc "private\10003a3f\import\apps\deform_reg.rsc" REM MISSING file=\epoc32\release\ARMV5\urel\standarddialogs.exe sys\bin\standarddialogs.exe REM MISSING data=\epoc32\data\Z\resource\apps\standarddialogs.RSC resource\apps\standarddialogs.rsc REM MISSING data=\epoc32\data\Z\private\10003a3f\import\Apps\standarddialogs_reg.rsc \private\10003a3f\import\apps\standarddialogs_reg.rsc -file=\epoc32\release\ARMV5\urel\pathstroke.exe "sys\bin\pathstroke.exe" -data=\epoc32\data\Z\resource\apps\pathstroke.RSC "resource\apps\pathstroke.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\pathstroke_reg.rsc "private\10003a3f\import\apps\pathstroke_reg.rsc" REM MISSING file=\epoc32\release\ARMV5\urel\gradients.exe sys\bin\gradients.exe REM MISSING data=\epoc32\data\Z\resource\apps\gradients.RSC resource\apps\gradients.rsc REM MISSING data=\epoc32\data\Z\private\10003a3f\import\Apps\gradients_reg.rsc \private\10003a3f\import\apps\gradients_reg.rsc -file=\epoc32\release\ARMV5\urel\moveblocks.exe "sys\bin\moveblocks.exe" -data=\epoc32\data\Z\resource\apps\moveblocks.RSC "resource\apps\moveblocks.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\moveblocks_reg.rsc "private\10003a3f\import\apps\moveblocks_reg.rsc" -file=\epoc32\release\ARMV5\urel\stickman.exe "sys\bin\stickman.exe" -data=\epoc32\data\Z\resource\apps\stickman.RSC "resource\apps\stickman.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\stickman_reg.rsc "private\10003a3f\import\apps\stickman_reg.rsc" -file=\epoc32\release\ARMV5\urel\fridgemagnets.exe "sys\bin\fridgemagnets.exe" -data=\epoc32\data\Z\resource\apps\fridgemagnets.RSC "resource\apps\fridgemagnets.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\fridgemagnets_reg.rsc "private\10003a3f\import\apps\fridgemagnets_reg.rsc" REM MISSING file=\epoc32\release\ARMV5\urel\blurpicker.exe sys\bin\blurpicker.exe REM MISSING data=\epoc32\data\Z\resource\apps\blurpicker.RSC resource\apps\blurpicker.rsc REM MISSING data=\epoc32\data\Z\private\10003a3f\import\Apps\blurpicker_reg.rsc \private\10003a3f\import\apps\blurpicker_reg.rsc REM MISSING file=\epoc32\release\ARMV5\urel\knobs.exe sys\bin\knobs.exe REM MISSING data=\epoc32\data\Z\resource\apps\knobs.RSC resource\apps\knobs.rsc REM MISSING data=\epoc32\data\Z\private\10003a3f\import\Apps\knobs_reg.rsc \private\10003a3f\import\apps\knobs_reg.rsc -file=\epoc32\release\ARMV5\urel\states.exe "sys\bin\states.exe" -data=\epoc32\data\Z\resource\apps\states.RSC "resource\apps\states.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\states_reg.rsc "private\10003a3f\import\apps\states_reg.rsc" -file=\epoc32\release\ARMV5\urel\saxbookmarks.exe "sys\bin\saxbookmarks.exe" -data=\epoc32\data\Z\resource\apps\saxbookmarks.RSC "resource\apps\saxbookmarks.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\saxbookmarks_reg.rsc "private\10003a3f\import\apps\saxbookmarks_reg.rsc" REM MISSING file=\epoc32\release\ARMV5\urel\defaultprototypes.exe sys\bin\defaultprototypes.exe REM MISSING data=\epoc32\data\Z\resource\apps\defaultprototypes.RSC resource\apps\defaultprototypes.rsc REM MISSING data=\epoc32\data\Z\private\10003a3f\import\Apps\defaultprototypes_reg.rsc \private\10003a3f\import\apps\defaultprototypes_reg.rsc REM MISSING file=\epoc32\release\ARMV5\urel\queuedcustomtype.exe sys\bin\queuedcustomtype.exe REM MISSING data=\epoc32\data\Z\resource\apps\queuedcustomtype.RSC resource\apps\queuedcustomtype.rsc REM MISSING data=\epoc32\data\Z\private\10003a3f\import\Apps\queuedcustomtype_reg.rsc \private\10003a3f\import\apps\queuedcustomtype_reg.rsc -file=\epoc32\release\ARMV5\urel\anomaly.exe "sys\bin\anomaly.exe" -data=\epoc32\data\Z\resource\apps\anomaly.RSC "resource\apps\anomaly.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\anomaly_reg.rsc "private\10003a3f\import\apps\anomaly_reg.rsc" -file=\epoc32\release\ARMV5\urel\weatherinfo.exe "sys\bin\weatherinfo.exe" -data=\epoc32\data\Z\resource\apps\weatherinfo.RSC "resource\apps\weatherinfo.rsc" -data=\epoc32\data\Z\private\10003a3f\import\Apps\weatherinfo_reg.rsc "private\10003a3f\import\apps\weatherinfo_reg.rsc" romchecksum=0x12345678