--- a/cmmanager/cmmgr/cmmplugins/cmpluginpacketdata/src/cmpluginpacketdata.cpp Tue Aug 31 15:35:44 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,2894 +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:
-* Implementation of packetdata Plugin interface.
-*
-*/
-
-
-#include <StringLoader.h>
-#include <featmgr.h>
-#include <centralrepository.h>
-#include <CoreApplicationUIsSDKCRKeys.h>
-
-#include "datamobilitycommsdattypes.h"
-#include "cmpluginpacketdata.h"
-
-#include "OstTraceDefinitions.h"
-#ifdef OST_TRACE_COMPILER_IN_USE
-#include "cmpluginpacketdataTraces.h"
-#endif
-
-using namespace CMManager;
-using namespace CommsDat;
-
-// ================= CONSTANTS =======================
-
-/// Modem bearer names for GPRS/WCDMA access points.
-_LIT( KModemBearerPacketData, "GPRS Modem" );
-_LIT( KDefaultQosDataRecordName, "PRIMARY1" );
-_LIT( KDefaultQosDataRecordNamewithSpace, "PRIMARY1 " );
-
-const TInt KQosRecordIndex = 0;
-
-// ======== MEMBER FUNCTIONS ========
-/**
-* CCmPDCoverageCheck defines the functionality for packetdata service
-* coverage checking.
-*/
-class CCmPDCoverageCheck : public CActive
- {
- public:
- /**
- * Constructor.
- */
- CCmPDCoverageCheck();
-
- /**
- * Destructor.
- */
- ~CCmPDCoverageCheck();
-
- /**
- * Checks if the packet service is available(status is
- * ERegisteredOnHomeNetwork or ERegisteredRoaming or
- * ENotRegisteredButAvailable)
- * @return Return ETrue if the status is one mentioned above.
- * Otherwise returns EFalse.
- */
- TBool IsThereCoverageL();
-
- protected: // from CActive
- virtual void DoCancel();
- virtual void RunL();
-
- private:
- /**
- * Ckecks if the phode mode is offline.
- * @return Returns ETrue if the phone is in offline mode.
- * Otherwise returns EFalse.
- */
- TBool IsPhoneOfflineL() const;
-
- private:
- /** Boolean which has the latest coverage information */
- TBool iCoverage;
-
- /** Controller for single scheduling loop */
- CActiveSchedulerWait iWait;
-
- /** Handle to telephony server */
- RTelServer iServer;
-
- /** Handle to phone(needed for packet service) */
- RPhone iPhone;
-
- /** Handle to packet service */
- RPacketService iService;
-
- /** Network registration status information */
- RPacketService::TRegistrationStatus iNwRegStatus;
- };
-
-// ----------------------------------------------------------------------------
-// CCmPDCoverageCheck::CCmPDCoverageCheck()
-// ----------------------------------------------------------------------------
-//
-CCmPDCoverageCheck::CCmPDCoverageCheck() : CActive( EPriorityStandard )
- {
- OstTraceFunctionEntry0( CCMPDCOVERAGECHECK_CCMPDCOVERAGECHECK_ENTRY );
-
- CActiveScheduler::Add( this );
-
- OstTraceFunctionExit0( CCMPDCOVERAGECHECK_CCMPDCOVERAGECHECK_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPDCoverageCheck::~CCmPDCoverageCheck()
-// ----------------------------------------------------------------------------
-//
-CCmPDCoverageCheck::~CCmPDCoverageCheck()
- {
- OstTraceFunctionEntry0( DUP1_CCMPDCOVERAGECHECK_CCMPDCOVERAGECHECK_ENTRY );
-
- Cancel();
-
- iService.Close();
- iPhone.Close();
- iServer.Close();
-
- OstTraceFunctionExit0( DUP1_CCMPDCOVERAGECHECK_CCMPDCOVERAGECHECK_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPDCoverageCheck::DoCancel
-// ----------------------------------------------------------------------------
-//
-void CCmPDCoverageCheck::DoCancel()
- {
- OstTraceFunctionEntry0( CCMPDCOVERAGECHECK_DOCANCEL_ENTRY );
-
- iWait.AsyncStop();
-
- OstTraceFunctionExit0( CCMPDCOVERAGECHECK_DOCANCEL_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPDCoverageCheck::RunL
-// ----------------------------------------------------------------------------
-//
-void CCmPDCoverageCheck::RunL()
- {
- OstTraceFunctionEntry0( CCMPDCOVERAGECHECK_RUNL_ENTRY );
-
- if ( iStatus.Int() == KErrNone )
- {
- if ( iNwRegStatus == RPacketService::ERegisteredOnHomeNetwork ||
- iNwRegStatus == RPacketService::ERegisteredRoaming ||
- iNwRegStatus == RPacketService::ENotRegisteredButAvailable )
- {
- iCoverage = ETrue;
- }
- iWait.AsyncStop();
- }
- else
- // something went wrong -> no coverage.
- {
- iWait.AsyncStop();
- }
-
- OstTraceFunctionExit0( CCMPDCOVERAGECHECK_RUNL_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPDCoverageCheck::IsThereCoverageL
-// ----------------------------------------------------------------------------
-//
-TBool CCmPDCoverageCheck::IsThereCoverageL()
- {
- OstTraceFunctionEntry0( CCMPDCOVERAGECHECK_ISTHERECOVERAGEL_ENTRY );
-
- iCoverage = EFalse;
-
- if ( !IsPhoneOfflineL() )
- {
- User::LeaveIfError( iServer.Connect() );
-
- RTelServer::TPhoneInfo info;
- User::LeaveIfError( iServer.GetPhoneInfo( 0, info ) );
-
- User::LeaveIfError( iPhone.Open(iServer, info.iName ) );
-
- User::LeaveIfError( iService.Open( iPhone ) );
-
- iService.GetNtwkRegStatus( iStatus, iNwRegStatus );
- SetActive();
- iWait.Start();
-
- User::LeaveIfError( iStatus.Int() );
- }
-
- OstTraceFunctionExit0( CCMPDCOVERAGECHECK_ISTHERECOVERAGEL_EXIT );
- return iCoverage;
- }
-
-// ----------------------------------------------------------------------------
-// CCmPDCoverageCheck::IsPhoneOfflineL
-// ----------------------------------------------------------------------------
-//
-TBool CCmPDCoverageCheck::IsPhoneOfflineL() const
- {
- OstTraceFunctionEntry0( CCMPDCOVERAGECHECK_ISPHONEOFFLINEL_ENTRY );
-
- if ( FeatureManager::FeatureSupported( KFeatureIdOfflineMode ) )
- {
- CRepository* repository = CRepository::NewLC( KCRUidCoreApplicationUIs );
- TInt connAllowed( ECoreAppUIsNetworkConnectionAllowed );
-
- repository->Get( KCoreAppUIsNetworkConnectionAllowed, connAllowed );
- CleanupStack::PopAndDestroy( repository );
-
- if ( !connAllowed )
- {
- OstTraceFunctionExit0( CCMPDCOVERAGECHECK_ISPHONEOFFLINEL_EXIT );
- return ETrue;
- }
- }
-
- OstTraceFunctionExit0( DUP1_CCMPDCOVERAGECHECK_ISPHONEOFFLINEL_EXIT );
- return EFalse;
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::NewL
-// ----------------------------------------------------------------------------
-//
-CCmPluginPacketData* CCmPluginPacketData::NewL(
- TCmPluginInitParam* aInitParam )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_NEWL_ENTRY );
-
- CCmPluginPacketData* self = new( ELeave ) CCmPluginPacketData( aInitParam, ETrue );
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop( self );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_NEWL_EXIT );
- return self;
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::~CCmPluginPacketData
-// ----------------------------------------------------------------------------
-//
-CCmPluginPacketData::~CCmPluginPacketData()
- {
- OstTraceFunctionEntry1( CCMPLUGINPACKETDATA_CCMPLUGINPACKETDATA_ENTRY, this );
-
- ResetBearerRecords();
-
- OstTraceFunctionExit1( CCMPLUGINPACKETDATA_CCMPLUGINPACKETDATA_EXIT, this );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::CreateInstanceL
-// ----------------------------------------------------------------------------
-//
-CCmPluginBaseEng* CCmPluginPacketData::CreateInstanceL( TCmPluginInitParam& aInitParam ) const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CREATEINSTANCEL_ENTRY );
-
- CCmPluginPacketData* self = new( ELeave ) CCmPluginPacketData( &aInitParam, ETrue );
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop( self );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_CREATEINSTANCEL_EXIT );
- return self;
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::CCmPluginPacketData
-// ----------------------------------------------------------------------------
-//
-CCmPluginPacketData::CCmPluginPacketData(
- TCmPluginInitParam* aInitParam,
- TBool aOutgoing )
- :
- CCmPluginBaseEng( aInitParam ),
- iOutgoing( aOutgoing )
- {
- OstTraceFunctionEntry0( DUP1_CCMPLUGINPACKETDATA_CCMPLUGINPACKETDATA_ENTRY );
-
- iBearerType = KUidPacketDataBearerType;
- iBearerRecordId = 0;
- iBearerRecordName = NULL;
- iPacketDataQoSRecord = NULL;
- iBearerPriorityTableId = 0;
-
- OstTraceFunctionExit0( DUP1_CCMPLUGINPACKETDATA_CCMPLUGINPACKETDATA_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::ConstructL()
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CONSTRUCTL_ENTRY );
-
- // Feature Manager is initialized by the CmmServer, so no need to do it here.
-
- CCmPluginBaseEng::ConstructL();
-
- // Get bearer priority table ID.
- TRAP_IGNORE( iBearerPriorityTableId =
- CCDGlobalBearerTypePriorizationRecord::TableIdL( iSession ) );
-
- if ( !iBearerPriorityTableId )
- {
- iBearerPriorityTableId =
- CCDGlobalBearerTypePriorizationRecord::CreateTableL( iSession );
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_CONSTRUCTL_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::CanHandleIapIdL()
-// ----------------------------------------------------------------------------
-//
-TBool CCmPluginPacketData::CanHandleIapIdL( TUint32 aIapId ) const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CANHANDLEIAPIDL_ENTRY );
-
- TBool retVal( EFalse );
-
- CCDIAPRecord *iapRecord = static_cast<CCDIAPRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdIAPRecord ) );
-
- CleanupStack::PushL( iapRecord );
- iapRecord->SetRecordId( aIapId );
-
- TRAPD( err, iapRecord->LoadL( iSession ));
-
- if ( !err )
- {
- retVal = CanHandleIapIdL( iapRecord );
- }
-
- CleanupStack::PopAndDestroy( iapRecord );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_CANHANDLEIAPIDL_EXIT );
- return retVal;
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::CanHandleIapIdL()
-// ----------------------------------------------------------------------------
-//
-TBool CCmPluginPacketData::CanHandleIapIdL( CCDIAPRecord *aIapRecord ) const
- {
- OstTraceFunctionEntry0( DUP1_CCMPLUGINPACKETDATA_CANHANDLEIAPIDL_ENTRY );
-
- TBool retVal( EFalse );
-
- if ( ( TPtrC( aIapRecord->iServiceType ) == TPtrC( KCDTypeNameOutgoingWCDMA ) ||
- TPtrC( aIapRecord->iServiceType ) == TPtrC( KCDTypeNameIncomingWCDMA )) &&
- TPtrC( aIapRecord->iBearerType ) == TPtrC( KCDTypeNameModemBearer ) )
- {
- retVal = ETrue;
- }
-
-
- OstTraceFunctionExit0( DUP1_CCMPLUGINPACKETDATA_CANHANDLEIAPIDL_EXIT );
- return retVal;
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::PreparePluginToLoadRecordsL()
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::PreparePluginToLoadRecordsL()
- {
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::PreparePluginToUpdateRecordsL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::PreparePluginToUpdateRecordsL(
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_PREPAREPLUGINTOUPDATERECORDSL_ENTRY );
-
- //TODO, Add null checks for mandatory specific record pointers.
-
- CCDIAPRecord* iapRecord = static_cast<CCDIAPRecord*>(
- aGenRecordArray[KIapRecordIndex] );
-
- CCDWCDMAPacketServiceRecord* serviceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] );
-
- CheckIfNameModifiedL( iapRecord, serviceRecord );
-
- CheckDNSServerAddressL( ETrue,
- serviceRecord->iGPRSIP6NameServer1,
- serviceRecord->iGPRSIP6NameServer2,
- serviceRecord->iGPRSIP6DNSAddrFromServer );
-
- CheckDNSServerAddressL( EFalse,
- serviceRecord->iGPRSIPNameServer1,
- serviceRecord->iGPRSIPNameServer2,
- serviceRecord->iGPRSIPDNSAddrFromServer );
-
- SetDaemonNameL( aGenRecordArray, aBearerSpecRecordArray );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_PREPAREPLUGINTOUPDATERECORDSL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::SetDaemonNameL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::SetDaemonNameL(
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETDAEMONNAMEL_ENTRY );
-
- // Use DHCP if we can.
- TBool ipfromSrv = GetBearerBoolAttributeL( EPacketDataIPAddrFromServer,
- aGenRecordArray,
- aBearerSpecRecordArray );
- if ( ipfromSrv )
- {
- SetBearerStringAttributeL( ECmConfigDaemonManagerName,
- KDaemonManagerName,
- aGenRecordArray,
- aBearerSpecRecordArray );
- SetBearerStringAttributeL( ECmConfigDaemonName,
- KConfigDaemonName,
- aGenRecordArray,
- aBearerSpecRecordArray );
- }
- else
- {
- if ( FeatureManager::FeatureSupported( KFeatureIdIPv6 ) )
- {
- SetBearerStringAttributeL( ECmConfigDaemonManagerName,
- KDaemonManagerName,
- aGenRecordArray,
- aBearerSpecRecordArray );
- SetBearerStringAttributeL( ECmConfigDaemonName,
- KConfigDaemonName,
- aGenRecordArray,
- aBearerSpecRecordArray );
- }
- else
- {
- SetBearerStringAttributeL( ECmConfigDaemonManagerName,
- KNullDesC(),
- aGenRecordArray,
- aBearerSpecRecordArray );
- SetBearerStringAttributeL( ECmConfigDaemonName,
- KNullDesC(),
- aGenRecordArray,
- aBearerSpecRecordArray );
- }
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETDAEMONNAMEL_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::LoadBearerRecordsL()
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::LoadBearerRecordsL()
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_LOADBEARERRECORDSL_ENTRY );
-
- if ( ServiceRecord().iUmtsR99QoSAndOnTable )
- {
- iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
-
- iPacketDataQoSRecord->SetRecordId( ServiceRecord().iUmtsR99QoSAndOnTable );
- iPacketDataQoSRecord->LoadL( iSession );
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_LOADBEARERRECORDSL_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::LoadServiceRecordL()
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::LoadServiceRecordL()
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_LOADSERVICERECORDL_ENTRY );
-
- if ( TPtrC( KCDTypeNameOutgoingWCDMA ) == iIapRecord->iServiceType )
- {
- iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
- iOutgoing = ETrue;
- }
- else if ( TPtrC( KCDTypeNameIncomingWCDMA ) == iIapRecord->iServiceType )
- {
- iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdIncomingGprsRecord ) );
- iOutgoing = EFalse;
- }
- else
- // this IAP service is not supported by this plugin.
- {
- User::Leave( KErrNotSupported );
- }
-
- iServiceRecord->SetRecordId( iIapRecord->iService );
- TRAPD( err, iServiceRecord->LoadL( iSession ) );
- if ( err == KErrNotFound )
- // record not found -> create a default one
- {
- CreateServiceRecordL();
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_LOADSERVICERECORDL_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::ServiceRecord()
-// ----------------------------------------------------------------------------
-//
-CCDWCDMAPacketServiceRecord& CCmPluginPacketData::ServiceRecord() const
- {
- return *static_cast<CCDWCDMAPacketServiceRecord*>( iServiceRecord );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::CreateServiceRecordL()
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::CreateServiceRecordL()
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CREATESERVICERECORDL_ENTRY );
-
- delete iServiceRecord;
- iServiceRecord = NULL;
-
- if ( iOutgoing )
- {
- iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
- }
- else
- {
- iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdIncomingGprsRecord ) );
- }
-
- ServiceRecord().iGPRSAPN.SetL( KNullDesC );
- ServiceRecord().iGPRSPDPType.SetL( RPacketContext::EPdpTypeIPv4 );
- ServiceRecord().iGPRSReqPrecedence = 0;
- ServiceRecord().iGPRSReqDelay = 0;
- ServiceRecord().iGPRSReqReliability = 0;
- ServiceRecord().iGPRSReqPeakThroughput = 0;
- ServiceRecord().iGPRSReqMeanThroughput = 0;
- ServiceRecord().iGPRSMinPrecedence = 0;
- ServiceRecord().iGPRSMinDelay = 0;
- ServiceRecord().iGPRSMinReliability = 0;
- ServiceRecord().iGPRSMinPeakThroughput = 0;
- ServiceRecord().iGPRSMinMeanThroughput = 0;
- ServiceRecord().iGPRSDataCompression = 0;
- ServiceRecord().iGPRSHeaderCompression = 0;
- ServiceRecord().iGPRSAnonymousAccess = 0;
- ServiceRecord().iGPRSIfNetworks.SetL( KDefIspIfNetworksIPv4 );
- ServiceRecord().iGPRSIfPromptForAuth = EFalse;
- ServiceRecord().iGPRSIfAuthRetries = 0;
- ServiceRecord().iGPRSIPGateway.SetL( KUnspecifiedIPv4 );
- ServiceRecord().iGPRSIPAddrFromServer = ETrue;
- ServiceRecord().iGPRSIPAddr.SetL( KUnspecifiedIPv4 );
- ServiceRecord().iGPRSIPDNSAddrFromServer = ETrue;
- ServiceRecord().iGPRSIPNameServer1.SetL( KUnspecifiedIPv4 );
- ServiceRecord().iGPRSIPNameServer2.SetL( KUnspecifiedIPv4 );
- ServiceRecord().iGPRSIP6DNSAddrFromServer = ETrue;
- ServiceRecord().iGPRSIP6NameServer1.SetL( KDynamicIpv6Address );
- ServiceRecord().iGPRSIP6NameServer2.SetL( KDynamicIpv6Address );
- ServiceRecord().iGPRSEnableLCPExtension = EFalse;
- ServiceRecord().iGPRSDisablePlainTextAuth = ETrue;
- ServiceRecord().iGPRSAPType = EPacketDataBoth;
- ServiceRecord().iGPRSQOSWarningTimeOut = TUint32(-1);
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_CREATESERVICERECORDL_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::ServiceRecordId
-// ----------------------------------------------------------------------------
-//
-TUint32 CCmPluginPacketData::ServiceRecordId() const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SERVICERECORDID_ENTRY );
-
- return ServiceRecord().RecordId();
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::ServiceRecordIdLC
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::ServiceRecordNameLC( HBufC* &aName )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SERVICERECORDNAMELC_ENTRY );
-
- if ( iOutgoing )
- {
- aName = TPtrC( KCDTypeNameOutgoingWCDMA ).AllocLC();
- }
- else
- {
- aName = TPtrC( KCDTypeNameIncomingWCDMA ).AllocLC();
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SERVICERECORDNAMELC_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::BearerRecordIdL()
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::BearerRecordIdL( TUint32& aRecordId )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_BEARERRECORDIDL_ENTRY );
-
- CMDBRecordSet<CCDModemBearerRecord>* bearerRS =
- new( ELeave ) CMDBRecordSet<CCDModemBearerRecord>( KCDTIdModemBearerRecord );
- CleanupStack::PushL( bearerRS );
-
- CCDModemBearerRecord* bearerRecord = static_cast<CCDModemBearerRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdModemBearerRecord ) );
-
- CleanupStack::PushL( bearerRecord );
-
- bearerRecord->iRecordName.SetL( KModemBearerPacketData );
- bearerRS->iRecords.AppendL( bearerRecord );
- CleanupStack::Pop( bearerRecord );
-
- if ( bearerRS->FindL( iSession ) )
- {
- bearerRecord = static_cast<CCDModemBearerRecord*>( bearerRS->iRecords[0] );
- aRecordId = bearerRecord->RecordId();
- }
- else
- // bearer not found -> create dummy values
- {
- bearerRecord->SetRecordId( KCDNewRecordRequest );
- bearerRecord->StoreL( iSession );
-
- aRecordId = bearerRecord->RecordId();
- }
-
- CleanupStack::PopAndDestroy( bearerRS );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_BEARERRECORDIDL_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::BearerRecordNameLC()
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::BearerRecordNameLC( HBufC*& aBearerName )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_BEARERRECORDNAMELC_ENTRY );
-
- aBearerName = TPtrC( KCDTypeNameModemBearer ).AllocLC();
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_BEARERRECORDNAMELC_EXIT );
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::CheckNetworkCoverageL()
-// ----------------------------------------------------------------------------
-//
-TBool CCmPluginPacketData::CheckNetworkCoverageL() const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CHECKNETWORKCOVERAGEL_ENTRY );
-
- TBool retVal( EFalse );
-
-#ifdef __WINS__
- retVal = ETrue;
-#else
- CCmPDCoverageCheck* coverage = new( ELeave ) CCmPDCoverageCheck;
- CleanupStack::PushL( coverage );
-
- retVal = coverage->IsThereCoverageL();
-
- CleanupStack::PopAndDestroy( coverage );
-
-#endif // __WINS
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_CHECKNETWORKCOVERAGEL_EXIT );
- return retVal;
- }
-
-// ----------------------------------------------------------------------------
-// CCmPluginPacketData::SetPDPTypeL()
-// ----------------------------------------------------------------------------
-//
-void CCmPluginPacketData::SetPDPTypeL(
- RPacketContext::TProtocolType aPdpType,
- CCDWCDMAPacketServiceRecord* aServiceRecord )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETPDPTYPEL_ENTRY );
-
- if ( aPdpType == RPacketContext::EPdpTypeIPv6 )
- {
- aServiceRecord->iGPRSPDPType = RPacketContext::EPdpTypeIPv6;
- aServiceRecord->iGPRSIfNetworks.SetL( KDefIspIfNetworksIPv6 );
- }
- else if ( aPdpType == RPacketContext::EPdpTypeIPv4 )
- {
- aServiceRecord->iGPRSIfNetworks.SetL( KDefIspIfNetworksIPv4 );
- aServiceRecord->iGPRSPDPType = RPacketContext::EPdpTypeIPv4;
- }
- else
- {
- User::Leave( KErrArgument );
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETPDPTYPEL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::CreateBearerRecordsL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::CreateBearerRecordsL()
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CREATEBEARERRECORDSL_ENTRY );
-
- delete iPacketDataQoSRecord;
- iPacketDataQoSRecord = NULL;
-
- iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
-
- iPacketDataQoSRecord->iGPRSReqTrafficClass = RPacketQoS::ETrafficClassUnspecified;
- iPacketDataQoSRecord->iGPRSMinTrafficClass = RPacketQoS::ETrafficClassUnspecified;
- iPacketDataQoSRecord->iGPRSReqDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
- iPacketDataQoSRecord->iGPRSMinDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
- iPacketDataQoSRecord->iGPRSReqDeliverErroneousSDU =
- RPacketQoS::EErroneousSDUDeliveryUnspecified;
- iPacketDataQoSRecord->iGPRSMinDeliverErroneousSDU =
- RPacketQoS::EErroneousSDUDeliveryUnspecified;
- iPacketDataQoSRecord->iGPRSReqMaxSDUSize = 0;
- iPacketDataQoSRecord->iGPRSMinAcceptableMaxSDUSize = 0;
- iPacketDataQoSRecord->iGPRSReqMaxUplinkRate = 0;
- iPacketDataQoSRecord->iGPRSReqMinUplinkRate = 0;
- iPacketDataQoSRecord->iGPRSReqMaxDownlinkRate = 0;
- iPacketDataQoSRecord->iGPRSReqMinDownlinkRate = 0;
- iPacketDataQoSRecord->iGPRSReqBER = RPacketQoS::EBERUnspecified;
- iPacketDataQoSRecord->iGPRSMaxBER = RPacketQoS::EBERUnspecified;
- iPacketDataQoSRecord->iGPRSReqSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
- iPacketDataQoSRecord->iGPRSMaxSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
- iPacketDataQoSRecord->iGPRSReqTrafficHandlingPriority =
- RPacketQoS::ETrafficPriorityUnspecified;
- iPacketDataQoSRecord->iGPRSMinTrafficHandlingPriority =
- RPacketQoS::ETrafficPriorityUnspecified;
- iPacketDataQoSRecord->iGPRSReqTransferDelay = 0;
- iPacketDataQoSRecord->iGPRSMaxTransferDelay = 0;
- iPacketDataQoSRecord->iGPRSReqGuaranteedUplinkRate = 0;
- iPacketDataQoSRecord->iGPRSMinGuaranteedUplinkRate = 0;
- iPacketDataQoSRecord->iGPRSReqGuaranteedDownlinkRate = 0;
- iPacketDataQoSRecord->iGPRSMinGuaranteedDownlinkRate = 0;
- iPacketDataQoSRecord->iGPRSSignallingIndication = EFalse;
- iPacketDataQoSRecord->iGPRS_ImCnSignallingIndication = EFalse;
- iPacketDataQoSRecord->iGPRSSourceStatisticsDescriptor =
- RPacketQoS::ESourceStatisticsDescriptorUnknown;
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_CREATEBEARERRECORDSL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::UpdateServiceRecordL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::UpdateServiceRecordL(
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& /*aBearerSpecRecordArray*/ )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_UPDATESERVICERECORDL_ENTRY );
-
- // Delete the original record and create a copy from the parameter.
- delete iServiceRecord;
- iServiceRecord = NULL;
-
- if ( iOutgoing )
- {
- iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
- }
- else
- {
- iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdIncomingGprsRecord ) );
- }
-
- CCDWCDMAPacketServiceRecord* origServiceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>( iServiceRecord );
-
- // Client's copy of packet service record.
- CCDWCDMAPacketServiceRecord* clientServiceRecordCopy =
- static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] );
-
- CopyRecordFieldsL( *clientServiceRecordCopy, *origServiceRecord );
-
- if ( iPacketDataQoSRecord )
- {
- origServiceRecord->iUmtsR99QoSAndOnTable = iPacketDataQoSRecord->RecordId();
- }
-
- origServiceRecord->SetElementId( clientServiceRecordCopy->ElementId() );
-
- if ( !origServiceRecord->RecordId() )
- {
- origServiceRecord->SetRecordId( KCDNewRecordRequest );
- origServiceRecord->StoreL( iSession );
- // Have to be "reloaded" to get possible default values from template records.
- origServiceRecord->LoadL( iSession );
-
- // Update received element ID to client's copy too.
- clientServiceRecordCopy->SetElementId( origServiceRecord->ElementId() );
- }
- else
- {
- origServiceRecord->ModifyL( iSession );
- }
-
- CopyRecordFieldsL( *origServiceRecord, *clientServiceRecordCopy );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_UPDATESERVICERECORDL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::UpdateBearerRecordsL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::UpdateBearerRecordsL(
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_UPDATEBEARERRECORDSL_ENTRY );
-
- CCDUmtsR99QoSAndOnTableRecord* packetDataQoSRecord =
- static_cast<CCDUmtsR99QoSAndOnTableRecord*>( aBearerSpecRecordArray[KQosRecordIndex] );
-
- delete iPacketDataQoSRecord;
- iPacketDataQoSRecord = NULL;
- iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
- CopyRecordFieldsL( *packetDataQoSRecord, *iPacketDataQoSRecord );
- iPacketDataQoSRecord->SetElementId( aBearerSpecRecordArray[KQosRecordIndex]->ElementId() );
-
- if ( !iPacketDataQoSRecord->RecordId() )
- {
- iPacketDataQoSRecord->SetRecordId( KCDNewRecordRequest );
- iPacketDataQoSRecord->StoreL( iSession );
- iPacketDataQoSRecord->LoadL( iSession );
- packetDataQoSRecord->SetElementId( iPacketDataQoSRecord->ElementId() );
-
- // Set service record to point to QoS record.
- ServiceRecord().iUmtsR99QoSAndOnTable = iPacketDataQoSRecord->RecordId();
- ServiceRecord().ModifyL( iSession );
-
- CCDWCDMAPacketServiceRecord* serviceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>( aGenRecordArray[KServiceRecordIndex] );
- serviceRecord->iUmtsR99QoSAndOnTable = iPacketDataQoSRecord->RecordId();
- }
- else
- {
- iPacketDataQoSRecord->ModifyL( iSession );
- }
-
- CopyRecordFieldsL( *iPacketDataQoSRecord, *packetDataQoSRecord );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_UPDATEBEARERRECORDSL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerSpecificRecordsL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::GetBearerSpecificRecordsL(
- RPointerArray<CommsDat::CCDRecordBase>& aRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERSPECIFICRECORDSL_ENTRY );
-
- if ( !iPacketDataQoSRecord )
- {
- // IAP not yet in CommDat.
- GetDefaultQosRecordL( aRecordArray );
- }
- else
- {
- CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
- CleanupStack::PushL( qosRecord );
- CopyRecordFieldsL( *iPacketDataQoSRecord, *qosRecord );
- qosRecord->SetElementId( iPacketDataQoSRecord->ElementId() );
- aRecordArray.AppendL( static_cast<CommsDat::CCDRecordBase*>( qosRecord ) );
- CleanupStack::Pop( qosRecord );
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERSPECIFICRECORDSL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetDefaultServiceRecordL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::GetDefaultServiceRecordL(
- RPointerArray<CommsDat::CCDRecordBase>& aRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETDEFAULTSERVICERECORDL_ENTRY );
-
- CCDWCDMAPacketServiceRecord* serviceRecord( NULL );
- if ( iOutgoing )
- {
- serviceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
- }
- else
- {
- serviceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
- }
-
- CleanupStack::PushL( serviceRecord );
- serviceRecord->iGPRSAPN.SetL( KNullDesC );
- serviceRecord->iGPRSPDPType.SetL( RPacketContext::EPdpTypeIPv4 );
- serviceRecord->iGPRSReqPrecedence = 0;
- serviceRecord->iGPRSReqDelay = 0;
- serviceRecord->iGPRSReqReliability = 0;
- serviceRecord->iGPRSReqPeakThroughput = 0;
- serviceRecord->iGPRSReqMeanThroughput = 0;
- serviceRecord->iGPRSMinPrecedence = 0;
- serviceRecord->iGPRSMinDelay = 0;
- serviceRecord->iGPRSMinReliability = 0;
- serviceRecord->iGPRSMinPeakThroughput = 0;
- serviceRecord->iGPRSMinMeanThroughput = 0;
- serviceRecord->iGPRSDataCompression = EFalse;
- serviceRecord->iGPRSHeaderCompression = EFalse;
- serviceRecord->iGPRSAnonymousAccess = EFalse;
- serviceRecord->iGPRSIfNetworks.SetL( KDefIspIfNetworksIPv4 );
- serviceRecord->iGPRSIfPromptForAuth = EFalse;
- serviceRecord->iGPRSIfAuthRetries = 0;
- serviceRecord->iGPRSIPGateway.SetL( KUnspecifiedIPv4 );
- serviceRecord->iGPRSIPAddrFromServer = ETrue;
- serviceRecord->iGPRSIPAddr.SetL( KUnspecifiedIPv4 );
- serviceRecord->iGPRSIPDNSAddrFromServer = ETrue;
- serviceRecord->iGPRSIPNameServer1.SetL( KUnspecifiedIPv4 );
- serviceRecord->iGPRSIPNameServer2.SetL( KUnspecifiedIPv4 );
- serviceRecord->iGPRSIP6DNSAddrFromServer = ETrue;
- serviceRecord->iGPRSIP6NameServer1.SetL( KDynamicIpv6Address );
- serviceRecord->iGPRSIP6NameServer2.SetL( KDynamicIpv6Address );
- serviceRecord->iGPRSEnableLCPExtension = EFalse;
- serviceRecord->iGPRSDisablePlainTextAuth = ETrue;
- serviceRecord->iGPRSAPType = EPacketDataBoth;
- serviceRecord->iGPRSQOSWarningTimeOut = TUint32(-1);
-
- aRecordArray.AppendL( static_cast<CommsDat::CCDRecordBase*>( serviceRecord ) );
- CleanupStack::Pop( serviceRecord );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETDEFAULTSERVICERECORDL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetDefaultQosRecordL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::GetDefaultQosRecordL(
- RPointerArray<CommsDat::CCDRecordBase>& aRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETDEFAULTQOSRECORDL_ENTRY );
-
- CCDUmtsR99QoSAndOnTableRecord* packetDataQoSRecord =
- static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
- CleanupStack::PushL( packetDataQoSRecord );
-
- packetDataQoSRecord->iGPRSReqTrafficClass = RPacketQoS::ETrafficClassUnspecified;
- packetDataQoSRecord->iGPRSMinTrafficClass = RPacketQoS::ETrafficClassUnspecified;
- packetDataQoSRecord->iGPRSReqDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
- packetDataQoSRecord->iGPRSMinDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
- packetDataQoSRecord->iGPRSReqDeliverErroneousSDU =
- RPacketQoS::EErroneousSDUDeliveryUnspecified;
- packetDataQoSRecord->iGPRSMinDeliverErroneousSDU =
- RPacketQoS::EErroneousSDUDeliveryUnspecified;
- packetDataQoSRecord->iGPRSReqMaxSDUSize = 0;
- packetDataQoSRecord->iGPRSMinAcceptableMaxSDUSize = 0;
- packetDataQoSRecord->iGPRSReqMaxUplinkRate = 0;
- packetDataQoSRecord->iGPRSReqMinUplinkRate = 0;
- packetDataQoSRecord->iGPRSReqMaxDownlinkRate = 0;
- packetDataQoSRecord->iGPRSReqMinDownlinkRate = 0;
- packetDataQoSRecord->iGPRSReqBER = RPacketQoS::EBERUnspecified;
- packetDataQoSRecord->iGPRSMaxBER = RPacketQoS::EBERUnspecified;
- packetDataQoSRecord->iGPRSReqSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
- packetDataQoSRecord->iGPRSMaxSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
- packetDataQoSRecord->iGPRSReqTrafficHandlingPriority =
- RPacketQoS::ETrafficPriorityUnspecified;
- packetDataQoSRecord->iGPRSMinTrafficHandlingPriority =
- RPacketQoS::ETrafficPriorityUnspecified;
- packetDataQoSRecord->iGPRSReqTransferDelay = 0;
- packetDataQoSRecord->iGPRSMaxTransferDelay = 0;
- packetDataQoSRecord->iGPRSReqGuaranteedUplinkRate = 0;
- packetDataQoSRecord->iGPRSMinGuaranteedUplinkRate = 0;
- packetDataQoSRecord->iGPRSReqGuaranteedDownlinkRate = 0;
- packetDataQoSRecord->iGPRSMinGuaranteedDownlinkRate = 0;
- packetDataQoSRecord->iGPRSSignallingIndication = EFalse;
- packetDataQoSRecord->iGPRS_ImCnSignallingIndication = EFalse;
- packetDataQoSRecord->iGPRSSourceStatisticsDescriptor =
- RPacketQoS::ESourceStatisticsDescriptorUnknown;
-
- aRecordArray.AppendL( static_cast<CommsDat::CCDRecordBase*>( packetDataQoSRecord ) );
- CleanupStack::Pop( packetDataQoSRecord );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETDEFAULTQOSRECORDL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerIntAttributeL
-// ---------------------------------------------------------------------------
-//
-TUint32 CCmPluginPacketData::GetBearerIntAttributeL(
- TUint32 aAttribute,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERINTATTRIBUTEL_ENTRY );
-
- TUint32 retVal( 0 );
-
- CCDWCDMAPacketServiceRecord* serviceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>( aGenRecordArray[KServiceRecordIndex] );
-
- if ( aAttribute < ECmCommonAttributesEnd ||
- ( aAttribute > ECmBearerCreationCommonAttributes &&
- aAttribute < ECmBearerCreationCommonAttributesEnd ) )
- {
- switch ( aAttribute )
- {
- case ECmBearerType:
- {
- retVal = iBearerType;
- }
- break;
- case ECmCommsDBBearerType:
- {
- retVal = KCommDbBearerWcdma;
- }
- break;
- case ECmDefaultUiPriority:
- {
- retVal = GetDefPriorityL( aAttribute );
- }
- break;
- case ECmDefaultPriority:
- {
- retVal = GetDefPriorityL( aAttribute );
- }
- break;
- case ECmExtensionLevel:
- {
- retVal = KExtensionBaseLevel;
- }
- break;
- case ECmInvalidAttribute:
- {
- // This attribute has been deprecated since Symbian^4.
- User::Leave( KErrNotSupported );
- }
- break;
- case ECmIFAuthRetries:
- {
- retVal = serviceRecord->iGPRSIfAuthRetries;
- }
- break;
- default:
- {
- User::Leave( KErrNotFound ); //TODO, check leave code, should it be KErrNotSupported ?
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINTATTRIBUTEL_EXIT );
- return retVal;
- }
-
- if ( aAttribute >= EPacketDataSpecificAttributes &&
- aAttribute < EPacketDataServiceEnableLLMNR )
- {
- retVal = GetServiceIntAttributeL( aAttribute, aGenRecordArray );
- }
- else if ( aAttribute >= EGPRSReqTrafficClass &&
- aAttribute <= EGPRSSourceStatisticsDescriptor )
- {
- retVal = GetQosIntAttributeL( aAttribute, aBearerSpecRecordArray );
- }
- else
- {
- User::Leave( KErrNotFound );
- }
-
- OstTraceFunctionExit0( DUP1_CCMPLUGINPACKETDATA_GETBEARERINTATTRIBUTEL_EXIT );
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetServiceIntAttributeL
-// ---------------------------------------------------------------------------
-//
-TUint32 CCmPluginPacketData::GetServiceIntAttributeL(
- TUint32 aAttribute,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETSERVICEINTATTRIBUTEL_ENTRY );
-
- TUint32 retVal( 0 );
-
- CCDWCDMAPacketServiceRecord* serviceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>( aGenRecordArray[KServiceRecordIndex] );
-
- switch ( aAttribute )
- {
- case EPacketDataPDPType:
- {
- retVal = serviceRecord->iGPRSPDPType;
- }
- break;
-
- case EPacketDataReqPrecedence:
- {
- retVal = serviceRecord->iGPRSReqPrecedence;
- }
- break;
-
- case EPacketDataReqDelay:
- {
- retVal = serviceRecord->iGPRSReqDelay;
- }
- break;
-
- case EPacketDataReliability:
- {
- retVal = serviceRecord->iGPRSReqReliability;
- }
- break;
-
- case EPacketDataPeakThroughput:
- {
- retVal = serviceRecord->iGPRSReqPeakThroughput;
- }
- break;
-
- case EPacketDataMeanThroughput:
- {
- retVal = serviceRecord->iGPRSMinMeanThroughput;
- }
- break;
-
- case EPacketDataMinPrecedence:
- {
- retVal = serviceRecord->iGPRSMinPrecedence;
- }
- break;
-
- case EPacketDataMinDelay:
- {
- retVal = serviceRecord->iGPRSMinDelay;
- }
- break;
-
- case EPacketDataMinReliability:
- {
- retVal = serviceRecord->iGPRSMinReliability;
- }
- break;
-
- case EPacketDataMinPeakThroughput:
- {
- retVal = serviceRecord->iGPRSMinPeakThroughput;
- }
- break;
-
- case EPacketDataMinMeanThroughput:
- {
- retVal = serviceRecord->iGPRSMinMeanThroughput;
- }
- break;
-
- case EPacketDataIFAuthRetries:
- {
- retVal = serviceRecord->iGPRSIfAuthRetries;
- }
- break;
-
- case EPacketDataApType:
- {
- retVal = serviceRecord->iGPRSAPType;
- }
- break;
-
- case EPacketDataQoSWarningTimeOut:
- {
- retVal = serviceRecord->iGPRSQOSWarningTimeOut;
- }
- break;
- default:
- {
- User::Leave( KErrNotFound );
- }
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETSERVICEINTATTRIBUTEL_EXIT );
-
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetQosIntAttributeL
-// ---------------------------------------------------------------------------
-//
-TUint32 CCmPluginPacketData::GetQosIntAttributeL(
- TUint32 aAttribute,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETQOSINTATTRIBUTEL_ENTRY );
-
- TUint32 retVal( 0 );
-
- CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- aBearerSpecRecordArray[KQosRecordIndex] );
-
- switch ( aAttribute )
- {
- case EGPRSReqTrafficClass:
- {
- retVal = qosRecord->iGPRSReqTrafficClass;
- }
- break;
-
- case EGPRSMinTrafficClass:
- {
- retVal = qosRecord->iGPRSMinTrafficClass;
- }
- break;
-
- case EGPRSReqDeliveryOrder:
- {
- retVal = qosRecord->iGPRSReqDeliveryOrder;
- }
- break;
-
- case GPRSMinDeliveryOrder:
- {
- retVal = qosRecord->iGPRSMinDeliveryOrder;
- }
- break;
- case EGPRSReqDeliverErroneousSDU:
- {
- retVal = qosRecord->iGPRSReqDeliverErroneousSDU;
- }
- break;
- case EGPRSMinDeliverErroneousSDU:
- {
- retVal = qosRecord->iGPRSMinDeliverErroneousSDU;
- }
- break;
- case EGPRSReqMaxSDUSize:
- {
- retVal = qosRecord->iGPRSReqMaxSDUSize;
- }
- break;
-
- case EGPRSMinAcceptableMaxSDUSize:
- {
- retVal = qosRecord->iGPRSMinAcceptableMaxSDUSize;
- }
- break;
-
- case EGPRSReqMaxUplinkRate:
- {
- retVal = qosRecord->iGPRSReqMaxUplinkRate;
- }
- break;
-
- case EGPRSReqMinUplinkRate:
- {
- retVal = qosRecord->iGPRSReqMinUplinkRate;
- }
- break;
-
- case EGPRSReqMaxDownlinkRate:
- {
- retVal = qosRecord->iGPRSReqMaxDownlinkRate;
- }
- break;
-
- case EGPRSReqMinDownlinkRate:
- {
- retVal = qosRecord->iGPRSReqMinDownlinkRate;
- }
- break;
-
- case EGPRSReqBER:
- {
- retVal = qosRecord->iGPRSReqBER;
- }
- break;
-
- case EGPRSMaxBER:
- {
- retVal = qosRecord->iGPRSMaxBER;
- }
- break;
-
- case EGPRSReqSDUErrorRatio:
- {
- retVal = qosRecord->iGPRSReqSDUErrorRatio;
- }
- break;
-
- case EGPRSMaxSDUErrorRatio:
- {
- retVal = qosRecord->iGPRSMaxSDUErrorRatio;
- }
- break;
-
- case EGPRSReqTrafficHandlingPriority:
- {
- retVal = qosRecord->iGPRSReqTrafficHandlingPriority;
- }
- break;
-
- case EGPRSMinTrafficHandlingPriority:
- {
- retVal = qosRecord->iGPRSMinTrafficHandlingPriority;
- }
- break;
-
- case EGPRSReqTransferDelay:
- {
- retVal = qosRecord->iGPRSReqTransferDelay;
- }
- break;
-
- case EGPRSMaxTransferDelay:
- {
- retVal = qosRecord->iGPRSMaxTransferDelay;
- }
- break;
-
- case EGPRSReqGuaranteedUplinkRate:
- {
- retVal = qosRecord->iGPRSReqGuaranteedUplinkRate;
- }
- break;
-
- case EGPRSMinGuaranteedUplinkRate:
- {
- retVal = qosRecord->iGPRSMinGuaranteedUplinkRate;
- }
- break;
-
- case EGPRSReqGuaranteedDownlinkRate:
- {
- retVal = qosRecord->iGPRSReqGuaranteedDownlinkRate;
- }
- break;
-
- case EGPRSMinGuaranteedDownlinkRate:
- {
- retVal = qosRecord->iGPRSMinGuaranteedDownlinkRate;
- }
- break;
-
- case EGPRSSourceStatisticsDescriptor:
- {
- retVal = qosRecord->iGPRSSourceStatisticsDescriptor;
- }
- break;
-
- default:
- {
- User::Leave( KErrNotFound );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETQOSINTATTRIBUTEL_EXIT );
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerBoolAttributeL
-// ---------------------------------------------------------------------------
-//
-TBool CCmPluginPacketData::GetBearerBoolAttributeL( TUint32 aAttribute,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERBOOLATTRIBUTEL_ENTRY );
-
- TBool retVal( EFalse );
-
- switch ( aAttribute )
- {
- case EPacketDataOutGoing:
- {
- retVal = iOutgoing;
- }
- break;
- case ECmCoverage:
- {
-#ifndef __WINS__
- CCmPDCoverageCheck* coverage = new( ELeave ) CCmPDCoverageCheck;
- CleanupStack::PushL( coverage );
-
- retVal = coverage->IsThereCoverageL();
-
- CleanupStack::PopAndDestroy( coverage );
-#else
- retVal = ETrue;
-#endif
- }
- break;
- case ECmDestination:
- {
- retVal = EFalse;
- }
- break;
- case ECmBearerHasUi:
- {
- retVal = ETrue;
- }
- break;
- case ECmIPv6Supported:
- {
- retVal = FeatureManager::FeatureSupported( KFeatureIdIPv6 );
- }
- break;
- case EPacketDataDataCompression:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSDataCompression;
- }
- break;
- case EPacketDataHeaderCompression:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSHeaderCompression;
- }
- break;
- case EPacketDataUseEdge:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSUseEdge;
- }
- break;
- case EPacketDataAnonymousAccess:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSAnonymousAccess;
- }
- break;
- case ECmIFPromptForAuth:
- case EPacketDataIFPromptForAuth:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSIfPromptForAuth;
- }
- break;
- case ECmIPAddFromServer:
- case EPacketDataIPAddrFromServer:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSIPAddrFromServer;
- }
- break;
- case ECmIPDNSAddrFromServer:
- case EPacketDataIPDNSAddrFromServer:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSIPDNSAddrFromServer;
- }
- break;
- case ECmIP6DNSAddrFromServer:
- case EPacketDataIPIP6DNSAddrFromServer:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSIP6DNSAddrFromServer;
- }
- break;
- case ECmEnableLPCExtension:
- case EPacketDataEnableLcpExtension:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSEnableLCPExtension;
- }
- break;
- case EPacketDataServiceEnableLLMNR:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iServiceEnableLlmnr;
- }
- break;
- case ECmDisablePlainTextAuth:
- case EPacketDataDisablePlainTextAuth:
- {
- retVal = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] )->iGPRSDisablePlainTextAuth;
- }
- break;
- case EGPRSSignallingIndication:
- {
- retVal = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- aBearerSpecRecordArray[KQosRecordIndex] )->iGPRSSignallingIndication;
- }
- break;
- case EGPRS_ImCnSignallingIndication:
- {
- retVal = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- aBearerSpecRecordArray[KQosRecordIndex] )->iGPRS_ImCnSignallingIndication;
- }
- break;
- default:
- {
- User::Leave( KErrNotFound );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERBOOLATTRIBUTEL_EXIT );
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerStringAttributeL
-// ---------------------------------------------------------------------------
-//
-HBufC* CCmPluginPacketData::GetBearerStringAttributeL( TUint32 aAttribute,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& /*aBearerSpecRecordArray*/ )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERSTRINGATTRIBUTEL_ENTRY );
-
- HBufC* retVal( NULL );
- if ( ( aAttribute > EPacketDataSpecificAttributes && aAttribute < EGPRSReqTrafficClass ) ||
- ( aAttribute > ECmCommonAttributesStart && aAttribute < ECmCommonAttributesEnd ) )
- {
- retVal = GetServiceStringAttributeL( aAttribute, aGenRecordArray );
- }
- else
- {
- User::Leave( KErrNotSupported );
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERSTRINGATTRIBUTEL_EXIT );
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetServiceStringAttributeL
-// ---------------------------------------------------------------------------
-//
-HBufC* CCmPluginPacketData::GetServiceStringAttributeL(
- TUint32 aAttribute,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETSERVICESTRINGATTRIBUTEL_ENTRY );
-
- HBufC* retVal = NULL;
-
- CCDWCDMAPacketServiceRecord* serviceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>( aGenRecordArray[KServiceRecordIndex] );
- switch ( aAttribute )
- {
- case ECmIFName:
- case EPacketDataAPName:
- {
- retVal = TPtrC( serviceRecord->iGPRSAPN ).AllocL();
- }
- break;
- case EPacketDataPDPAddress:
- {
- retVal = TPtrC( serviceRecord->iGPRSPDPAddress ).AllocL();
- }
- break;
- case ECmIFParams:
- case EPacketDataIFParams:
- {
- retVal = TPtrC( serviceRecord->iGPRSIfParams ).AllocL();
- }
- break;
- case ECmIFNetworks:
- case EPacketDataIFNetworks:
- {
- retVal = TPtrC( serviceRecord->iGPRSIfNetworks ).AllocL();
- }
- break;
- case ECmIFAuthName:
- case EPacketDataIFAuthName:
- {
- retVal = TPtrC( serviceRecord->iGPRSIfAuthName ).AllocL();
- }
- break;
- case ECmIFAuthPass:
- case EPacketDataIFAuthPass:
- {
- retVal = TPtrC( serviceRecord->iGPRSIfAuthPass ).AllocL();
- }
- break;
- case ECmIPNetmask:
- case EPacketDataIPNetmask:
- {
- retVal = TPtrC( serviceRecord->iGPRSIPNetMask ).AllocL();
- }
- break;
- case ECmIPGateway:
- case EPacketDataIPGateway:
- {
- retVal = TPtrC( serviceRecord->iGPRSIPGateway ).AllocL();
- }
- break;
- case ECmIPAddress:
- case EPacketDataIPAddr:
- {
- retVal = TPtrC( serviceRecord->iGPRSIPAddr ).AllocL();
- }
- break;
- case ECmIPNameServer1:
- case EPacketDataIPNameServer1:
- {
- retVal = TPtrC( serviceRecord->iGPRSIPNameServer1 ).AllocL();
- }
- break;
- case ECmIPNameServer2:
- case EPacketDataIPNameServer2:
- {
- retVal = TPtrC( serviceRecord->iGPRSIPNameServer2 ).AllocL();
- }
- break;
- case ECmIP6NameServer1:
- case EPacketDataIPIP6NameServer1:
- {
- retVal = TPtrC( serviceRecord->iGPRSIP6NameServer1 ).AllocL();
- }
- break;
- case ECmIP6NameServer2:
- case EPacketDataIPIP6NameServer2:
- {
- retVal = TPtrC( serviceRecord->iGPRSIP6NameServer2 ).AllocL();
- }
- break;
- case ECmIPAddrLeaseValidFrom:
- case EPacketDataIPAddrLeaseValidFrom:
- {
- retVal = TPtrC( serviceRecord->iGPRSIPAddrLeaseValidFrom ).AllocL();
- }
- break;
- case ECmIPAddrLeaseValidTo:
- case EPacketDataIPAddrLeaseValidTo:
- {
- retVal = TPtrC( serviceRecord->iGPRSIPAddrLeaseValidTo ).AllocL();
- }
- break;
- case ECmConfigDaemonManagerName:
- case EPacketDataConfigDaemonManagerName:
- {
- retVal = TPtrC( serviceRecord->iGPRSConfigDaemonManagerName ).AllocL();
- }
- break;
- case ECmConfigDaemonName:
- case EPacketDataConfigDaemonName:
- {
- retVal = TPtrC( serviceRecord->iGPRSConfigDaemonName ).AllocL();
- }
- break;
-
- default:
- {
- User::Leave( KErrNotFound );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETSERVICESTRINGATTRIBUTEL_EXIT );
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerString8AttributeL
-// ---------------------------------------------------------------------------
-//
-HBufC8* CCmPluginPacketData::GetBearerString8AttributeL( TUint32 /*aAttribute*/,
- RPointerArray<CommsDat::CCDRecordBase>& /*aGenRecordArray*/,
- RPointerArray<CommsDat::CCDRecordBase>& /*aBearerSpecRecordArray*/ )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERSTRING8ATTRIBUTEL_ENTRY );
-
- User::Leave( KErrNotSupported );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERSTRING8ATTRIBUTEL_EXIT );
- return NULL;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::SetBearerIntAttributeL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::SetBearerIntAttributeL(
- TUint32 aAttribute,
- TUint32 aValue,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETBEARERINTATTRIBUTEL_ENTRY );
-
- if ( aAttribute >= EPacketDataSpecificAttributes && aAttribute < EPacketDataServiceEnableLLMNR )
- {
- SetServiceIntAttributeL( aAttribute, aValue, aGenRecordArray );
- }
- else if ( aAttribute >= EGPRSReqTrafficClass && aAttribute <= EGPRSSourceStatisticsDescriptor )
- {
- SetQosIntAttributeL( aAttribute, aValue, aBearerSpecRecordArray );
- }
- else
- {
- User::Leave( KErrNotFound );
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETBEARERINTATTRIBUTEL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::SetServiceIntAttributeL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::SetServiceIntAttributeL(
- TUint32 aAttribute,
- TUint32 aValue,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETSERVICEINTATTRIBUTEL_ENTRY );
-
- CCDWCDMAPacketServiceRecord* serviceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] );
-
- switch ( aAttribute )
- {
- case EPacketDataPDPType:
- {
- SetPDPTypeL( static_cast<RPacketContext::TProtocolType>( aValue ),
- serviceRecord );
- }
- break;
-
- case EPacketDataReqPrecedence:
- {
- serviceRecord->iGPRSReqPrecedence.SetL( aValue );
- }
- break;
-
- case EPacketDataReqDelay:
- {
- serviceRecord->iGPRSReqDelay.SetL( aValue );
- }
- break;
-
- case EPacketDataReliability:
- {
- serviceRecord->iGPRSReqReliability.SetL( aValue );
- }
- break;
-
- case EPacketDataPeakThroughput:
- {
- serviceRecord->iGPRSReqPeakThroughput.SetL( aValue );
- }
- break;
-
- case EPacketDataMeanThroughput:
- {
- serviceRecord->iGPRSMinMeanThroughput.SetL( aValue );
- }
- break;
-
- case EPacketDataMinPrecedence:
- {
- serviceRecord->iGPRSMinPrecedence.SetL( aValue );
- }
- break;
-
- case EPacketDataMinDelay:
- {
- serviceRecord->iGPRSMinDelay.SetL( aValue );
- }
- break;
-
- case EPacketDataMinReliability:
- {
- serviceRecord->iGPRSMinReliability.SetL( aValue );
- }
- break;
-
- case EPacketDataMinPeakThroughput:
- {
- serviceRecord->iGPRSMinPeakThroughput.SetL( aValue );
- }
- break;
-
- case EPacketDataMinMeanThroughput:
- {
- serviceRecord->iGPRSMinMeanThroughput.SetL( aValue );
- }
- break;
-
- case EPacketDataIFAuthRetries:
- {
- serviceRecord->iGPRSIfAuthRetries.SetL( aValue );
- }
- break;
-
- case EPacketDataApType:
- {
- serviceRecord->iGPRSAPType.SetL( aValue );
- }
- break;
-
- case EPacketDataQoSWarningTimeOut:
- {
- serviceRecord->iGPRSQOSWarningTimeOut.SetL( aValue );
- }
- break;
- default:
- {
- User::Leave( KErrNotFound );
- }
- }
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETSERVICEINTATTRIBUTEL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::SetQosIntAttributeL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::SetQosIntAttributeL(
- TUint32 aAttribute,
- TUint32 aValue,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETQOSINTATTRIBUTEL_ENTRY );
-
- CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- aBearerSpecRecordArray[KQosRecordIndex] );
-
- switch ( aAttribute )
- {
- case EGPRSReqTrafficClass:
- {
- qosRecord->iGPRSReqTrafficClass.SetL(
- static_cast<RPacketQoS::TTrafficClass>( aValue ) );
- }
- break;
-
- case EGPRSMinTrafficClass:
- {
- qosRecord->iGPRSMinTrafficClass.SetL(
- static_cast<RPacketQoS::TTrafficClass>( aValue ) );
- }
- break;
-
- case EGPRSReqDeliveryOrder:
- {
- qosRecord->iGPRSReqDeliveryOrder.SetL(
- static_cast<RPacketQoS::TDeliveryOrder>( aValue ) );
- }
- break;
-
- case GPRSMinDeliveryOrder:
- {
- qosRecord->iGPRSMinDeliveryOrder.SetL(
- static_cast<RPacketQoS::TDeliveryOrder>( aValue ) );
- }
- break;
- case EGPRSReqDeliverErroneousSDU:
- {
- qosRecord->iGPRSReqDeliverErroneousSDU.SetL(
- static_cast<RPacketQoS::TErroneousSDUDelivery>( aValue ) );
- }
- break;
- case EGPRSMinDeliverErroneousSDU:
- {
- qosRecord->iGPRSMinDeliverErroneousSDU.SetL(
- static_cast<RPacketQoS::TErroneousSDUDelivery>( aValue ) );
- }
- break;
- case EGPRSReqMaxSDUSize:
- {
- qosRecord->iGPRSReqMaxSDUSize.SetL( aValue );
- }
- break;
-
- case EGPRSMinAcceptableMaxSDUSize:
- {
- qosRecord->iGPRSMinAcceptableMaxSDUSize.SetL( aValue );
- }
- break;
-
- case EGPRSReqMaxUplinkRate:
- {
- qosRecord->iGPRSReqMaxUplinkRate.SetL( aValue );
- }
- break;
-
- case EGPRSReqMinUplinkRate:
- {
- qosRecord->iGPRSReqMinUplinkRate.SetL( aValue );
- }
- break;
-
- case EGPRSReqMaxDownlinkRate:
- {
- qosRecord->iGPRSReqMaxDownlinkRate.SetL( aValue );
- }
- break;
-
- case EGPRSReqMinDownlinkRate:
- {
- qosRecord->iGPRSReqMinDownlinkRate.SetL( aValue );
- }
- break;
-
- case EGPRSReqBER:
- {
- qosRecord->iGPRSReqBER.SetL(
- static_cast<RPacketQoS::TBitErrorRatio>( aValue ) );
- }
- break;
-
- case EGPRSMaxBER:
- {
- qosRecord->iGPRSMaxBER.SetL(
- static_cast<RPacketQoS::TBitErrorRatio>( aValue ) );
- }
- break;
-
- case EGPRSReqSDUErrorRatio:
- {
- qosRecord->iGPRSReqSDUErrorRatio.SetL(
- static_cast<RPacketQoS::TSDUErrorRatio>( aValue ) );
- }
- break;
-
- case EGPRSMaxSDUErrorRatio:
- {
- qosRecord->iGPRSMaxSDUErrorRatio.SetL(
- static_cast<RPacketQoS::TSDUErrorRatio>( aValue ) );
- }
- break;
-
- case EGPRSReqTrafficHandlingPriority:
- {
- qosRecord->iGPRSReqTrafficHandlingPriority.SetL(
- static_cast<RPacketQoS::TTrafficHandlingPriority>( aValue ) );
- }
- break;
-
- case EGPRSMinTrafficHandlingPriority:
- {
- qosRecord->iGPRSMinTrafficHandlingPriority.SetL(
- static_cast<RPacketQoS::TTrafficHandlingPriority>( aValue ) );
- }
- break;
-
- case EGPRSReqTransferDelay:
- {
- qosRecord->iGPRSReqTransferDelay.SetL( aValue );
- }
- break;
-
- case EGPRSMaxTransferDelay:
- {
- qosRecord->iGPRSMaxTransferDelay.SetL( aValue );
- }
- break;
-
- case EGPRSReqGuaranteedUplinkRate:
- {
- qosRecord->iGPRSReqGuaranteedUplinkRate.SetL( aValue );
- }
- break;
-
- case EGPRSMinGuaranteedUplinkRate:
- {
- qosRecord->iGPRSMinGuaranteedUplinkRate.SetL( aValue );
- }
- break;
-
- case EGPRSReqGuaranteedDownlinkRate:
- {
- qosRecord->iGPRSReqGuaranteedDownlinkRate.SetL( aValue );
- }
- break;
-
- case EGPRSMinGuaranteedDownlinkRate:
- {
- qosRecord->iGPRSMinGuaranteedDownlinkRate.SetL( aValue );
- }
- break;
-
- case EGPRSSourceStatisticsDescriptor:
- {
- qosRecord->iGPRSSourceStatisticsDescriptor.SetL(
- static_cast<RPacketQoS::TSourceStatisticsDescriptor>( aValue ) );
- }
- break;
-
- default:
- {
- User::Leave( KErrNotFound );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETQOSINTATTRIBUTEL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::SetBearerBoolAttributeL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::SetBearerBoolAttributeL(
- TUint32 aAttribute,
- TBool aValue,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETBEARERBOOLATTRIBUTEL_ENTRY );
-
- CCDWCDMAPacketServiceRecord* serviceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] );
-
- switch ( aAttribute )
- {
- case EPacketDataOutGoing:
- {
- iOutgoing = aValue;
- }
- break;
- case EPacketDataDataCompression:
- {
- serviceRecord->iGPRSDataCompression.SetL( aValue );
- }
- break;
- case EPacketDataHeaderCompression:
- {
- serviceRecord->iGPRSHeaderCompression.SetL( aValue );
- }
- break;
- case EPacketDataUseEdge:
- {
- serviceRecord->iGPRSUseEdge.SetL( aValue );
- }
- break;
- case EPacketDataAnonymousAccess:
- {
- serviceRecord->iGPRSAnonymousAccess.SetL( aValue );
- }
- break;
- case ECmIFPromptForAuth:
- case EPacketDataIFPromptForAuth:
- {
- serviceRecord->iGPRSIfPromptForAuth.SetL( aValue );
- }
- break;
- case ECmIPAddFromServer:
- case EPacketDataIPAddrFromServer:
- {
- serviceRecord->iGPRSIPAddrFromServer.SetL( aValue );
- }
- break;
- case ECmIPDNSAddrFromServer:
- case EPacketDataIPDNSAddrFromServer:
- {
- serviceRecord->iGPRSIPDNSAddrFromServer.SetL( aValue );
- }
- break;
- case ECmIP6DNSAddrFromServer:
- case EPacketDataIPIP6DNSAddrFromServer:
- {
- serviceRecord->iGPRSIP6DNSAddrFromServer.SetL( aValue );
- }
- break;
- case ECmEnableLPCExtension:
- case EPacketDataEnableLcpExtension:
- {
- serviceRecord->iGPRSEnableLCPExtension.SetL( aValue );
- }
- break;
- case ECmDisablePlainTextAuth:
- case EPacketDataDisablePlainTextAuth:
- {
- serviceRecord->iGPRSDisablePlainTextAuth.SetL( aValue );
- }
- break;
- case EGPRSSignallingIndication:
- {
- static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- aBearerSpecRecordArray[KQosRecordIndex] )
- ->iGPRSSignallingIndication.SetL( aValue );
- }
- break;
- case EGPRS_ImCnSignallingIndication:
- {
- static_cast<CCDUmtsR99QoSAndOnTableRecord*>
- ( aBearerSpecRecordArray[KQosRecordIndex] )
- ->iGPRS_ImCnSignallingIndication.SetL( aValue );
- }
- break;
- case EPacketDataServiceEnableLLMNR:
- {
- serviceRecord->iServiceEnableLlmnr.SetL( aValue );
- }
- break;
- default:
- {
- User::Leave( KErrNotFound );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETBEARERBOOLATTRIBUTEL_EXIT );
- }
-
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::SetBearerStringAttributeL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::SetBearerStringAttributeL(
- TUint32 aAttribute,
- const TDesC16& aValue,
- RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
- RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETBEARERSTRINGATTRIBUTEL_ENTRY );
-
- CCDWCDMAPacketServiceRecord* serviceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>(
- aGenRecordArray[KServiceRecordIndex] );
-
- switch ( aAttribute )
- {
- case EPacketDataAPName:
- {
- serviceRecord->iGPRSAPN.SetL( aValue );
- }
- break;
-
- case EPacketDataPDPAddress:
- {
- serviceRecord->iGPRSPDPAddress.SetL( aValue );
- }
- break;
-
- case ECmIFParams:
- case EPacketDataIFParams:
- {
- serviceRecord->iGPRSIfParams.SetL( aValue );
- }
- break;
-
- case ECmIFNetworks:
- case EPacketDataIFNetworks:
- {
- serviceRecord->iGPRSIfNetworks.SetL( aValue );
- }
- break;
-
- case ECmIFAuthName:
- case EPacketDataIFAuthName:
- {
- serviceRecord->iGPRSIfAuthName.SetL( aValue );
- }
- break;
-
- case ECmIFAuthPass:
- case EPacketDataIFAuthPass:
- {
- serviceRecord->iGPRSIfAuthPass.SetL( aValue );
- }
- break;
-
- case ECmIPNetmask:
- case EPacketDataIPNetmask:
- {
- serviceRecord->iGPRSIPNetMask.SetL( aValue );
- }
- break;
-
- case ECmIPGateway:
- case EPacketDataIPGateway:
- {
- serviceRecord->iGPRSIPGateway.SetL( aValue );
- }
- break;
-
- case ECmIPAddress:
- case EPacketDataIPAddr:
- {
- if ( ( aValue.Compare( KUnspecifiedIPv4 ) == 0 ) ||
- ( aValue.Compare( KNullDesC ) == 0 ) )
- {
- // If unspecified or NULL address is set dynamic
- // IP must be enabled.
- SetBearerBoolAttributeL( ECmIPAddFromServer,
- ETrue,
- aGenRecordArray,
- aBearerSpecRecordArray );
- }
- else
- {
- // If valid address is set dynamic IP is disabled.
- SetBearerBoolAttributeL( ECmIPAddFromServer,
- EFalse,
- aGenRecordArray,
- aBearerSpecRecordArray );
- }
- serviceRecord->iGPRSIPAddr.SetL( aValue );
- }
- break;
-
- case ECmIPNameServer1:
- case EPacketDataIPNameServer1:
- {
- serviceRecord->iGPRSIPNameServer1.SetL( aValue );
- }
- break;
-
- case ECmIPNameServer2:
- case EPacketDataIPNameServer2:
- {
- serviceRecord->iGPRSIPNameServer2.SetL( aValue );
- }
- break;
-
- case ECmIP6NameServer1:
- case EPacketDataIPIP6NameServer1:
- {
- serviceRecord->iGPRSIP6NameServer1.SetL( aValue );
- }
- break;
-
- case ECmIP6NameServer2:
- case EPacketDataIPIP6NameServer2:
- {
- serviceRecord->iGPRSIP6NameServer2.SetL( aValue );
- }
- break;
-
- case ECmIPAddrLeaseValidFrom:
- case EPacketDataIPAddrLeaseValidFrom:
- {
- serviceRecord->iGPRSIPAddrLeaseValidFrom.SetL( aValue );
- }
- break;
-
- case ECmIPAddrLeaseValidTo:
- case EPacketDataIPAddrLeaseValidTo:
- {
- serviceRecord->iGPRSIPAddrLeaseValidTo.SetL( aValue );
- }
- break;
-
- case ECmConfigDaemonManagerName:
- case EPacketDataConfigDaemonManagerName:
- {
- serviceRecord->iGPRSConfigDaemonManagerName.SetL( aValue );
- }
- break;
-
- case ECmConfigDaemonName:
- case EPacketDataConfigDaemonName:
- {
- serviceRecord->iGPRSConfigDaemonName.SetL( aValue );
- }
- break;
-
- default:
- {
- User::Leave( KErrNotSupported );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETBEARERSTRINGATTRIBUTEL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::SetBearerString8AttributeL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::SetBearerString8AttributeL(
- TUint32 /*aAttribute*/,
- const TDesC8& /*aValue*/,
- RPointerArray<CommsDat::CCDRecordBase>& /*aGenRecordArray*/,
- RPointerArray<CommsDat::CCDRecordBase>& /*aBearerSpecRecordArray*/ )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETBEARERSTRING8ATTRIBUTEL_ENTRY );
-
- User::Leave( KErrNotSupported );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETBEARERSTRING8ATTRIBUTEL_EXIT );
- return;
- }
-
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerInfoIntL
-// ---------------------------------------------------------------------------
-//
-TUint32 CCmPluginPacketData::GetBearerInfoIntL( TUint32 aAttribute ) const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERINFOINTL_ENTRY );
-
- TUint32 retVal( 0 );
- switch ( aAttribute )
- {
- case ECmBearerType:
- {
- retVal = iBearerType;
- }
- break;
- case ECmCommsDBBearerType:
- {
- retVal = KCommDbBearerWcdma;
- }
- break;
- case ECmDefaultUiPriority:
- {
- retVal = GetDefPriorityL( aAttribute );
- }
- break;
- case ECmDefaultPriority:
- {
- retVal = GetDefPriorityL( aAttribute );
- }
- break;
- case ECmExtensionLevel:
- {
- retVal = KExtensionBaseLevel;
- }
- break;
-
- default:
- {
- User::Leave( KErrNotSupported );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOINTL_EXIT );
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerInfoBoolL
-// ---------------------------------------------------------------------------
-//
-TBool CCmPluginPacketData::GetBearerInfoBoolL( TUint32 aAttribute ) const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERINFOBOOLL_ENTRY );
-
- TBool retVal( EFalse );
- switch ( aAttribute )
- {
- case ECmCoverage:
- {
-#ifndef __WINS__
- CCmPDCoverageCheck* coverage = new (ELeave) CCmPDCoverageCheck;
- CleanupStack::PushL( coverage );
-
- retVal = coverage->IsThereCoverageL();
-
- CleanupStack::PopAndDestroy( coverage );
-#else
- retVal = ETrue;
-#endif
- }
- break;
- case ECmDestination:
- {
- retVal = EFalse;
- }
- break;
- case ECmBearerHasUi:
- {
- retVal = EFalse;
- }
- break;
- case ECmIPv6Supported:
- {
- retVal = FeatureManager::FeatureSupported( KFeatureIdIPv6 );
- }
- break;
- case ECmVirtual:
- {
- retVal = EFalse;
- }
- break;
-
- default:
- {
- User::Leave( KErrNotSupported );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOBOOLL_EXIT );
- return retVal;
- }
-
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerInfoStringL
-// ---------------------------------------------------------------------------
-//
-HBufC* CCmPluginPacketData::GetBearerInfoStringL( TUint32 aAttribute ) const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERINFOSTRINGL_ENTRY );
-
- HBufC* retVal( NULL );
- switch ( aAttribute )
- {
- default:
- {
- User::Leave( KErrNotSupported );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOSTRINGL_EXIT );
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerInfoString8L
-// ---------------------------------------------------------------------------
-//
-HBufC8* CCmPluginPacketData::GetBearerInfoString8L( TUint32 aAttribute ) const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERINFOSTRING8L_ENTRY );
-
- HBufC8* retVal( NULL );
- switch ( aAttribute )
- {
- default:
- {
- User::Leave( KErrNotSupported );
- }
- break;
- }
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOSTRING8L_EXIT );
- return retVal;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::PrepareToCopyDataL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::PrepareToCopyDataL( CCmPluginBaseEng* aCopyInstance )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_PREPARETOCOPYDATAL_ENTRY );
-
- CCmPluginPacketData* plugin = static_cast<CCmPluginPacketData*>( aCopyInstance );
- plugin->iOutgoing = iOutgoing;
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_PREPARETOCOPYDATAL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::CopyServiceRecordL
-// ---------------------------------------------------------------------------
-//
-CommsDat::CCDRecordBase* CCmPluginPacketData::CopyServiceRecordL()
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_COPYSERVICERECORDL_ENTRY );
-
- // New service record to be returned.
- CCDRecordBase* serviceRecord = NULL;
- if ( iOutgoing )
- {
- serviceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
- }
- else
- {
- serviceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdIncomingGprsRecord ) );
- }
- CleanupStack::PushL( serviceRecord );
-
- CCDWCDMAPacketServiceRecord* tempServiceRecordPtrToNew =
- static_cast<CCDWCDMAPacketServiceRecord*>( serviceRecord );
-
- // CommsDat version of service record.
- CCDWCDMAPacketServiceRecord* origServiceRecord =
- static_cast<CCDWCDMAPacketServiceRecord*>( iServiceRecord );
-
- if ( !origServiceRecord->iRecordTag.IsNull() )
- {
- tempServiceRecordPtrToNew->iRecordTag.SetL(
- origServiceRecord->iRecordTag );
- }
- if ( !origServiceRecord->iRecordName.IsNull() )
- {
- tempServiceRecordPtrToNew->iRecordName.SetL(
- origServiceRecord->iRecordName );
- }
-
- if ( !origServiceRecord->iServiceEnableLlmnr.IsNull() )
- {
- tempServiceRecordPtrToNew->iServiceEnableLlmnr.SetL(
- origServiceRecord->iServiceEnableLlmnr );
- }
-
- if ( !origServiceRecord->iGPRSAPN.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSAPN.SetL(
- origServiceRecord->iGPRSAPN );
- }
- if ( !origServiceRecord->iGPRSPDPType.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSPDPType.SetL(
- origServiceRecord->iGPRSPDPType );
- }
- if ( !origServiceRecord->iGPRSPDPAddress.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSPDPAddress.SetL(
- origServiceRecord->iGPRSPDPAddress );
- }
- if ( !origServiceRecord->iGPRSReqPrecedence.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSReqPrecedence.SetL(
- origServiceRecord->iGPRSReqPrecedence );
- }
- if ( !origServiceRecord->iGPRSReqDelay.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSReqDelay.SetL(
- origServiceRecord->iGPRSReqDelay );
- }
- if ( !origServiceRecord->iGPRSReqReliability.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSReqReliability.SetL(
- origServiceRecord->iGPRSReqReliability );
- }
- if ( !origServiceRecord->iGPRSReqPeakThroughput.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSReqPeakThroughput.SetL(
- origServiceRecord->iGPRSReqPeakThroughput );
- }
- if ( !origServiceRecord->iGPRSReqMeanThroughput.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSReqMeanThroughput.SetL(
- origServiceRecord->iGPRSReqMeanThroughput );
- }
- if ( !origServiceRecord->iGPRSMinPrecedence.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSMinPrecedence.SetL(
- origServiceRecord->iGPRSMinPrecedence );
- }
- if ( !origServiceRecord->iGPRSMinDelay.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSMinDelay.SetL(
- origServiceRecord->iGPRSMinDelay );
- }
- if ( !origServiceRecord->iGPRSMinReliability.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSMinReliability.SetL(
- origServiceRecord->iGPRSMinReliability );
- }
- if ( !origServiceRecord->iGPRSMinPeakThroughput.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSMinPeakThroughput.SetL(
- origServiceRecord->iGPRSMinPeakThroughput );
- }
- if ( !origServiceRecord->iGPRSMinMeanThroughput.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSMinMeanThroughput.SetL(
- origServiceRecord->iGPRSMinMeanThroughput );
- }
- if ( !origServiceRecord->iGPRSDataCompression.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSDataCompression.SetL(
- origServiceRecord->iGPRSDataCompression );
- }
- if ( !origServiceRecord->iGPRSHeaderCompression.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSHeaderCompression.SetL(
- origServiceRecord->iGPRSHeaderCompression );
- }
- if ( !origServiceRecord->iGPRSUseEdge.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSUseEdge.SetL(
- origServiceRecord->iGPRSUseEdge );
- }
- if ( !origServiceRecord->iGPRSAnonymousAccess.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSAnonymousAccess.SetL(
- origServiceRecord->iGPRSAnonymousAccess );
- }
- if ( !origServiceRecord->iGPRSIfParams.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIfParams.SetL(
- origServiceRecord->iGPRSIfParams );
- }
- if ( !origServiceRecord->iGPRSIfNetworks.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIfNetworks.SetL(
- origServiceRecord->iGPRSIfNetworks );
- }
- if ( !origServiceRecord->iGPRSIfPromptForAuth.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIfPromptForAuth.SetL(
- origServiceRecord->iGPRSIfPromptForAuth );
- }
- if ( !origServiceRecord->iGPRSIfAuthName.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIfAuthName.SetL(
- origServiceRecord->iGPRSIfAuthName );
- }
- if ( !origServiceRecord->iGPRSIfAuthPass.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIfAuthPass.SetL(
- origServiceRecord->iGPRSIfAuthPass );
- }
- if ( !origServiceRecord->iGPRSIfAuthRetries.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIfAuthRetries.SetL(
- origServiceRecord->iGPRSIfAuthRetries );
- }
- if ( !origServiceRecord->iGPRSIPNetMask.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPNetMask.SetL(
- origServiceRecord->iGPRSIPNetMask );
- }
- if ( !origServiceRecord->iGPRSIPGateway.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPGateway.SetL(
- origServiceRecord->iGPRSIPGateway );
- }
- if ( !origServiceRecord->iGPRSIPAddrFromServer.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPAddrFromServer.SetL(
- origServiceRecord->iGPRSIPAddrFromServer );
- }
- if ( !origServiceRecord->iGPRSIPAddr.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPAddr.SetL(
- origServiceRecord->iGPRSIPAddr );
- }
- if ( !origServiceRecord->iGPRSIPDNSAddrFromServer.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPDNSAddrFromServer.SetL(
- origServiceRecord->iGPRSIPDNSAddrFromServer );
- }
- if ( !origServiceRecord->iGPRSIPNameServer1.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPNameServer1.SetL(
- origServiceRecord->iGPRSIPNameServer1 );
- }
- if ( !origServiceRecord->iGPRSIPNameServer2.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPNameServer2.SetL(
- origServiceRecord->iGPRSIPNameServer2 );
- }
- if ( !origServiceRecord->iGPRSIP6DNSAddrFromServer.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIP6DNSAddrFromServer.SetL(
- origServiceRecord->iGPRSIP6DNSAddrFromServer );
- }
- if ( !origServiceRecord->iGPRSIP6NameServer1.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIP6NameServer1.SetL(
- origServiceRecord->iGPRSIP6NameServer1 );
- }
- if ( !origServiceRecord->iGPRSIP6NameServer2.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIP6NameServer2.SetL(
- origServiceRecord->iGPRSIP6NameServer2 );
- }
- if ( !origServiceRecord->iGPRSIPAddrLeaseValidFrom.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPAddrLeaseValidFrom.SetL(
- origServiceRecord->iGPRSIPAddrLeaseValidFrom );
- }
- if ( !origServiceRecord->iGPRSIPAddrLeaseValidTo.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSIPAddrLeaseValidTo.SetL(
- origServiceRecord->iGPRSIPAddrLeaseValidTo );
- }
- if ( !origServiceRecord->iGPRSConfigDaemonManagerName.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSConfigDaemonManagerName.SetL(
- origServiceRecord->iGPRSConfigDaemonManagerName );
- }
- if ( !origServiceRecord->iGPRSConfigDaemonName.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSConfigDaemonName.SetL(
- origServiceRecord->iGPRSConfigDaemonName );
- }
- if ( !origServiceRecord->iGPRSEnableLCPExtension.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSEnableLCPExtension.SetL(
- origServiceRecord->iGPRSEnableLCPExtension );
- }
- if ( !origServiceRecord->iGPRSDisablePlainTextAuth.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSDisablePlainTextAuth.SetL(
- origServiceRecord->iGPRSDisablePlainTextAuth );
- }
- if ( !origServiceRecord->iGPRSAPType.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSAPType.SetL(
- origServiceRecord->iGPRSAPType );
- }
- if ( !origServiceRecord->iGPRSQOSWarningTimeOut.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSQOSWarningTimeOut.SetL(
- origServiceRecord->iGPRSQOSWarningTimeOut );
- }
- if ( !origServiceRecord->iUmtsR99QoSAndOnTable.IsNull() )
- {
- tempServiceRecordPtrToNew->iUmtsR99QoSAndOnTable.SetL(
- origServiceRecord->iUmtsR99QoSAndOnTable );
- }
- if ( !origServiceRecord->iGPRSR5DataCompression.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSR5DataCompression.SetL(
- origServiceRecord->iGPRSR5DataCompression );
- }
- if ( !origServiceRecord->iGPRSR5HeaderCompression.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSR5HeaderCompression.SetL(
- origServiceRecord->iGPRSR5HeaderCompression );
- }
- if ( !origServiceRecord->iGPRSPacketFlowIdentifier.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSPacketFlowIdentifier.SetL(
- origServiceRecord->iGPRSPacketFlowIdentifier );
- }
- if ( !origServiceRecord->iGPRSUmtsGprsRelease.IsNull() )
- {
- tempServiceRecordPtrToNew->iGPRSUmtsGprsRelease.SetL(
- origServiceRecord->iGPRSUmtsGprsRelease );
- }
-
- CleanupStack::Pop( serviceRecord );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_COPYSERVICERECORDL_EXIT );
- return serviceRecord;
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::ResetBearerRecords
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::ResetBearerRecords()
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_RESETBEARERRECORDS_ENTRY );
-
- delete iPacketDataQoSRecord;
- iPacketDataQoSRecord = NULL;
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_RESETBEARERRECORDS_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::DeleteBearerRecordsL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::DeleteBearerRecordsL()
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_DELETEBEARERRECORDSL_ENTRY );
-
- if ( !TPtrC(iPacketDataQoSRecord->iRecordName).CompareF( KDefaultQosDataRecordName ) ||
- !TPtrC(iPacketDataQoSRecord->iRecordName).CompareF( KDefaultQosDataRecordNamewithSpace ) )
- {
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_DELETEBEARERRECORDSL_EXIT );
- return;
- }
-
- iPacketDataQoSRecord->DeleteL( iSession );
-
- OstTraceFunctionExit0( DUP1_CCMPLUGINPACKETDATA_DELETEBEARERRECORDSL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::CopyBearerRecordsL
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::CopyBearerRecordsL( CCmPluginBaseEng* aCopyInstance )
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_COPYBEARERRECORDSL_ENTRY );
-
- CCmPluginPacketData* plugin = static_cast<CCmPluginPacketData*>( aCopyInstance );
-
- CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
- CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
- CleanupStack::PushL( qosRecord );
- CopyRecordFieldsL( *iPacketDataQoSRecord, *qosRecord );
- CleanupStack::Pop( qosRecord );
- plugin->iPacketDataQoSRecord = qosRecord;
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_COPYBEARERRECORDSL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetBearerTableIdsToBeObserved
-// ---------------------------------------------------------------------------
-//
-void CCmPluginPacketData::GetBearerTableIdsToBeObservedL(
- RArray<TUint32>& aTableIdArray ) const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERTABLEIDSTOBEOBSERVEDL_ENTRY );
-
- aTableIdArray.AppendL( KCDTIdOutgoingGprsRecord );
- aTableIdArray.AppendL( KCDTIdUmtsR99QoSAndOnTableRecord );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERTABLEIDSTOBEOBSERVEDL_EXIT );
- }
-
-// ---------------------------------------------------------------------------
-// CCmPluginPacketData::GetDefPriorityL
-// ---------------------------------------------------------------------------
-//
-TUint32 CCmPluginPacketData::GetDefPriorityL( const TUint32 aAttribute ) const
- {
- OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETDEFPRIORITYL_ENTRY );
-
- TUint32 retVal( KDataMobilitySelectionPolicyPriorityWildCard );
-
- CCDGlobalBearerTypePriorizationRecord* priorityRecord =
- new( ELeave ) CCDGlobalBearerTypePriorizationRecord( iBearerPriorityTableId );
- CleanupStack::PushL( priorityRecord );
-
- priorityRecord->iServiceType.SetL( TPtrC( KCDTypeNameOutgoingWCDMA ) );
-
- if ( priorityRecord->FindL( iSession ) )
- {
- priorityRecord->LoadL( iSession );
-
- switch ( aAttribute )
- {
- case ECmDefaultPriority:
- {
- retVal = priorityRecord->iPriority;
- }
- break;
- case ECmDefaultUiPriority:
- {
- retVal = priorityRecord->iUIPriority;
- }
- break;
- default:
- break;
- }
- }
- CleanupStack::PopAndDestroy( priorityRecord );
-
- OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETDEFPRIORITYL_EXIT );
- return retVal;
- }
-
-// End of file