# HG changeset patch # User hgs # Date 1277368565 -10800 # Node ID bbb64eb3bdeeb077cee4389964bbd8c264680439 # Parent c5b848e6c7d1e749a772c6fc4b570253f2bce228 201025 diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/conf/CI_pdpcontextmanager2.confml Binary file alwayson_net_plugin/pdpcontextmanager2/conf/CI_pdpcontextmanager2.confml has changed diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/group/bld.inf --- a/alwayson_net_plugin/pdpcontextmanager2/group/bld.inf Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/group/bld.inf Thu Jun 24 11:36:05 2010 +0300 @@ -26,7 +26,6 @@ ../rom/pdpcontextmanager2.iby CORE_MW_LAYER_IBY_EXPORT_PATH(pdpcontextmanager2.iby) -../conf/CI_pdpcontextmanager2.confml APP_LAYER_CONFML(CI_pdpcontextmanager2.confml) ../conf/pdpcontextmanager2.confml APP_LAYER_CONFML(pdpcontextmanager2.confml) ../conf/pdpcontextmanager2_102071F5.crml APP_LAYER_CRML(pdpcontextmanager2_102071F5.crml) diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/alwaysonlinepdpplugin.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/alwaysonlinepdpplugin.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/alwaysonlinepdpplugin.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -67,7 +67,8 @@ // --------------------------------------------------------------------------- // CAlwaysOnlinePDPPlugin::CAlwaysOnlinePDPPlugin(): - CAlwaysOnlineEComInterface() + CAlwaysOnlineEComInterface(), + iAlwaysOnServer( NULL ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/caoconnection.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/caoconnection.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/caoconnection.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -114,7 +114,8 @@ // Constructor // --------------------------------------------------------------------------- // -CAOConnection::CAOConnection() +CAOConnection::CAOConnection(): + iConnectionImpl( NULL ) { LOG_1( _L("CAOConnection::CAOConnection") ); } diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmanager.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmanager.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmanager.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -208,7 +208,9 @@ MAOConnectionManagerObserver& aObserver, MAOSettings& aSettings ): iObserver( aObserver ), - iSettings( aSettings ) + iSettings( aSettings ), + iConnection( NULL ), + iConnectionMonitor( NULL ) { LOG_1( _L("CAOConnectionManager::CAOConnectionManager") ); } diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmonitor.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmonitor.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmonitor.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -79,9 +79,11 @@ // Constructor // --------------------------------------------------------------------------- // -CAOConnectionMonitor::CAOConnectionMonitor() +CAOConnectionMonitor::CAOConnectionMonitor(): + iConnectionMonitorImpl( NULL ) { LOG_1( _L("CAOConnectionMonitor::CAOConnectionMonitor") ); + } // --------------------------------------------------------------------------- diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmonitorimpl.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmonitorimpl.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/caoconnectionmonitorimpl.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -127,10 +127,16 @@ MAOConnectionMonitorObserver& aObserver, MAOSettings& aSettings ): iObserver( aObserver ), iSettings( aSettings ), + iTelephony( NULL ), iWNRegPckg( iWNReg ), iWNRegChangePckg( iWNChangeReg ), + iNWRegistrationStatus( NULL ), + iNWRegistrationStatusChange( NULL ), + iBearer( NULL ), + iMyConnectionId( 0 ), iConnectionAlive( EFalse ), - iBearerValue( KBearerNotSearched ) + iBearerValue( KBearerNotSearched ), + iCounter( 0 ) { LOG_1( _L("CAOConnectionMonitorImpl::CAOConnectionMonitorImpl") ); } diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/caoraumanager.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/caoraumanager.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/caoraumanager.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -80,7 +80,8 @@ // CAORAUManager::CAORAUManager // --------------------------------------------------------------------------- // -CAORAUManager::CAORAUManager() +CAORAUManager::CAORAUManager(): + iRAUManagerImpl( NULL ) { LOG_1( _L("CAORAUManager::CAORAUManager") ); } diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/caoserver.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/caoserver.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/caoserver.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -197,7 +197,20 @@ // CAOServer::CAOServer // --------------------------------------------------------------------------- // -CAOServer::CAOServer() +CAOServer::CAOServer(): + iConnectionManager( NULL ), + iTimer( NULL ), + iRAUManager( NULL ), + iSettings( NULL ), + iGpds( NULL ), + iPointerStatePool( NULL ), + iAsyncReactivation( NULL ), + iFailure( MAOConnectionManager::EDisconnected ), + iActivationFailure( ETrue), + iCurrentState( NULL ), + iPDPPropertySubscriber( NULL ), + iAsyncSetup( NULL ), + iCenRepObserver( NULL ) { LOG_1( _L("CAOServer::CAOServer") ); } @@ -950,15 +963,16 @@ &StateToDesC( CurrentState()->StateName() ) ); if ( aValue != ECmCellularDataUsageDisabled ) - { - TAOState* newState = NULL; + { if ( CurrentState()->StateName() == TAOState::EStateDisabled ) { - newState = iCurrentState->HandleEnableAlwaysOnL(); + iCurrentState->HandleEnableAlwaysOnL(); } else { + TAOState* newState = NULL; + // Behaviour is the same as if unconnect timer had expired iTimer->StopUnconnectTimer(); newState = iCurrentState->HandleUnconnectTimerExpiredL(); diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/caotimer.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/caotimer.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/caotimer.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -228,7 +228,12 @@ // CAOTimer::CAOTimer( MAOTimerObserver& aObserver, MAOSettings& aSettings ): iObserver( aObserver ), - iSettings( aSettings ) + iSettings( aSettings ), + iRetryTimer( NULL ), + iRetryTimerCount( 0 ), + iCurrentRetryTimerInterval( 0 ), + iConnectionTimer( NULL ), + iUnconnectTimer( NULL ) { LOG_1( _L("CAOTimer::CAOTimer") ); } diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/cenrepobserver.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/cenrepobserver.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/cenrepobserver.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -65,7 +65,10 @@ CAOCenRepObserver::CAOCenRepObserver( MAOCenRepObserver& aObserver ) : CActive( CActive::EPriorityStandard ), - iObserver( aObserver ) + iObserver( aObserver ), + iRepository( NULL ), + iErrorCounter( 0 ) + { } diff -r c5b848e6c7d1 -r bbb64eb3bdee alwayson_net_plugin/pdpcontextmanager2/src/linger.cpp --- a/alwayson_net_plugin/pdpcontextmanager2/src/linger.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/alwayson_net_plugin/pdpcontextmanager2/src/linger.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -46,7 +46,11 @@ iDlData( 0 ), iPckgDlData( iDlData ), iUlData( 0 ), - iPckgUlData( iUlData ) + iPckgUlData( iUlData ), + iTimer( NULL ), + iLingerInterval( 0 ), + iLingerTimerCount( 0 ), + iCurrentTimerInterval( 0 ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apeng/src/APAccessPointItem.cpp --- a/apengine/apeng/src/APAccessPointItem.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apeng/src/APAccessPointItem.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include -#include +#include #include "ApAccessPointItem.h" #include "ApEngineConsts.h" #include "ApEngineCommons.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apeng/src/VpnApItem.cpp --- a/apengine/apeng/src/VpnApItem.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apeng/src/VpnApItem.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -21,7 +21,7 @@ #include #include #include -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/inc/ApSettingsLookups.h --- a/apengine/apsettingshandlerui/inc/ApSettingsLookups.h Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/inc/ApSettingsLookups.h Thu Jun 24 11:36:05 2010 +0300 @@ -24,7 +24,7 @@ // INCLUDE FILES #include -#include +#include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/ApNetSelPopupList.cpp --- a/apengine/apsettingshandlerui/src/ApNetSelPopupList.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/ApNetSelPopupList.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -28,7 +28,7 @@ #include "ApNetSelPopupList.h" #include "ApNetSelectorListBoxModel.h" #include "ApSettingsModel.h" -#include +#include #include "ApsettingshandleruiImpl.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/ApSelPopupList.cpp --- a/apengine/apsettingshandlerui/src/ApSelPopupList.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/ApSelPopupList.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -21,7 +21,7 @@ #include "APSettingsHandlerUIVariant.hrh" #include -#include +#include #include #include "ApSelectorListBoxModel.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/ApSelQueryDialog.cpp --- a/apengine/apsettingshandlerui/src/ApSelQueryDialog.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/ApSelQueryDialog.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -23,7 +23,7 @@ #include #include -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/ApSelectorDialog.cpp --- a/apengine/apsettingshandlerui/src/ApSelectorDialog.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/ApSelectorDialog.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -25,7 +25,7 @@ #include #include -#include +#include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/ApSelectorListBox.cpp --- a/apengine/apsettingshandlerui/src/ApSelectorListBox.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/ApSelectorListBox.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -23,7 +23,7 @@ //#include #include #include -#include +#include #include #include "ApSelectorListbox.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/ApSettingsCommons.cpp --- a/apengine/apsettingshandlerui/src/ApSettingsCommons.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/ApSettingsCommons.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -24,7 +24,7 @@ #include #include #include "ApSettingsHandlerUI.hrh" -#include +#include #include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/ApSettingsDlg.cpp --- a/apengine/apsettingshandlerui/src/ApSettingsDlg.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/ApSettingsDlg.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -41,7 +41,7 @@ #include "ApSettingsLookups.h" #include "ApSettingsDlg.h" #include "ApSettingsModel.h" -#include +#include #include "ApSettingsHandlerUI.hrh" #include "ApsettingshandleruiImpl.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/ApSettingsModel.cpp --- a/apengine/apsettingshandlerui/src/ApSettingsModel.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/ApSettingsModel.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/apsettingsdeleteoperation.cpp --- a/apengine/apsettingshandlerui/src/apsettingsdeleteoperation.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/apsettingsdeleteoperation.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -40,7 +40,7 @@ #include "ApSelectorListBoxModel.h" #include "ApSettingsHandlerLogger.h" -#include +#include // TEST ENDS diff -r c5b848e6c7d1 -r bbb64eb3bdee apengine/apsettingshandlerui/src/apsettingshandleruiImpl.cpp --- a/apengine/apsettingshandlerui/src/apsettingshandleruiImpl.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/apengine/apsettingshandlerui/src/apsettingshandleruiImpl.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -23,7 +23,7 @@ #include #include -#include +#include #include #include "ApsettingshandleruiImpl.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/inc/s60extendedtmselector.h --- a/bearermanagement/S60MCPR/inc/s60extendedtmselector.h Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/inc/s60extendedtmselector.h Thu Jun 24 11:36:05 2010 +0300 @@ -25,9 +25,6 @@ #include -// Forward declaration -class ESock::CMetaConnectionProviderBase; - /** * TS60ProviderSelectorFactory */ diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/inc/s60mcpr.h --- a/bearermanagement/S60MCPR/inc/s60mcpr.h Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/inc/s60mcpr.h Thu Jun 24 11:36:05 2010 +0300 @@ -253,11 +253,11 @@ * Used to filter out extra notifications because MPM only needs one * started/stopped event. Implement as simple FlipFlop -flag. */ - TBool iDataClientStatusStarted : 1; + TBool iDataClientStatusStarted; /** * Synchronisation flags, private by design, can be modified only by CMobilityActivity */ - TBool iIsHandshakingNow : 1; + TBool iIsHandshakingNow; /** * Connection preference list diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/inc/s60mpmpolicyinterfaces.h --- a/bearermanagement/S60MCPR/inc/s60mpmpolicyinterfaces.h Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/inc/s60mpmpolicyinterfaces.h Thu Jun 24 11:36:05 2010 +0300 @@ -65,6 +65,7 @@ { enum TPolicyServerOperations { + EPolicyRequestInvalid, EPolicyRequestChooseBestIAP = EMPMChooseBestIAP, EPolicyRequestReselectBestIAP = EMPMReselectBestIAP, EPolicyRequestProcessError = EMPMProcessError, @@ -94,12 +95,14 @@ * c++ constructor */ PolicyRequest() - : iConnPref(NULL), + : iRequestType( S60MCPRMPMOperations::EPolicyRequestInvalid ), + iConnPref(NULL), iIapId(0), iConnId(0), iAppUid(KNullUid), iError(KErrNone), iPolicyPref(NULL), + iNeededAction( EIgnoreError ), iStatus(KErrNone), iUser(NULL) {} diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/inc/s60tiermanagerselector.h --- a/bearermanagement/S60MCPR/inc/s60tiermanagerselector.h Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/inc/s60tiermanagerselector.h Thu Jun 24 11:36:05 2010 +0300 @@ -25,9 +25,6 @@ #include -// Forward declaration -class ESock::CMetaConnectionProviderBase; - /** * TS60ProviderSelectorFactory */ diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/src/s60extendedtmselector.cpp --- a/bearermanagement/S60MCPR/src/s60extendedtmselector.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/src/s60extendedtmselector.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -56,10 +56,12 @@ // ----------------------------------------------------------------------------- // CExtendedS60SelectorBase::CExtendedS60SelectorBase( TUid aTierId, const ESock::RConnPrefList& aConnPrefList ) - : ASimpleSelectorBase( ) + : ASimpleSelectorBase( ), + iDefaultAp( 0 ), + iConnPrefList( aConnPrefList ), + iTierId( aTierId ), + iSubSessionUniqueId( 0 ) { - iTierId = aTierId; - iConnPrefList = aConnPrefList; } // ----------------------------------------------------------------------------- diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/src/s60mcprerrorrecoveryactivity.cpp --- a/bearermanagement/S60MCPR/src/s60mcprerrorrecoveryactivity.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/src/s60mcprerrorrecoveryactivity.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -174,7 +174,6 @@ DEFINE_SMELEMENT(TRetryConnectionOrProcessErrorTagBackward, NetStateMachine::MStateFork, TContext) TInt TRetryConnectionOrProcessErrorTagBackward::TransitionTag() { - CS60MetaConnectionProvider& node = (CS60MetaConnectionProvider&)iContext.Node(); TCFMcpr::TReConnectComplete* msg = NULL; if ( iContext.iMessage.IsMessage() ) { @@ -185,9 +184,8 @@ { S60MCPRLOGSTRING1("S60MCPR<%x>::TRetryConnectionOrProcessErrorTagBackward::TransitionTag() KProcessError",(TInt*)&iContext.Node()); return S60MCprStates::KProcessError | NetStateMachine::EBackward; - //return KErrorTag | NetStateMachine::EForward; } - else// if ( node.ServiceProvider()->ProviderInfo().APId() == node.PolicyPrefs().IapId() ) + else { S60MCPRLOGSTRING1("S60MCPR<%x>::TRetryConnectionOrProcessErrorTagBackward::TransitionTag() KRetryConnection",(TInt*)&iContext.Node()); return S60MCprStates::KRetryConnection | NetStateMachine::EForward; diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/src/s60mcprmobilityactivity.cpp --- a/bearermanagement/S60MCPR/src/s60mcprmobilityactivity.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/src/s60mcprmobilityactivity.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -325,7 +325,11 @@ // CS60MobilityActivity::CS60MobilityActivity( const MeshMachine::TNodeActivity& aActivitySig, MeshMachine::AMMNodeBase& aNode ) - : S60MCprStates::CS60ErrorRecoveryActivity( aActivitySig, aNode ) + : S60MCprStates::CS60ErrorRecoveryActivity( aActivitySig, aNode ), + iCurrentAssumedAPId( 0 ), + iPreferredAPId( 0 ), + iIsUpgrade( EFalse ), + iIsSeamless( EFalse ) {} diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/src/s60mcprstates.cpp --- a/bearermanagement/S60MCPR/src/s60mcprstates.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/src/s60mcprstates.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -368,10 +368,10 @@ // Only EIntSetting is supported // - if ( ( TMCprGetConnectionSetting::TConnectionSettingType)msg->iSettingType == - TMCprGetConnectionSetting::EIntSetting - && node.PolicyPrefs().ServiceId() != 0 - && field.Compare( KIapProxyServiceSetting ) == 0 ) + if ( msg + && msg->iSettingType == TMCprGetConnectionSetting::EIntSetting + && node.PolicyPrefs().ServiceId() != 0 + && field.Compare( KIapProxyServiceSetting ) == 0 ) { S60MCPRLOGSTRING1("S60MCPR<%x>::TAwaitingServiceIdRequest::Accept() TMCprGetConnectionSetting EIntSetting", (TInt*)&iContext.Node()) diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/S60MCPR/src/s60tiermanagerselector.cpp --- a/bearermanagement/S60MCPR/src/s60tiermanagerselector.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/S60MCPR/src/s60tiermanagerselector.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -67,7 +67,9 @@ // ----------------------------------------------------------------------------- // CSimpleS60SelectorBase::CSimpleS60SelectorBase( const Meta::SMetaData& aSelectionPreferences ) - : ASimpleSelectorBase( aSelectionPreferences ) + : ASimpleSelectorBase( aSelectionPreferences ), + iDefaultAp( 0 ), + iSubSessionUniqueId( 0 ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/conf/mpmvpntoggleapi.confml Binary file bearermanagement/mpm/conf/mpmvpntoggleapi.confml has changed diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/conf/mpmvpntoggleapi_20016a88.crml Binary file bearermanagement/mpm/conf/mpmvpntoggleapi_20016a88.crml has changed diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/group/bld.inf --- a/bearermanagement/mpm/group/bld.inf Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/group/bld.inf Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2004-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" @@ -21,13 +21,15 @@ DEFAULT PRJ_EXPORTS -../inc/rmpm.h |../../../inc/rmpm.h -../inc/rmpm.inl |../../../inc/rmpm.inl -../rom/mpm.iby CORE_MW_LAYER_IBY_EXPORT_PATH(mpm.iby) -../rom/mpmserver.iby CORE_MW_LAYER_IBY_EXPORT_PATH(mpmserver.iby) -../conf/mpm.confml MW_LAYER_CONFML(mpm.confml) -../conf/mpm_101f6d12.crml MW_LAYER_CRML(mpm_101f6d12.crml) -../conf/mpm_101f6d50.crml MW_LAYER_CRML(mpm_101f6d50.crml) +../inc/rmpm.h |../../../inc/rmpm.h +../inc/rmpm.inl |../../../inc/rmpm.inl +../rom/mpm.iby CORE_MW_LAYER_IBY_EXPORT_PATH(mpm.iby) +../rom/mpmserver.iby CORE_MW_LAYER_IBY_EXPORT_PATH(mpmserver.iby) +../conf/mpm.confml MW_LAYER_CONFML(mpm.confml) +../conf/mpm_101f6d12.crml MW_LAYER_CRML(mpm_101f6d12.crml) +../conf/mpm_101f6d50.crml MW_LAYER_CRML(mpm_101f6d50.crml) +../conf/mpmvpntoggleapi.confml MW_LAYER_CONFML(mpmvpntoggleapi.confml) +../conf/mpmvpntoggleapi_20016a88.crml MW_LAYER_CRML(mpmvpntoggleapi_20016a88.crml) PRJ_MMPFILES mpmclient.mmp diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/group/mpmserver.mmp --- a/bearermanagement/mpm/group/mpmserver.mmp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/group/mpmserver.mmp Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2004-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" @@ -49,7 +49,7 @@ SOURCE mpmcsidwatcher.cpp SOURCE mpmdialogbase.cpp SOURCE mpmdatausagewatcher.cpp -SOURCE mpmofflinewatcher.cpp +SOURCE mpmvpntogglewatcher.cpp USERINCLUDE ../inc diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/mpmcommsdataccess.h --- a/bearermanagement/mpm/inc/mpmcommsdataccess.h Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/inc/mpmcommsdataccess.h Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-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" @@ -264,7 +264,14 @@ */ TBool IsInternetSnapL( TUint32 aIapId, TUint32 aSnapId ); - /** + /** + * Returns true if destination is intranet. + * @param aSnapId Snap id + * @return True or false depending on destination type. + */ + TBool IsIntranetSnapL( TUint32 aSnapId ); + + /** * Used to get bearer type of the iap. * * @since 5.0 diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/mpmofflinewatcher.h --- a/bearermanagement/mpm/inc/mpmofflinewatcher.h Thu Jun 10 16:00:16 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,119 +0,0 @@ -/* -* Copyright (c) 2008-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: Listens for offline mode changes in central repository. -* -*/ - -#ifndef MPMOFFLINEWATCHER_H -#define MPMOFFLINEWATCHER_H - -// INCLUDES -#include - -class CRepository; -class CMPMServer; - -// Stop after this many consecutive central repository errors. -const TInt KMpmOfflineWatcherCenRepErrorThreshold = 80; - -/** - * Class for accessing central repository. - * Follows KCoreAppUIsNetworkConnectionAllowed key in central repository. - * @since 5.2 - */ -class CMpmOfflineWatcher : public CActive - { - -public: - - /** - * New for calling the two-phased constructor. - */ - static CMpmOfflineWatcher* NewL( CMPMServer* aServer ); - - /** - * Destructor. - */ - virtual ~CMpmOfflineWatcher(); - - /** - * Start to listen for events. - */ - void StartL(); - - /** - * Active object's RunL. - */ - void RunL(); - - /** - * Active object's DoCancel. - */ - void DoCancel(); - -private: - - /** - * C++ default constructor. - */ - CMpmOfflineWatcher( CMPMServer* aServer ); - - /** - * Symbian 2nd phase constructor. - */ - void ConstructL(); - - /** - * Request for notifications. - */ - TInt RequestNotifications(); - - /** - * Get current offline mode value. - */ - TInt GetCurrentOfflineValue(); - - -private: // data - - /** - * Is offline feature supported. - */ - TBool iOfflineFeatureSupported; - - /** - * Central repository handle. - * Own. - */ - CRepository* iRepository; - - /** - * Offline mode activity value. - */ - TInt iOfflineMode; // type: TCoreAppUIsNetworkConnectionAllowed - - /** - * Pointer to the MPM Server object. - * Not own. - */ - CMPMServer* iServer; - - /** - * Error counter. - */ - TUint iErrorCounter; - - }; - -#endif // MPMOFFLINEWATCHER_H diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/mpmserver.h --- a/bearermanagement/mpm/inc/mpmserver.h Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/inc/mpmserver.h Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2004-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" @@ -34,12 +34,13 @@ #include "mpmcommon.h" #include "rmpm.h" #include "mpmroamingwatcher.h" +#include "mpmvpntogglewatcher.h" class CMPMCommsDatAccess; class CMpmCsIdWatcher; class CMpmDataUsageWatcher; -class CMpmOfflineWatcher; +class CMpmVpnToggleWatcher; // CONSTANTS _LIT( KMPMPanicCategory, "Mobility Policy Manager Server" ); @@ -265,7 +266,8 @@ * @lib MPMServer.exe * @since 3.0 */ -class CMPMServer : public CPolicyServer +class CMPMServer : public CPolicyServer, + public MMpmVpnToggleWatcherNotify { public: // Constructors and destructor @@ -693,6 +695,20 @@ public: // Functions from base classes /** + * From MMpmVpnToggleWatcherNotify. Sets values for VPN toggle after + * VPN toggle key changes in central repository. + * @param aVpnPreferred Informs if VPN connection is preferred + * connection + * @param aVpnIapId VPN IAP Id, which is used for VPN connection, when + * VPN connection is preferred + * @param aSnapId SNAP Id SNAP Id, which is used for VPN connection, + * when VPN connection is preferred + */ + void SetVpnToggleValuesL( const TBool aVpnPreferred, + const TUint32 aVpnIapId, + const TUint32 aSnapId ); + + /** * From CServer2. Creates a new session for a client. * @since 3.0 * @param aVersion Version information @@ -704,7 +720,7 @@ // Stops connection of certain IAP, zero for all connections void StopConnections( TInt aIapId = 0 ); - + public: /** @@ -746,6 +762,34 @@ * @return ETrue if user connection is in internet snap */ TBool UserConnectionInInternet() const; + + /** + * Mark that there is an active VPN user connection. + */ + void AddVpnUserConnectionSession(); + + /** + * Mark that VPN user connection is not active + */ + void RemoveVpnUserConnectionSession(); + + /** + * Informs if VPN user connection is used with given MPM preferences + * and application. + * @param aMpmConnPref MPM connection preferences. + * @param aAppUid Application UID + * @return Informs if VPN connection is preferred + */ + TBool UseVpnUserConnection( const TMpmConnPref aMpmConnPref, + const TUint32 aAppUid ) const; + + /** + * Prepares VPN user connection. + * @param aMpmConnPref Connection preferences, which are modified + * for VPN user connection (returned) + * @return Informs if preparation was successful. + */ + TBool PrepareVpnUserConnection( TMpmConnPref& aMpmConnPref ); /** * Handle to central repository watcher @@ -755,6 +799,12 @@ inline CMpmCsIdWatcher* CsIdWatcher(); /** + * Handle to VPN toggle central repository watcher + * @return Pointer to watcher object. + */ + inline CMpmVpnToggleWatcher* VpnToggleWatcher(); + + /** * Returns server session instance that corresponds to given * connection id. * @since 5.2 @@ -889,6 +939,10 @@ // Set when user connection in internet snap TBool iUserConnectionInInternet; + // Count of sessions using VPN user connection + // + TInt iVpnUserConnectionSessionCount; + /** * Handle to central repository watcher * Own. @@ -896,14 +950,15 @@ CMpmCsIdWatcher* iMpmCsIdWatcher; /** - * Handle to central repository watcher + * Handle to VPN toggle central repository watcher. + * Own. */ - CMpmDataUsageWatcher* iMpmDataUsageWatcher; + CMpmVpnToggleWatcher* iMpmVpnToggleWatcher; /** * Handle to central repository watcher */ - CMpmOfflineWatcher* iMpmOfflineWatcher; + CMpmDataUsageWatcher* iMpmDataUsageWatcher; // Dedicated clients RArray iDedicatedClients; diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/mpmserver.inl --- a/bearermanagement/mpm/inc/mpmserver.inl Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/inc/mpmserver.inl Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-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" @@ -186,6 +186,15 @@ } // ----------------------------------------------------------------------------- +// CMPMServer::VpnToggleWatcher +// ----------------------------------------------------------------------------- +// +inline CMpmVpnToggleWatcher* CMPMServer::VpnToggleWatcher() + { + return iMpmVpnToggleWatcher; + } + +// ----------------------------------------------------------------------------- // CMPMServer::DedicatedClients // ----------------------------------------------------------------------------- // diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/mpmserversession.h --- a/bearermanagement/mpm/inc/mpmserversession.h Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/inc/mpmserversession.h Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2004-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" @@ -413,6 +413,18 @@ TBool UseUserConnPref(); /** + * Returns VPN user connection usage status. + * @return ETrue if VPN user connection is used in this session. + */ + inline TBool VpnUserConnectionUsed() const; + + /** + * Sets VPN user connection usage status. + * @param aEnabled Informs if VPN user connection is used. + */ + void SetVpnUserConnectionUsed( const TBool aEnabled ); + + /** * Returns id of the client. * * @since 5.0 @@ -926,21 +938,26 @@ // CMPMIapSelection* iIapSelection; - // Stored state of migrating to carrier - // - TMigrateToCarrierState iMigrateState; + // Stored state of migrating to carrier + // + TMigrateToCarrierState iMigrateState; - // Last Iap notified using PreferredIap-notification - // - TUint32 iLastNotifiedIap; - - // Iap to which connection is migrating + // Last Iap notified using PreferredIap-notification + // + TUint32 iLastNotifiedIap; + + // Iap to which connection is migrating // TUint32 iMigrateIap; // Set when this session is user connection - // + // TBool iUserConnection; + + // Set when this session uses VPN user connection + // + TBool iVpnUserConnectionUsed; + }; #include "mpmserversession.inl" diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/mpmserversession.inl --- a/bearermanagement/mpm/inc/mpmserversession.inl Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/inc/mpmserversession.inl Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-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" @@ -80,6 +80,15 @@ } // ----------------------------------------------------------------------------- +// CMPMServerSession::VpnUserConnectionUsed +// ----------------------------------------------------------------------------- +// +inline TBool CMPMServerSession::VpnUserConnectionUsed() const + { + return iVpnUserConnectionUsed; + } + +// ----------------------------------------------------------------------------- // CMPMServerSession::AppUid // ----------------------------------------------------------------------------- // diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/mpmvpntogglewatcher.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bearermanagement/mpm/inc/mpmvpntogglewatcher.h Thu Jun 24 11:36:05 2010 +0300 @@ -0,0 +1,166 @@ +/* +* 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: Listen VPN toggle key changes in central repository. +* +*/ + +#ifndef MPMVPNTOGGLEWATCHER_H +#define MPMVPNTOGGLEWATCHER_H + +// INCLUDES +#include + +// FORWARD DECLARATIONS +class CRepository; + +// Stop after this many consecutive central repository errors. +const TInt KMpmVpnToggleWatcherCenRepErrorThreshold = 80; + +/** +* Class that specifies the functions for handling notify messages about +* VPN toggle key changes in central repository. +*/ +class MMpmVpnToggleWatcherNotify +{ +public: + + /** + * Sets values for VPN toggle after VPN toggle key changes in central + * repository. + * @param aVpnPreferred Informs if VPN connection is preferred + * connection + * @param aVpnIapId VPN IAP Id, which is used for VPN connection, when + * VPN connection is preferred + * @param aSnapId SNAP Id SNAP Id, which is used for VPN connection, + * when VPN connection is preferred + */ + virtual void SetVpnToggleValuesL( const TBool aVpnPreferred, + const TUint32 aVpnIapId, + const TUint32 aSnapId ) = 0; +}; + + +/** + * Class for monitoring VPN toggle key changes in central repository. + * Follows KMpmVpnToggleCenRepUid key in central repository. + */ +class CMpmVpnToggleWatcher : public CActive + { +public: + + /** + * Two-phased constructor. + * @param aNotify Handler for notify messages. + */ + static CMpmVpnToggleWatcher* NewL( MMpmVpnToggleWatcherNotify& aNotify ); + + /** + * Destructor. + */ + virtual ~CMpmVpnToggleWatcher(); + + /** + * Call this when you want to start listen event. + */ + void StartL(); + + /** + * Informs if VPN connection is preferred. + * @return True if VPN connection is preferred. + */ + TBool IsVpnConnectionPreferred() const; + + /** + * Returns VPN IAP Id, which is used for VPN connection, when VPN + * connection is preferred. + * @return VPN IAP Id + */ + TUint32 VpnIapId() const; + + /** + * Returns SNAP Id, which is used for VPN connection, when VPN + * connection is preferred. + * @return SNAP Id + */ + TUint32 SnapId() const; + + /** + * Resets VPN toggle values. + */ + void ResetVpnToggleValues(); + +private: + + CMpmVpnToggleWatcher( MMpmVpnToggleWatcherNotify& aNotify ); + + void ConstructL(); + + /** + * Request for notifications. + * @return Error value + */ + TInt RequestNotifications(); + + /** + * Gets VPN toggle values. + * @return Error value + */ + TInt GetVpnToggleValues(); + +// from base class CActive + + void RunL(); + + void DoCancel(); + +private: // data + + /** + * Central repository handle + * Own. + */ + CRepository* iRepository; + + /** + * Informs if VPN connection is preferred connection + * Own. + */ + TBool iVpnConnectionPreferred; + + /** + * VPN IAP Id which is used, when VPN connection is preferred + * Own. + */ + TUint32 iVpnIapId; + + /** + * SNAP Id which is used, when VPN connection is preferred + * Own. + */ + TUint32 iSnapId; + + /** + * Error counter. + */ + TUint iErrorCounter; + + /** + * Handler for notify messages. + * Not own. + */ + MMpmVpnToggleWatcherNotify& iNotify; + + }; + +#endif // MPMVPNTOGGLEWATCHER_H diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/rmpm.h --- a/bearermanagement/mpm/inc/rmpm.h Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/inc/rmpm.h Thu Jun 24 11:36:05 2010 +0300 @@ -117,7 +117,7 @@ public: // Zero values inline void Reset(); - inline const TInt Count() const; + inline TInt Count() const; public: TUint iCount; @@ -275,7 +275,7 @@ public: enum { EConnS60PolicyPref = 0x0f }; // TConnPref has defined up to 0x07. - inline TPolicyConnPref::TPolicyConnPref() + inline TPolicyConnPref() : TConnPref( TPolicyConnPref::EConnS60PolicyPref ) { SetIapId( 0 ); @@ -391,7 +391,7 @@ EConnTypeExplicit }; - inline TMpmConnPref::TMpmConnPref() + inline TMpmConnPref() : TConnPref( TMpmConnPref::EConnPrefMpm ) { SetSnapPurpose( CMManager::ESnapPurposeUnknown ); diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/inc/rmpm.inl --- a/bearermanagement/mpm/inc/rmpm.inl Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/inc/rmpm.inl Thu Jun 24 11:36:05 2010 +0300 @@ -33,7 +33,7 @@ // TMpmSnapBuffer::Count // ----------------------------------------------------------------------------- // -inline const TInt TMpmSnapBuffer::Count() const +inline TInt TMpmSnapBuffer::Count() const { return iCount; } diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/src/mpmcommsdataccess.cpp --- a/bearermanagement/mpm/src/mpmcommsdataccess.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/src/mpmcommsdataccess.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-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" @@ -2153,6 +2153,31 @@ } // ----------------------------------------------------------------------------- +// CMPMCommsDatAccess::IsIntranetSnapL +// ----------------------------------------------------------------------------- +// +TBool CMPMCommsDatAccess::IsIntranetSnapL( TUint32 aSnapId ) + { + MPMLOGSTRING( "CMPMCommsDatAccess::IsIntranetSnapL" ) + + RCmManager rCmManager; + rCmManager.OpenLC(); + + RCmDestination dest = rCmManager.DestinationL( aSnapId ); + CleanupClosePushL(dest); + TInt snapMetadata = dest.MetadataL( CMManager::ESnapMetadataPurpose ); + CleanupStack::PopAndDestroy( &dest ); + CleanupStack::PopAndDestroy( &rCmManager ); + + if ( snapMetadata == CMManager::ESnapPurposeIntranet ) + { + return ETrue; + } + + return EFalse; + } + +// ----------------------------------------------------------------------------- // CMPMCommsDatAccess::GetBearerTypeL // ----------------------------------------------------------------------------- // diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/src/mpmconfirmdlgroaming.cpp --- a/bearermanagement/mpm/src/mpmconfirmdlgroaming.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/src/mpmconfirmdlgroaming.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -67,6 +67,8 @@ iIAP( aIAP ), iDialogType( aDialogType ), iConfirmDlg( NULL ), + iMsgQuery( EMsgQueryCancelled ), + iError( 0 ), iReconnect( aReconnect ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/src/mpmconfirmdlgstarting.cpp --- a/bearermanagement/mpm/src/mpmconfirmdlgstarting.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/src/mpmconfirmdlgstarting.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -81,9 +81,11 @@ iIAP( aIAP ), iDialogType( aDialogType ), iConfirmDlg( NULL ), + iMsgQuery( EMsgQueryCancelled ), iPref( aPref ), iServer( aServer ), iSession ( aSession ), + iError( 0 ), iIapState( aIapState ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/src/mpmconnmonreqs.cpp --- a/bearermanagement/mpm/src/mpmconnmonreqs.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/src/mpmconnmonreqs.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -56,7 +56,9 @@ RConnectionMonitor& aConnMon, TUint aConnId, CMPMServerSession* aSession ) - : CActive(CActive::EPriorityStandard), + : CActive(CActive::EPriorityStandard), + iNextState( EGetIapAvailState ), + iLastCancelCode( 0 ), iParent(aParent), iConnMon(aConnMon), iConnId(aConnId), diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/src/mpmofflinewatcher.cpp --- a/bearermanagement/mpm/src/mpmofflinewatcher.cpp Thu Jun 10 16:00:16 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,193 +0,0 @@ -/* - * Copyright (c) 2008-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: Listens central repository for offline mode changes. - * - */ - -#include -#include -#include -#include - -#include "mpmlogger.h" -#include "mpmserver.h" -#include "mpmofflinewatcher.h" - -// --------------------------------------------------------------------------- -// Default C++ constructor. -// --------------------------------------------------------------------------- -// -CMpmOfflineWatcher::CMpmOfflineWatcher( CMPMServer* aServer ) : - CActive( EPriorityStandard ), iServer( aServer ) - { - MPMLOGSTRING( "CMpmOfflineWatcher::CMpmOfflineWatcher" ) - - CActiveScheduler::Add( this ); - } - -// --------------------------------------------------------------------------- -// Symbian 2nd phase constructor. Creates a central repository object. -// --------------------------------------------------------------------------- -// -void CMpmOfflineWatcher::ConstructL() - { - MPMLOGSTRING( "CMpmOfflineWatcher::ConstructL" ) - - FeatureManager::InitializeLibL(); - // If feature isn't supported, then no watching, but return in StartL(). - iOfflineFeatureSupported = FeatureManager::FeatureSupported( - KFeatureIdOfflineMode ); - FeatureManager::UnInitializeLib(); - - - iRepository = CRepository::NewL( KCRUidCoreApplicationUIs ); - } - -// --------------------------------------------------------------------------- -// Creates a new object by calling the two-phased constructor. -// --------------------------------------------------------------------------- -// -CMpmOfflineWatcher* CMpmOfflineWatcher::NewL( CMPMServer* aServer ) - { - MPMLOGSTRING( "CMpmOfflineWatcher::NewL" ) - - CMpmOfflineWatcher* self = new( ELeave ) CMpmOfflineWatcher( aServer ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - -// --------------------------------------------------------------------------- -// Destructor. -// --------------------------------------------------------------------------- -// -CMpmOfflineWatcher::~CMpmOfflineWatcher() - { - MPMLOGSTRING( "CMpmOfflineWatcher::~CMpmOfflineWatcher" ) - - Cancel(); - delete iRepository; - } - -// --------------------------------------------------------------------------- -// Order notification from changes. -// --------------------------------------------------------------------------- -// -void CMpmOfflineWatcher::StartL() - { - MPMLOGSTRING( "CMpmOfflineWatcher::StartL" ) - - if ( !iOfflineFeatureSupported ) - { - return; - } - - // Get the initial data usage value from repository. - User::LeaveIfError( GetCurrentOfflineValue() ); - iServer->UpdateOfflineMode( iOfflineMode ); - - // Request notifications. - User::LeaveIfError( RequestNotifications() ); - } - -// --------------------------------------------------------------------------- -// From class CActive. -// Event is received when there is a change in central repository key. -// --------------------------------------------------------------------------- -// -void CMpmOfflineWatcher::RunL() - { - MPMLOGSTRING( "CMpmOfflineWatcher::RunL" ) - - if ( iStatus.Int() < KErrNone ) - { - MPMLOGSTRING2("Status: 0x%08X", iStatus.Int()) - iErrorCounter++; - if ( iErrorCounter > KMpmOfflineWatcherCenRepErrorThreshold ) - { - MPMLOGSTRING2("Over %d consecutive errors, stopping notifications permanently.", - KMpmOfflineWatcherCenRepErrorThreshold) - return; - } - // Else: Error occured but counter not expired. Proceed. - } - else - { - // Notification is received ok => Reset the counter. - iErrorCounter = 0; - - // Check if mode has changed (it should). - TInt oldMode = iOfflineMode; - - TInt err = GetCurrentOfflineValue(); - if ( err == KErrNone && oldMode != iOfflineMode ) - { - iServer->UpdateOfflineMode( iOfflineMode ); - } - } - - RequestNotifications(); - } - -// --------------------------------------------------------------------------- -// From class CActive. -// Cancel the outstanding request. -// --------------------------------------------------------------------------- -// -void CMpmOfflineWatcher::DoCancel() - { - MPMLOGSTRING( "CMpmOfflineWatcher::DoCancel" ) - - iRepository->NotifyCancel( KCoreAppUIsNetworkConnectionAllowed ); - } - -// --------------------------------------------------------------------------- -// Request for notifications. -// --------------------------------------------------------------------------- -// -TInt CMpmOfflineWatcher::RequestNotifications() - { - MPMLOGSTRING( "CMpmOfflineWatcher::RequestNotifications" ) - - TInt err = iRepository->NotifyRequest( KCoreAppUIsNetworkConnectionAllowed, iStatus ); - - if ( err == KErrNone ) - { - SetActive(); - } - else - { - // MPM's offline mode watching wouldn't recover... - MPMLOGSTRING2( "CMpmOfflineWatcher::RequestNotifications, ERROR: %d", err ) - } - return err; - } - -// --------------------------------------------------------------------------- -// Get the current repository key value. -// --------------------------------------------------------------------------- -// -TInt CMpmOfflineWatcher::GetCurrentOfflineValue() - { - MPMLOGSTRING( "CMpmOfflineWatcher::GetCurrentOfflineValue" ) - - TInt err = iRepository->Get( KCoreAppUIsNetworkConnectionAllowed, iOfflineMode ); - - if ( err != KErrNone ) - { - MPMLOGSTRING2( "CMpmOfflineWatcher::GetCurrentOfflineValue, ERROR: %d", err ) - } - return err; - } diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/src/mpmserver.cpp --- a/bearermanagement/mpm/src/mpmserver.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/src/mpmserver.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -39,10 +39,12 @@ #include "mpmcommsdataccess.h" #include "mpmprivatecrkeys.h" #include "mpmcsidwatcher.h" +#include "mpmvpntogglewatcher.h" #include "mpmdatausagewatcher.h" #include "mpmpropertydef.h" -#include "mpmofflinewatcher.h" +static const TUint32 KUidKmdServer = 0x1000088A; + // ============================= LOCAL FUNCTIONS =============================== // ----------------------------------------------------------------------------- @@ -82,11 +84,22 @@ iTSYLoaded( EFalse ), iPacketServLoaded( EFalse ), iDtmWatcher( NULL ), + iRoamingWatcher( NULL ), iWLANScanRequired( EFalse ), iRoamingQueue( NULL ), iStartingQueue( NULL ), iConnectionCounter( 0 ), - iOfflineMode( ECoreAppUIsNetworkConnectionAllowed ) + iUserConnection( EFalse ), + iUserConnectionInInternet( EFalse ), + iVpnUserConnectionSessionCount( 0 ), + iMpmCsIdWatcher( NULL ), + iMpmVpnToggleWatcher( NULL ), + iMpmDataUsageWatcher( NULL ), + iCommsDatAccess( NULL ), + iConnUiUtils( NULL ), + iOfflineMode( ECoreAppUIsNetworkConnectionAllowed ), + iOfflineWlanQueryResponse( EOfflineResponseUndefined ), + iRoamingToWlanPeriodic( NULL ) { } @@ -157,6 +170,9 @@ // Create central repository watcher and start it iMpmCsIdWatcher = CMpmCsIdWatcher::NewL(); iMpmCsIdWatcher->StartL(); + + // Create VPN toggle central repository watcher and start it + iMpmVpnToggleWatcher = CMpmVpnToggleWatcher::NewL( *this ); // Create another central repository watcher and start it TRAPD( duwErr, iMpmDataUsageWatcher = CMpmDataUsageWatcher::NewL( this ) ); @@ -170,18 +186,6 @@ MPMLOGSTRING( "CMPMServer::ConstructL: CMpmDataUsageWatcher::NewL() failed!" ) } - // Create another central repository watcher and start it - TRAPD( owErr, iMpmOfflineWatcher = CMpmOfflineWatcher::NewL( this ) ); - if (owErr == KErrNone) - { - iMpmOfflineWatcher->StartL(); - } - else - { - iMpmOfflineWatcher = NULL; - MPMLOGSTRING( "CMPMServer::ConstructL: CMpmOfflineWatcher::NewL() failed!" ) - } - // Read dedicated clients from the central repository CRepository* repository = CRepository::NewL( KCRUidMPM ); @@ -256,11 +260,11 @@ iTelServer.Close(); delete iMpmCsIdWatcher; - + + delete iMpmVpnToggleWatcher; + delete iMpmDataUsageWatcher; - delete iMpmOfflineWatcher; - iDedicatedClients.Close(); delete iCommsDatAccess; @@ -268,6 +272,57 @@ delete iConnUiUtils; } +// ----------------------------------------------------------------------------- +// CMPMServer::SetVpnToggleValuesL +// ----------------------------------------------------------------------------- +// +void CMPMServer::SetVpnToggleValuesL( const TBool aVpnPreferred, + const TUint32 /*aVpnIapId*/, + const TUint32 /*aSnapId*/ ) + { + MPMLOGSTRING2("CMPMServer::SetVpnToggleValues, VPN connection preferred: %d", + aVpnPreferred) + if ( aVpnPreferred ) + { + // Stop Internet connections, except if VPN user connection + // would not be made with current preferences when reconnecting. + for (TInt index = 0; index < iSessions.Count(); index++) + { + CMPMServerSession* session = iSessions[index]; + TUint32 iapId = GetBMIap( session->ConnectionId() ); + TUint32 snapId = GetBMSnap( session->ConnectionId() ); + + if ( (session->ChooseBestIapCalled()) && + (!session->IapSelectionL()->MpmConnPref().MandateIap()) && + (session->AppUid() != KUidKmdServer) && + (!session->UserConnection()) && + iCommsDatAccess->IsInternetSnapL(iapId, snapId) ) + { + // Stop connection. + MPMLOGSTRING2( "CMPMServer::SetVpnToggleValuesL: \ + Disconnected Connection Id = 0x%x", session->ConnectionId() ) + session->ClientErrorNotificationL(KErrForceDisconnected); + } + } + } + else + { + // Stop connections, which use VPN user connection. + for (TInt index = 0; index < iSessions.Count(); index++) + { + CMPMServerSession* session = iSessions[index]; + if ( session->VpnUserConnectionUsed() ) + { + session->SetVpnUserConnectionUsed( EFalse ); + // Stop connection. + MPMLOGSTRING2( "CMPMServer::SetVpnToggleValuesL: \ + Disconnected Connection Id = 0x%x", session->ConnectionId() ) + session->ClientErrorNotificationL(KErrForceDisconnected); + } + } + ASSERT( iVpnUserConnectionSessionCount == 0 ); + } + } // ----------------------------------------------------------------------------- // CMPMServer::NewSessionL @@ -1774,6 +1829,126 @@ stoppedIaps.Close(); } +// ----------------------------------------------------------------------------- +// CMPMServer::AddVpnUserConnectionSession +// ----------------------------------------------------------------------------- +// +void CMPMServer::AddVpnUserConnectionSession() + { + iVpnUserConnectionSessionCount++; + } + +// ----------------------------------------------------------------------------- +// CMPMServer::RemoveVpnUserConnectionSession +// ----------------------------------------------------------------------------- +// +void CMPMServer::RemoveVpnUserConnectionSession() + { + ASSERT( iVpnUserConnectionSessionCount > 0 ); + iVpnUserConnectionSessionCount--; + } + +// --------------------------------------------------------------------------- +// CMPMServer::UseVpnUserConnection +// Informs if VPN user connection is used with given MPM preferences and +// application. +// --------------------------------------------------------------------------- +// +TBool CMPMServer::UseVpnUserConnection( const TMpmConnPref aMpmConnPref, + const TUint32 aAppUid ) const + { + if ( iMpmVpnToggleWatcher->IsVpnConnectionPreferred() && + !aMpmConnPref.MandateIap() && + aAppUid != KUidKmdServer && + aAppUid != iMpmCsIdWatcher->ConnectScreenId() ) + { + // VPN connection is preferred connection, connection preferences are + // not mandatet and client is not KMD server or Connect Screen. + if ( aMpmConnPref.ConnType() == TMpmConnPref::EConnTypeDefault || + aMpmConnPref.ConnType() == TMpmConnPref::EConnTypeImplicit ) + { + // Default or implicit connection is requested. + // VPN user connection is used. + return ETrue; + } + else + { + // Explicit connection is requested. + TBool internetSnap(EFalse); + TRAPD( err, internetSnap = iCommsDatAccess->IsInternetSnapL( aMpmConnPref.IapId(), + aMpmConnPref.SnapId() ) ); + if ( err == KErrNone && + internetSnap ) + { + // Connection belongs to Internet SNAP. + // VPN user connection is used. + return ETrue; + } + } + } + + // VPN user connection is not used. + return EFalse; + } + +// ----------------------------------------------------------------------------- +// CMPMServer::PrepareVpnUserConnection +// ----------------------------------------------------------------------------- +// +TBool CMPMServer::PrepareVpnUserConnection( TMpmConnPref& aMpmConnPref ) + { + // Get VPN IAP Id or SNAP Id, which is used for VPN user connection. + TUint32 vpnIapId = iMpmVpnToggleWatcher->VpnIapId(); + TUint32 snapId = iMpmVpnToggleWatcher->SnapId(); + + // Check first if SNAP Id is set, in which case VPN IAP Id is ignored. + if ( snapId != 0 ) + { + TBool intranetSnap( EFalse ); + TRAPD( err , intranetSnap = + iCommsDatAccess->IsIntranetSnapL( snapId ) ); + if ( (err != KErrNone) || + (!intranetSnap) ) + { + // SNAP is not intranet SNAP. + // Reset VPN toggle values and continue without using VPN user + // connection. + MPMLOGSTRING3( "CMPMServer::PrepareVpnUserConnection failed, \ +SNAP Id=%d, err=%d", snapId, err ); + + iMpmVpnToggleWatcher->ResetVpnToggleValues(); + return EFalse; + } + aMpmConnPref.SetIapId( 0 ); + aMpmConnPref.SetSnapId( snapId ); + } + else + { + // Validate that IAP is VPN IAP. + TMPMBearerType bearerType = EMPMBearerTypeNone; + TRAPD( err, bearerType = iCommsDatAccess->GetBearerTypeL( vpnIapId ) ); + if ( (err != KErrNone) || + (bearerType != EMPMBearerTypeVpn) ) + { + // IAP is not valid VPN IAP. + // Reset VPN toggle values and continue without using VPN user + // connection. + MPMLOGSTRING4( "CMPMServer::PrepareVpnUserConnection failed, \ +IAP Id=%d, err=%d, bearerType=%d", vpnIapId, err, bearerType ); + + iMpmVpnToggleWatcher->ResetVpnToggleValues(); + return EFalse; + } + aMpmConnPref.SetIapId( vpnIapId ); + aMpmConnPref.SetSnapId( 0 ); + } + + aMpmConnPref.SetConnType( TMpmConnPref::EConnTypeExplicit ); + + // VPN user connection will be activated. + return ETrue; + } + // --------------------------------------------------------------------------- // CMPMServer::UpdateOfflineMode // Offline watcher listens the offline mode and calls this when it's changed. diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/src/mpmserversession.cpp --- a/bearermanagement/mpm/src/mpmserversession.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/bearermanagement/mpm/src/mpmserversession.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -69,9 +69,19 @@ : CSession2(), iMyServer( aServer ), iConfirmDlgRoaming( NULL ), + iConnId( 0 ), + iNotifRequested( EFalse ), + iPreferredIAPRequested( EFalse ), + iOfflineFeatureSupported( EFalse ), + iEasyWlanIap( 0 ), + iAppUid( 0 ), iStoredIapInfo(), iIapSelection( NULL ), - iMigrateState( EMigrateNone ) + iMigrateState( EMigrateNone ), + iLastNotifiedIap( 0 ), + iMigrateIap( 0 ), + iUserConnection( 0 ), + iVpnUserConnectionUsed( EFalse ) { } @@ -108,12 +118,19 @@ // iMyServer.RemoveSession( this ); - if (UserConnection()) + if (VpnUserConnectionUsed()) + { + SetVpnUserConnectionUsed( EFalse ); + + MPMLOGSTRING( "CMPMServerSession::~CMPMServerSession -\ + VPN user connection usage ended" ) + } + else if (UserConnection()) { iMyServer.ClearUserConnection(); ClearUserConnection(); - MPMLOGSTRING( "CMPMServerSession::HandleServerApplicationConnectionEnds -\ + MPMLOGSTRING( "CMPMServerSession::~CMPMServerSession -\ User connection deactivated" ) } @@ -429,7 +446,21 @@ MPMLOGSTRING3( "CMPMServerSession::HandleServerChooseIapL - iap %d \ connType %d", mpmConnPref.IapId(), mpmConnPref.ConnType() ) - + + + if ( iMyServer.UseVpnUserConnection(mpmConnPref, + AppUid()) ) + { + // VPN user connection needs to be used. + TBool prepareOk = iMyServer.PrepareVpnUserConnection( mpmConnPref ); + if ( prepareOk ) + { + SetVpnUserConnectionUsed( ETrue ); + MPMLOGSTRING( "CMPMServerSession::HandleServerChooseIapL -\ + VPN user connection used" ) + } + } + iIapSelection->ChooseIapL( mpmConnPref ); if ( iAppUid == iMyServer.CsIdWatcher()->ConnectScreenId() ) @@ -708,7 +739,14 @@ // TConnectionId endId = aMessage.Int0(); - if (UserConnection()) + if (VpnUserConnectionUsed()) + { + SetVpnUserConnectionUsed( EFalse ); + + MPMLOGSTRING( "CMPMServerSession::HandleServerApplicationConnectionEnds -\ + VPN user connection usage ended" ) + } + else if (UserConnection()) { iMyServer.ClearUserConnection(); ClearUserConnection(); @@ -1510,8 +1548,10 @@ case EStarted: // Process error according to the fact that the connection // has already been started. + // KErrConnectionTerminated is received when user disconnects + // connection from Settings/Connection mgr. // - if ( ( error == KErrCancel ) || ( error == KErrTimedOut ) ) + if ( ( error == KErrCancel ) || ( error == KErrTimedOut ) || ( error == KErrConnectionTerminated ) ) { neededAction = EPropagateError; @@ -3425,6 +3465,24 @@ } // ----------------------------------------------------------------------------- +// CMPMServerSession::SetVpnUserConnectionUsed +// ----------------------------------------------------------------------------- +// +void CMPMServerSession::SetVpnUserConnectionUsed( const TBool aUseVpnUserConnection ) + { + if ( aUseVpnUserConnection ) + { + iVpnUserConnectionUsed = ETrue; + iMyServer.AddVpnUserConnectionSession(); + } + else + { + iVpnUserConnectionUsed = EFalse; + iMyServer.RemoveVpnUserConnectionSession(); + } + } + +// ----------------------------------------------------------------------------- // CMPMServerSession::IsWlanOnlyL // ----------------------------------------------------------------------------- // diff -r c5b848e6c7d1 -r bbb64eb3bdee bearermanagement/mpm/src/mpmvpntogglewatcher.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bearermanagement/mpm/src/mpmvpntogglewatcher.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -0,0 +1,242 @@ +/* +* 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: Listen VPN toggle key changes in central repository. +* +*/ + +#include +#include +#include "mpmlogger.h" +#include "mpmvpntogglewatcher.h" + +// --------------------------------------------------------------------------- +// Default constructor +// --------------------------------------------------------------------------- +// +CMpmVpnToggleWatcher::CMpmVpnToggleWatcher( MMpmVpnToggleWatcherNotify& aNotify ) + : CActive( EPriorityStandard ), + iNotify( aNotify ) + { + CActiveScheduler::Add( this ); + } + + +// --------------------------------------------------------------------------- +// Creates central repositor object +// --------------------------------------------------------------------------- +// +void CMpmVpnToggleWatcher::ConstructL() + { + TRAPD(err, iRepository = CRepository::NewL( KMpmVpnToggleCenRepUid )); + if ( err == KErrNone ) + { + StartL(); + } + } + +// --------------------------------------------------------------------------- +// Creates new object +// --------------------------------------------------------------------------- +// +CMpmVpnToggleWatcher* CMpmVpnToggleWatcher::NewL( MMpmVpnToggleWatcherNotify& aNotify ) + { + CMpmVpnToggleWatcher* self = new( ELeave ) CMpmVpnToggleWatcher(aNotify); + CleanupStack::PushL( self ); + self->ConstructL(); + CleanupStack::Pop( self ); + return self; + } + +// --------------------------------------------------------------------------- +// Destructor +// --------------------------------------------------------------------------- +// +CMpmVpnToggleWatcher::~CMpmVpnToggleWatcher() + { + Cancel(); + delete iRepository; + } + +// --------------------------------------------------------------------------- +// Order notification from changes +// --------------------------------------------------------------------------- +// +void CMpmVpnToggleWatcher::StartL() + { + MPMLOGSTRING( "CMpmVpnToggleWatcher::StartL" ) + + // Get the initial Connect screen ID from repository. + User::LeaveIfError( GetVpnToggleValues() ); + + // Request for notifications. + User::LeaveIfError( RequestNotifications() ); + } + +// --------------------------------------------------------------------------- +// Request notifications. +// --------------------------------------------------------------------------- +// +TInt CMpmVpnToggleWatcher::RequestNotifications() + { + MPMLOGSTRING( "CMpmVpnToggleWatcher::RequestNotifications" ) + + TInt err = iRepository->NotifyRequest( KMpmVpnTogglePreferVpn, iStatus ); + + if ( err == KErrNone ) + { + SetActive(); + } + else + { + MPMLOGSTRING2( "CMpmVpnToggleWatcher::RequestNotifications, ERROR: %d", err ) + } + return err; + } + +// --------------------------------------------------------------------------- +// Get VPN toggle values. +// --------------------------------------------------------------------------- +// +TInt CMpmVpnToggleWatcher::GetVpnToggleValues() + { + MPMLOGSTRING( "CMpmVpnToggleWatcher::GetVpnToggleValues" ) + + // Get values from central repository + TInt err = iRepository->Get( KMpmVpnTogglePreferVpn, iVpnConnectionPreferred ); + if ( err != KErrNone ) + { + MPMLOGSTRING2( "CMpmVpnToggleWatcher::GetVpnToggleValues, preferred value, ERROR: %d", err ) + return err; + } + TInt value(0); + err = iRepository->Get( KMpmVpnToggleIapId, value ); + if ( err != KErrNone ) + { + MPMLOGSTRING2( "CMpmVpnToggleWatcher::GetVpnToggleValues, IAP Id value, ERROR: %d", err ) + return err; + } + iVpnIapId = value; + err = iRepository->Get( KMpmVpnToggleSnapId, value ); + if ( err != KErrNone ) + { + MPMLOGSTRING2( "CMpmVpnToggleWatcher::GetVpnToggleValues, SNAP Id value, ERROR: %d", err ) + return err; + } + iSnapId = value; + return KErrNone; + } + +// --------------------------------------------------------------------------- +// Return VPN toggle value. +// --------------------------------------------------------------------------- +// +TBool CMpmVpnToggleWatcher::IsVpnConnectionPreferred() const + { + return iVpnConnectionPreferred; + } + +// --------------------------------------------------------------------------- +// Return VPN IAP Id. +// --------------------------------------------------------------------------- +// +TUint32 CMpmVpnToggleWatcher::VpnIapId() const + { + return iVpnIapId; + } + +// --------------------------------------------------------------------------- +// Return SNAP Id. +// --------------------------------------------------------------------------- +// +TUint32 CMpmVpnToggleWatcher::SnapId() const + { + return iSnapId; + } + +// --------------------------------------------------------------------------- +// Resets VPN toggle values. +// --------------------------------------------------------------------------- +// +void CMpmVpnToggleWatcher::ResetVpnToggleValues() + { + // Cancel listening VPN toggle value change + Cancel(); + + // Reset values. + iVpnConnectionPreferred = EFalse; + iVpnIapId = 0; + iSnapId = 0; + + TInt err = iRepository->Set( KMpmVpnTogglePreferVpn, 0 ); + if ( err == KErrNone ) + { + err = iRepository->Set( KMpmVpnToggleIapId, 0 ); + } + if ( err == KErrNone ) + { + err = iRepository->Set( KMpmVpnToggleSnapId, 0 ); + } + + MPMLOGSTRING2( "CMpmVpnToggleWatcher::ResetVpnToggleValues, ERROR: %d", err ) + + // Restart listening VPN toggle value change + RequestNotifications(); + } + +// --------------------------------------------------------------------------- +// From class CActive. +// When there is a change in VPN toggle key value, event is received in here +// --------------------------------------------------------------------------- +// +void CMpmVpnToggleWatcher::RunL() + { + if ( iStatus.Int() < KErrNone ) + { + MPMLOGSTRING2("CMpmVpnToggleWatcher::RunL, status: 0x%08X", iStatus.Int()) + iErrorCounter++; + if ( iErrorCounter > KMpmVpnToggleWatcherCenRepErrorThreshold ) + { + MPMLOGSTRING2("Over %d consecutive errors, stopping notifications permanently.", + KMpmVpnToggleWatcherCenRepErrorThreshold) + return; + } + // Else: Error occured but counter not expired. Proceed. + RequestNotifications(); + } + else + { + // Notification is received ok => Reset the counter. + iErrorCounter = 0; + + RequestNotifications(); + + // Get values from central repository + GetVpnToggleValues(); + + // Notify values. + TRAP_IGNORE( iNotify.SetVpnToggleValuesL( iVpnConnectionPreferred, + iVpnIapId, + iSnapId ) ); + } + } + +// --------------------------------------------------------------------------- +// From class CActive. +// Cancel outstanding request +// --------------------------------------------------------------------------- +// +void CMpmVpnToggleWatcher::DoCancel() + { + iRepository->NotifyCancel( KMpmVpnTogglePreferVpn ); + } diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cmmgr/cmmplugins/cmpluginembdestination/src/cmpluginembdestination.cpp --- a/cmmanager/cmmgr/cmmplugins/cmpluginembdestination/src/cmpluginembdestination.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cmmgr/cmmplugins/cmpluginembdestination/src/cmpluginembdestination.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -1,10 +1,10 @@ /* -* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies). +* 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 the License "Symbian Foundation License v1.0" +* under the terms of "Eclipse Public License v1.0" * which accompanies this distribution, and is available -* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html". +* at the URL "http://www.eclipse.org/legal/epl-v10.html". * * Initial Contributors: * Nokia Corporation - initial contribution. diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cpdestinationplugin/cpdestinationplugin.pro --- a/cmmanager/cpdestinationplugin/cpdestinationplugin.pro Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cpdestinationplugin/cpdestinationplugin.pro Thu Jun 24 11:36:05 2010 +0300 @@ -40,6 +40,14 @@ TRANSLATIONS = cpdestinationplugin.ts +# Temporary solution to fix tracecompiler +# When tracecompiler is fixed, this can be removed +symbian: { + + MMP_RULES += "USERINCLUDE traces" + +} + symbian: { TARGET.EPOCALLOWDLLDATA = 1 diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cpdestinationplugin/inc/cpdestinationgroup.h --- a/cmmanager/cpdestinationplugin/inc/cpdestinationgroup.h Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cpdestinationplugin/inc/cpdestinationgroup.h Thu Jun 24 11:36:05 2010 +0300 @@ -61,7 +61,8 @@ void createUncategorisedDestination(); void fetchDestinations(QList > &destinationList); void loadBearerPlugins(); - QString getDestinationAdditionalText(int iapCount); + QString getDestinationAdditionalText(QSharedPointer destination); + QString getDestinationAdditionalText(int destinationId); QString resolveDestinationIcon(QSharedPointer destination) const; private slots: diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cpdestinationplugin/src/cpdestinationentryitem.cpp --- a/cmmanager/cpdestinationplugin/src/cpdestinationentryitem.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cpdestinationplugin/src/cpdestinationentryitem.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -534,7 +534,11 @@ for (int i = 0; i < apIds.count(); i++) { CmConnectionMethodShim *cm; cm = cmm->connectionMethod(apIds.at(i)); - apList.append(QSharedPointer(cm)); + if (!cm->getBoolAttribute(CMManagerShim::CmHidden)) { + apList.append(QSharedPointer(cm)); + } else { + delete cm; + } } } else { destination = cmm->destination(mDestinationId); @@ -542,7 +546,12 @@ for (int i = 0; i < apCount; i++) { CmConnectionMethodShim *cm = NULL; cm = destination->connectionMethod(i); - apList.append(QSharedPointer(cm)); + if (!cm->getBoolAttribute(CMManagerShim::CmDestination) + && !cm->getBoolAttribute(CMManagerShim::CmHidden)) { + apList.append(QSharedPointer(cm)); + } else { + delete cm; + } } delete destination; } diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cpdestinationplugin/src/cpdestinationgroup.cpp --- a/cmmanager/cpdestinationplugin/src/cpdestinationgroup.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cpdestinationplugin/src/cpdestinationgroup.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -79,7 +79,7 @@ // Create Destination list for (int i = 0; i < destinationList.count(); i++) { QString iapCount = - getDestinationAdditionalText(destinationList.at(i)->connectionMethodCount()); + getDestinationAdditionalText(destinationList.at(i)); // Create new destination entry CpDestinationEntryItemData *destDataItem; @@ -126,13 +126,14 @@ void CpDestinationGroup::addDestination(const QString &dest, int destId) { OstTraceFunctionEntry0(CPDESTINATIONGROUP_ADDDESTINATION_ENTRY); - QString iapCount = getDestinationAdditionalText(0); // Create UI item for new destination CpDestinationEntryItemData *destDataItem; destDataItem = new CpDestinationEntryItemData(*mItemDataHelper); destDataItem->setContentWidgetData(QString("text"), dest); - destDataItem->setContentWidgetData(QString("additionalText"), iapCount); + destDataItem->setContentWidgetData( + QString("additionalText"), + hbTrId("txt_occ_dblist_internet_val_no_access_points")); destDataItem->setDestinationId(destId); destDataItem->setDestinationName(dest); connect(destDataItem, SIGNAL(destChanged()), this, SLOT(updateDestinationInformation())); @@ -206,7 +207,6 @@ void CpDestinationGroup::updateDestinationInformation() { OstTraceFunctionEntry0(CPDESTINATIONGROUP_UPDATEDESTINATIONINFORMATION_ENTRY); - int apCount = 0; // "Add Destination" child is removed from count (childCount() -1) for (int i = 0; i < childCount() - 1; i++) { CpDestinationEntryItemData *destDataItem = @@ -222,16 +222,9 @@ this->removeChild(index); mUncategorisedShown = false; continue; - } - apCount = apList.count(); - } else { - CmDestinationShim *destination; - destination = mCmManager->destination(destDataItem->destinationId()); - apCount = destination->connectionMethodCount(); - delete destination; + } } - - QString iapCount = getDestinationAdditionalText(apCount); + QString iapCount = getDestinationAdditionalText(destDataItem->destinationId()); destDataItem->setContentWidgetData(QString("additionalText"), iapCount); destDataItem->setContentWidgetData(QString("text"), destDataItem->destinationName()); } @@ -252,7 +245,7 @@ CpDestinationEntryItemData *destDataItem; destDataItem = new CpDestinationEntryItemData(*mItemDataHelper); destDataItem->setContentWidgetData(QString("text"), hbTrId("txt_occ_dblist_uncategorized")); - QString iapCount = getDestinationAdditionalText(apList.count()); + QString iapCount = getDestinationAdditionalText(0); destDataItem->setContentWidgetData(QString("additionalText"),iapCount); destDataItem->setDestinationId(0); destDataItem->setDestinationName(hbTrId("txt_occ_dblist_uncategorized")); @@ -290,6 +283,8 @@ destination = mCmManager->destination(destArray[i]); if (!destination->isHidden()) { destinationList.append(QSharedPointer(destination)); + } else { + delete destination; } } } catch (const std::exception&) { @@ -321,14 +316,25 @@ } /*! - Helper function to be used in localisation. + Helper function to be used in localisation. (Overloaded) \return Returns correct localized QString according to access point count. */ -QString CpDestinationGroup::getDestinationAdditionalText(int iapCount) +QString CpDestinationGroup::getDestinationAdditionalText(QSharedPointer destination) { OstTraceFunctionEntry0(CPDESTINATIONGROUP_GETDESTINATIONADDITIONALTEXT_ENTRY); QString result = ""; + int iapCount = destination->connectionMethodCount(); + int counter = 0; + for (int i = 0; i < iapCount; i++) { + CmConnectionMethodShim *cm = destination->connectionMethod(i); + if (cm->getBoolAttribute(CMManagerShim::CmDestination) + || cm->getBoolAttribute(CMManagerShim::CmHidden)) { + counter++; + } + delete cm; + } + iapCount = iapCount - counter; if (iapCount > 0) { result = hbTrId("txt_occ_dblist_internet_val_ln_access_points", iapCount); } else { @@ -339,6 +345,52 @@ } /*! + Helper function to be used in localisation. (Overloaded) + + \return Returns correct localized QString according to access point count. + */ +QString CpDestinationGroup::getDestinationAdditionalText(int destinationId) +{ + OstTraceFunctionEntry0(CPDESTINATIONGROUP_GETDESTINATIONADDITIONALTEXT2_ENTRY); + QString result = ""; + int iapCount = 0; + int counter = 0; + if (destinationId == 0) { + QList apList; + mCmManager->connectionMethod(apList); + iapCount = apList.count(); + for (int i = 0; i < iapCount; i++) { + CmConnectionMethodShim *cm = mCmManager->connectionMethod(apList[i]); + if (cm->getBoolAttribute(CMManagerShim::CmDestination) + || cm->getBoolAttribute(CMManagerShim::CmHidden)) { + counter++; + } + delete cm; + } + } else { + CmDestinationShim *destination = mCmManager->destination(destinationId); + iapCount = destination->connectionMethodCount(); + for (int i = 0; i < iapCount; i++) { + CmConnectionMethodShim *cm = destination->connectionMethod(i); + if (cm->getBoolAttribute(CMManagerShim::CmDestination) + || cm->getBoolAttribute(CMManagerShim::CmHidden)) { + counter++; + } + delete cm; + } + delete destination; + } + iapCount = iapCount - counter; + if (iapCount > 0) { + result = hbTrId("txt_occ_dblist_internet_val_ln_access_points", iapCount); + } else { + result = hbTrId("txt_occ_dblist_internet_val_no_access_points"); + } + OstTrace0(TRACE_FLOW, CPDESTINATIONGROUP_GETDESTINATIONADDITIONALTEXT2_EXIT, "Exit"); + return result; +} + +/*! Helper function for showing icons. \return Returns string representing given destination's icon diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cpipsettingsplugin/cpipsettingsplugin.pro --- a/cmmanager/cpipsettingsplugin/cpipsettingsplugin.pro Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cpipsettingsplugin/cpipsettingsplugin.pro Thu Jun 24 11:36:05 2010 +0300 @@ -35,6 +35,14 @@ TRANSLATIONS = cpipsettingsplugin.ts +# Temporary solution to fix tracecompiler +# When tracecompiler is fixed, this can be removed +symbian: { + + MMP_RULES += "USERINCLUDE traces" + +} + symbian: { TARGET.EPOCALLOWDLLDATA = 1 diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cpipsettingsplugin/src/cpipsettingsview.cpp --- a/cmmanager/cpipsettingsplugin/src/cpipsettingsview.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cpipsettingsplugin/src/cpipsettingsview.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -56,13 +56,14 @@ { HbDataForm *form = new HbDataForm(); this->setWidget(form); + form->setHeading(hbTrId("txt_occ_subhead_network_settings")); CpPluginUtility::addCpItemPrototype(form); HbDataFormModel *model = new HbDataFormModel(form); // The parameter given as 0 is a HbDataForm pointer, not parent mItemDataHelper = new CpItemDataHelper(0); mItemDataHelper->setParent(this); - + HbDataFormModelItem *modelItem; CpPluginInterface *plugin = NULL; QDir pluginsDir("\\resource\\qt\\plugins\\controlpanel"); diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cppacketdataapplugin/inc/cppacketdataapview.h --- a/cmmanager/cppacketdataapplugin/inc/cppacketdataapview.h Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cppacketdataapplugin/inc/cppacketdataapview.h Thu Jun 24 11:36:05 2010 +0300 @@ -73,7 +73,6 @@ void connectionNameChanged(); void accessPointNameChanged(); void userNameChanged(); - void promptForAuthChanged(int state); void passwordChanged(); void authenticationChanged(int index); void homepageChanged(); @@ -94,8 +93,6 @@ HbDataFormModelItem *mAccessPointNameItem; //! "User name" setting item HbDataFormModelItem *mUserNameItem; - //! "Prompt" setting item - HbDataFormModelItem *mPromptForAuthItem; //! "Password" setting item HbDataFormModelItem *mPasswordItem; //! "Authentication" setting item @@ -108,8 +105,6 @@ CmConnectionMethodShim *mCmConnectionMethod; //! Message box for info notes QSharedPointer mMessageBox; - //! Maps checkbox value to CMManagerShim::PacketDataIFPromptForAuth value - QMap mPromptForAuthMap; //! Maps authentication combobox index to CMManagerShim::PacketDataDisablePlainTextAuth value QMap mAuthenticationMap; diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cppacketdataapplugin/src/cppacketdataapview.cpp --- a/cmmanager/cppacketdataapplugin/src/cppacketdataapview.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cppacketdataapplugin/src/cppacketdataapview.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -69,7 +69,6 @@ mConnectionNameItem(0), mAccessPointNameItem(0), mUserNameItem(0), - mPromptForAuthItem(0), mPasswordItem(0), mAuthenticationItem(0), mHomepageItem(0), @@ -170,23 +169,6 @@ SLOT(userNameChanged())); mApSettingsGroupItem->appendChild(mUserNameItem); - // Prompt for password - mPromptForAuthItem = new CpSettingFormItemData( - HbDataFormModelItem::CheckBoxItem, - hbTrId("txt_occ_setlabel_password")); - mPromptForAuthItem->setContentWidgetData("text", - hbTrId("txt_occ_setlabel_password_val_prompt")); - // Construct map to link item values to setting values - mPromptForAuthMap.insert(Qt::Unchecked, false); // Do not prompt - mPromptForAuthMap.insert(Qt::Checked, true); // Prompt for password - // Connect signal and add item to group - mForm->addConnection( - mPromptForAuthItem, - SIGNAL(stateChanged(int)), - this, - SLOT(promptForAuthChanged(int))); - mApSettingsGroupItem->appendChild(mPromptForAuthItem); - // Password mPasswordItem = new CpSettingFormItemData( HbDataFormModelItem::TextItem, @@ -263,17 +245,6 @@ CMManagerShim::PacketDataIFAuthName); mUserNameItem->setContentWidgetData("text", userName); - // Prompt for password - bool promptForAuth = mCmConnectionMethod->getBoolAttribute( - CMManagerShim::PacketDataIFPromptForAuth); - mPromptForAuthItem->setContentWidgetData("checkState", - mPromptForAuthMap.key(promptForAuth)); - if (promptForAuth) { - mPasswordItem->setEnabled(false); - } else { - mPasswordItem->setEnabled(true); - } - // Password QString password = mCmConnectionMethod->getStringAttribute( CMManagerShim::PacketDataIFAuthPass); @@ -449,28 +420,6 @@ } /*! - Updates prompt for password setting to CommsDat. -*/ -void CpPacketDataApView::promptForAuthChanged(int state) -{ - OstTraceFunctionEntry0(CPPACKETDATAAPVIEW_PROMPTFORAUTHCHANGED_ENTRY); - - // If prompt for auth is selected, password edit should be disabled. - if (state == Qt::Checked) { - mPasswordItem->setEnabled(false); - } else { - mPasswordItem->setEnabled(true); - } - // Update to CommsDat - mCmConnectionMethod->setBoolAttribute( - CMManagerShim::PacketDataIFPromptForAuth, - mPromptForAuthMap.value(static_cast(state))); - (void)tryUpdate(); - - OstTraceFunctionExit0(CPPACKETDATAAPVIEW_PROMPTFORAUTHCHANGED_EXIT); -} - -/*! Updates password to CommsDat. */ void CpPacketDataApView::passwordChanged() diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cppacketdataapplugin/tsrc/ut/testcppacketdataapplugin.cpp --- a/cmmanager/cppacketdataapplugin/tsrc/ut/testcppacketdataapplugin.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cppacketdataapplugin/tsrc/ut/testcppacketdataapplugin.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -401,36 +401,6 @@ } /** - * Tests "prompt" password checkbox. - */ -void TestCpPacketDataApPlugin::tcChangePromptPassword() -{ - // Ensure prompt for password is unchecked - bool prompt = subGetBool(CMManagerShim::PacketDataIFPromptForAuth); - if (prompt) { - // Disable prompt for password - HbAutoTest::mouseClick(mMainWindow, mPasswordPromptWidget); - } - - // Enable prompt for password and verify - HbAutoTest::mouseClick(mMainWindow, mPasswordPromptWidget); - subVerifyBool( - CMManagerShim::PacketDataIFPromptForAuth, - true); - - // Verify that password lineedit is disabled, following steps will - // fail if editing is allowed - HbAutoTest::mouseClick(mMainWindow, mPasswordWidget); - QTest::qWait(waitTime); - - // Disable prompt for password and verify - HbAutoTest::mouseClick(mMainWindow, mPasswordPromptWidget); - subVerifyBool( - CMManagerShim::PacketDataIFPromptForAuth, - false); -} - -/** * Tests changing of password. */ void TestCpPacketDataApPlugin::tcChangePassword() @@ -1208,9 +1178,6 @@ mUserNameWidget = subGetWidgetByIndex( mTestView->mForm, iterator.index(2, apGroupIndex)); - mPasswordPromptWidget = subGetWidgetByIndex( - mTestView->mForm, - iterator.index(3, apGroupIndex)); mPasswordWidget = subGetWidgetByIndex( mTestView->mForm, iterator.index(4, apGroupIndex)); diff -r c5b848e6c7d1 -r bbb64eb3bdee cmmanager/cppacketdataapplugin/tsrc/ut/testcppacketdataapplugin.h --- a/cmmanager/cppacketdataapplugin/tsrc/ut/testcppacketdataapplugin.h Thu Jun 10 16:00:16 2010 +0300 +++ b/cmmanager/cppacketdataapplugin/tsrc/ut/testcppacketdataapplugin.h Thu Jun 24 11:36:05 2010 +0300 @@ -58,7 +58,6 @@ void tcChangeUserName(); void tcChangeUserName_data(); void tcScrollToBottom(); - void tcChangePromptPassword(); void tcChangePassword(); void tcChangePassword_data(); void tcChangeAuthenticationMode(); @@ -128,7 +127,6 @@ HbWidget *mConnectionNameWidget; HbWidget *mAccessPointNameWidget; HbWidget *mUserNameWidget; - HbWidget *mPasswordPromptWidget; HbWidget *mPasswordWidget; HbWidget *mAuthenticationWidget; HbWidget *mHomepageWidget; diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/cellularindicatorplugin/inc/cellularindicatorplugin.h --- a/connectionmonitoring/cellularindicatorplugin/inc/cellularindicatorplugin.h Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/cellularindicatorplugin/inc/cellularindicatorplugin.h Thu Jun 24 11:36:05 2010 +0300 @@ -69,10 +69,6 @@ // Used to get indicator data (icon or text) QVariant indicatorData(int role) const; -private slots: - // handler for error codes - void processError(QProcess::ProcessError err); - private: // data // Disable copy constructor diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/cellularindicatorplugin/src/cellularindicatorplugin.cpp --- a/connectionmonitoring/cellularindicatorplugin/src/cellularindicatorplugin.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/cellularindicatorplugin/src/cellularindicatorplugin.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -16,7 +16,7 @@ */ #include -#include +#include #include #include #include @@ -94,12 +94,7 @@ Q_UNUSED(indicatorType) // Install localization - QTranslator *translator = new QTranslator(this); - - QString lang = QLocale::system().name(); - QString path = "Z:/resource/qt/translations/"; - translator->load("cellularindicatorplugin_" + lang, path); - qApp->installTranslator(translator); + HbTranslator *translator(new HbTranslator("cellularindicatorplugin")); OstTraceFunctionExit0( CELLULARINDICATORPLUGIN_CREATEINDICATOR_EXIT ); return this; @@ -156,15 +151,13 @@ Q_UNUSED(type) bool handled = false; + QVariantMap data; switch(type) { case InteractionActivated: - //connect error() to slot processError() to get error, - QObject::connect( &process, SIGNAL(error(QProcess::ProcessError)), - this, SLOT(processError(QProcess::ProcessError))); + // Emit a signal that will inform the client to start the connectionview client + emit userActivated(data); - // Show connection view - process.start("connview"); handled = true; break; @@ -228,26 +221,3 @@ return ret; } -/*! - The processError is a handler for error codes. -*/ -void CellularIndicatorPlugin::processError(QProcess::ProcessError err) - { - OstTraceFunctionEntry1(CELLULARINDICATORPLUGIN_PROCESSERROR_ENTRY, this); - - switch (err) { - case QProcess::FailedToStart: - case QProcess::Crashed: - case QProcess::Timedout: - case QProcess::ReadError: - case QProcess::WriteError: - case QProcess::UnknownError: - OstTrace1( CELLULARINDICATORPLUGIN_ERR,PROCESSERROR_KNOWN,"Process Error %u", err); - break; - default: - OstTrace1( CELLULARINDICATORPLUGIN_ERR,PROCESSERROR_UNKNOWN,"Unknown Process Error %u", err); - break; - } - OstTraceFunctionExit1(CELLULARINDICATORPLUGIN_PROCESSERROR_EXIT, this); - } - diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/data/ConnectionMonitorUi_reg.rss --- a/connectionmonitoring/connectionmonitorui/data/ConnectionMonitorUi_reg.rss Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/data/ConnectionMonitorUi_reg.rss Thu Jun 24 11:36:05 2010 +0300 @@ -17,7 +17,7 @@ #include -#include +#include #include UID2 KUidAppRegistrationResourceFile diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/ConnectionInfoBase.cpp --- a/connectionmonitoring/connectionmonitorui/src/ConnectionInfoBase.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/ConnectionInfoBase.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -21,7 +21,7 @@ #include #include #include -#include +#include #include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiAppUi.cpp --- a/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiAppUi.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiAppUi.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include "ConnectionMonitorUi.hrh" #include "ConnectionMonitorUiAppUi.h" #include "ConnectionMonitorUiView.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiContainer.cpp --- a/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiContainer.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiContainer.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -33,7 +33,7 @@ #include "FeatureManagerWrapper.h" #include "ActiveWrapper.h" -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiDetailsContainer.cpp --- a/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiDetailsContainer.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiDetailsContainer.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -22,7 +22,7 @@ #include //for CNaviPane #include //for CAknNavigationDecorator #include -#include +#include #include "ConnectionArray.h" #include "ConnectionMonitorUiLogger.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiDetailsView.cpp --- a/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiDetailsView.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiDetailsView.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -18,7 +18,7 @@ // INCLUDE FILES -#include +#include #include "ConnectionMonitorUiDetailsView.h" #include "ConnectionMonitorUiDetailsContainer.h" #include "ConnectionMonitorUi.hrh" diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiView.cpp --- a/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiView.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/ConnectionMonitorUiView.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES #include #include //for CAknTitlePane -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/CsdConnectionInfo.cpp --- a/connectionmonitoring/connectionmonitorui/src/CsdConnectionInfo.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/CsdConnectionInfo.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES //#include #include -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/EasyWLANConnectionInfo.cpp --- a/connectionmonitoring/connectionmonitorui/src/EasyWLANConnectionInfo.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/EasyWLANConnectionInfo.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -18,7 +18,7 @@ // INCLUDE FILES -#include +#include #include #include "EasyWLANConnectionInfo.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/GprsConnectionInfo.cpp --- a/connectionmonitoring/connectionmonitorui/src/GprsConnectionInfo.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/GprsConnectionInfo.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -20,7 +20,7 @@ // INCLUDE FILES //#include #include -#include +#include #include //#include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionmonitorui/src/WlanConnectionInfo.cpp --- a/connectionmonitoring/connectionmonitorui/src/WlanConnectionInfo.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionmonitorui/src/WlanConnectionInfo.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -18,7 +18,7 @@ // INCLUDE FILES -#include +#include #include #include "ConnectionArray.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionview/res/connectionview.css --- a/connectionmonitoring/connectionview/res/connectionview.css Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionview/res/connectionview.css Thu Jun 24 11:36:05 2010 +0300 @@ -31,4 +31,5 @@ { font-variant: secondary; text-height: var(hb-param-text-height-tiny); + text-line-count-max: 1; } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/connectionview/src/connectionview.cpp --- a/connectionmonitoring/connectionview/src/connectionview.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/connectionview/src/connectionview.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -15,7 +15,7 @@ * */ -#include +#include #include #include #include @@ -55,11 +55,7 @@ { OstTraceFunctionEntry0( CONNECTIONVIEW_CONNECTIONVIEW_ENTRY ); // Install localization - QTranslator *translator = new QTranslator(this); - QString lang = QLocale::system().name(); - QString path = "Z:/resource/qt/translations/"; - translator->load("connectionview_" + lang, path); - qApp->installTranslator(translator); + HbTranslator *translator(new HbTranslator("connectionview")); // Register custom layout location bool registerStatus = HbStyleLoader::registerFilePath(":/layout/"); diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/indicatorobserver/inc/indicatorobserver.h --- a/connectionmonitoring/indicatorobserver/inc/indicatorobserver.h Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/indicatorobserver/inc/indicatorobserver.h Thu Jun 24 11:36:05 2010 +0300 @@ -25,6 +25,7 @@ #include class XQSettingsManager; +class HbIndicator; QTM_USE_NAMESPACE @@ -61,12 +62,16 @@ void activateWlanIndicatorPlugin(QList list); void deactivateWlanIndicatorPlugin(); - + private slots: void updateWlanRadioStatus(const XQSettingsKey &key, const QVariant &value); void handleConfigurationChanged(const QNetworkConfiguration& config); + void userActivateCellularIndicator(const QString &type, const QVariantMap &data); + + void userActivateWlanIndicator(const QString &type, const QVariantMap &data); + private: /*! Pointer to network configuration manager @@ -107,6 +112,16 @@ Indicates whether cellular indicator plugin is activated */ bool mCellularIndicatorIsActivated; + + /*! + Pointer to the WLAN indicator + */ + HbIndicator *mWlanIndicator; + + /*! + Pointer to the cellular indicator + */ + HbIndicator *mCellularIndicator; friend class ObserverTester; diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionmonitoring/indicatorobserver/src/indicatorobserver.cpp --- a/connectionmonitoring/indicatorobserver/src/indicatorobserver.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionmonitoring/indicatorobserver/src/indicatorobserver.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -47,7 +47,9 @@ mWlanEnabled(0), mWlanForceDisabled(0), mWlanIndicatorIsActivated(false), - mCellularIndicatorIsActivated(false) + mCellularIndicatorIsActivated(false), + mWlanIndicator(NULL), + mCellularIndicator(NULL) { OstTrace0(TRACE_FLOW, INDICATOROBSERVER_CONSTRUCTOR_ENTRY, "-->"); @@ -98,6 +100,7 @@ OstTrace0(TRACE_FLOW, INDICATOROBSERVER_CONSTRUCTOR_EXIT, "<--"); } + /*! IndicatorObserver::~IndicatorObserver */ @@ -124,6 +127,9 @@ delete mActiveWlanConfigurations; } + delete mCellularIndicator; + delete mWlanIndicator; + OstTrace0(TRACE_FLOW, INDICATOROBSERVER_DESTRUCTOR_EXIT, "<--"); } @@ -135,6 +141,25 @@ OstTrace0(TRACE_FLOW, INDICATOROBSERVER_INITIALIZEINDICATORS_ENTRY, "-->"); + // create the indicators and make connections + mCellularIndicator = new HbIndicator(); + // connect the user activated slot here, so that the indicator know to start the connview in case + // the user taps the indicator + bool conn = QObject::connect( + mCellularIndicator, + SIGNAL(userActivated(const QString&, const QVariantMap&)), + this, + SLOT(userActivateCellularIndicator(const QString&, const QVariantMap&))); + + mWlanIndicator = new HbIndicator(); + // connect the user activated slot here, so that the indicator know to start the wlan sniffer in case + // the user taps the indicator + conn = QObject::connect( + mWlanIndicator, + SIGNAL(userActivated(const QString&, const QVariantMap&)), + this, + SLOT(userActivateWlanIndicator(const QString&, const QVariantMap&))); + findActiveConfigurations(); updateWlanIndicator(); updateCellularIndicator(); @@ -285,6 +310,30 @@ OstTrace0(TRACE_FLOW, INDICATOROBSERVER_HANDLECONFIGURATIONCHANGED_EXIT, "<--"); } +void IndicatorObserver::userActivateCellularIndicator(const QString &type, const QVariantMap &data) +{ + OstTrace0(TRACE_FLOW, INDICATOROBSERVER_USERACTIVATECELLULARINDICATOR_ENTRY, "-->"); + + Q_UNUSED(data); + Q_UNUSED(type); + // Show connection view + QProcess::startDetached("connview"); + + OstTrace0(TRACE_FLOW, INDICATOROBSERVER_USERACTIVATECELLULARINDICATOR_EXIT, "<--"); +} + +void IndicatorObserver::userActivateWlanIndicator(const QString &type, const QVariantMap &data) +{ + OstTrace0(TRACE_FLOW, INDICATOROBSERVER_USERACTIVATEWLANINDICATOR_ENTRY, "-->"); + + Q_UNUSED(data); + Q_UNUSED(type); + // Show wlan list view + QProcess::startDetached("WlanSniffer"); + + OstTrace0(TRACE_FLOW, INDICATOROBSERVER_USERACTIVATEWLANINDICATOR_EXIT, "<--"); +} + /*! IndicatorObserver::activateCellularIndicatorPlugin */ @@ -292,9 +341,8 @@ { OstTrace0(TRACE_FLOW, INDICATOROBSERVER_ACTIVATECELLULARINDICATORPLUGIN_ENTRY, "-->"); - HbIndicator indicator; - bool success = indicator.activate("com.nokia.hb.indicator.connectivity.cellularindicatorplugin/1.0", list); - + bool success = mCellularIndicator->activate("com.nokia.hb.indicator.connectivity.cellularindicatorplugin/1.0", list); + if (!success) { mCellularIndicatorIsActivated = false; OstTrace0(TRACE_FLOW, INDICATOROBSERVER_CELLULAR_INDICATOR_ACTIVATION_FAILED, "Cellular indicator activation failed"); @@ -312,8 +360,7 @@ { OstTrace0(TRACE_FLOW, INDICATOROBSERVER_DEACTIVATECELLULARINDICATORPLUGIN_ENTRY, "-->"); - HbIndicator indicator; - indicator.deactivate("com.nokia.hb.indicator.connectivity.cellularindicatorplugin/1.0"); + mCellularIndicator->deactivate("com.nokia.hb.indicator.connectivity.cellularindicatorplugin/1.0"); mCellularIndicatorIsActivated = false; OstTrace0(TRACE_FLOW, INDICATOROBSERVER_DEACTIVATECELLULARINDICATORPLUGIN_EXIT, "<--"); @@ -325,10 +372,9 @@ void IndicatorObserver::activateWlanIndicatorPlugin(QList list) { OstTrace0(TRACE_FLOW, INDICATOROBSERVER_ACTIVATEWLANINDICATORPLUGIN_ENTRY, "-->"); - - HbIndicator indicator; - bool success = indicator.activate("com.nokia.hb.indicator.connectivity.wlanindicatorplugin/1.0", list); + bool success = mWlanIndicator->activate("com.nokia.hb.indicator.connectivity.wlanindicatorplugin/1.0", list); + if (!success) { mWlanIndicatorIsActivated = false; OstTrace0(TRACE_FLOW, INDICATOROBSERVER_WLAN_INDICATOR_ACTIVATION_FAILED, "WLAN indicator activation failed"); @@ -346,8 +392,7 @@ { OstTrace0(TRACE_FLOW, INDICATOROBSERVER_DEACTIVATEWLANINDICATORPLUGIN_ENTRY, "-->"); - HbIndicator indicator; - indicator.deactivate("com.nokia.hb.indicator.connectivity.wlanindicatorplugin/1.0"); + mWlanIndicator->deactivate("com.nokia.hb.indicator.connectivity.wlanindicatorplugin/1.0"); mWlanIndicatorIsActivated = false; OstTrace0(TRACE_FLOW, INDICATOROBSERVER_DEACTIVATEWLANINDICATORPLUGIN_EXIT, "<--"); diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifInc/NetworkInfoArray.h --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifInc/NetworkInfoArray.h Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifInc/NetworkInfoArray.h Thu Jun 24 11:36:05 2010 +0300 @@ -83,7 +83,7 @@ * @return index value of network in the array, or -1 if there * is no network the given Id */ - TInt GetArrayIndex( TName aNetworkName ) const; + TInt GetArrayIndex( TName& aNetworkName ) const; /** * Add only new network to the array @@ -125,4 +125,4 @@ CArrayPtrFlat* iNetworkInfoArray; ///< Owned. }; -#endif // NETWORKINFOARRAY_NOTIF_H_INCLUDED \ No newline at end of file +#endif // NETWORKINFOARRAY_NOTIF_H_INCLUDED diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifInc/WepWpaQueryDlg.h --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifInc/WepWpaQueryDlg.h Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifInc/WepWpaQueryDlg.h Thu Jun 24 11:36:05 2010 +0300 @@ -88,7 +88,7 @@ * @param aResId resource id * @return - */ - void CWepWpaQueryDlg::ShowInfoNoteL( TInt aResId ); + void ShowInfoNoteL( TInt aResId ); /** * PreLayoutDynInitL diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveOfflineWlanDisabledNote.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveOfflineWlanDisabledNote.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveOfflineWlanDisabledNote.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "ActiveOfflineWlanDisabledNote.h" -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveSelectWLanDlgPlugin.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveSelectWLanDlgPlugin.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveSelectWLanDlgPlugin.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -18,7 +18,7 @@ // INCLUDE FILES #include -#include +#include #include #include #include @@ -84,7 +84,11 @@ CActiveSelectWLanDlgPlugin::CActiveSelectWLanDlgPlugin( CSelectWLanDlgPlugin* aPlugin ) : CActive( EPriorityStandard ), - iPlugin( aPlugin ) + iPlugin( aPlugin ), + iWlanDataProv( NULL ), + iPeriodic( NULL), + iResultsListDialog( NULL), + iWaitDialog( NULL ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveWLANNetworkUnavailableNote.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveWLANNetworkUnavailableNote.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ActiveWLANNetworkUnavailableNote.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include "ActiveWLANNetworkUnavailableNote.h" -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ConnUiUtilsNotif.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ConnUiUtilsNotif.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/ConnUiUtilsNotif.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -46,8 +46,9 @@ // EXPORT_C CArrayPtr* NotifierArray() { - CArrayPtrFlat* array = new (ELeave) - CArrayPtrFlat( KPluginGranularity ); + CArrayPtrFlat* array = NULL; + TRAP_IGNORE( array = new (ELeave) + CArrayPtrFlat( KPluginGranularity ); ) if ( array ) { diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/EasyWepDlgNotif.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/EasyWepDlgNotif.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/EasyWepDlgNotif.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -21,7 +21,7 @@ #include "WepWpaQueryDlg.h" #include "ConnUiUtilsNotif.h" -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/EasyWpaDlgNotif.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/EasyWpaDlgNotif.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/EasyWpaDlgNotif.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -21,7 +21,7 @@ #include "WepWpaQueryDlg.h" #include "ConnUiUtilsNotif.h" -#include +#include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/NetworkInfoArray.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/NetworkInfoArray.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/NetworkInfoArray.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -37,6 +37,7 @@ // --------------------------------------------------------- // CNetworkInfoArray::CNetworkInfoArray() +: iNetworkInfoArray( NULL ) { } @@ -121,7 +122,7 @@ // CNetworkInfoArray::GetArrayIndex // --------------------------------------------------------- // -TInt CNetworkInfoArray::GetArrayIndex( TName aNetworkName ) const +TInt CNetworkInfoArray::GetArrayIndex( TName& aNetworkName ) const { CLOG_ENTERFN( "CNetworkInfoArray::GetArrayIndex" ); diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/NetworkInfoBase.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/NetworkInfoBase.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/NetworkInfoBase.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -19,7 +19,7 @@ // INCLUDE FILES #include -#include +#include #include "NetworkInfoBase.h" #include "ConnUiUtilsNotif.hrh" @@ -35,9 +35,12 @@ // --------------------------------------------------------- // CNetworkInfoBase::CNetworkInfoBase() -: iOthersEntry( EFalse ), - iProtectedSetupSupported( EFalse ) - +: iSignalStrength( ESignalStrengthMin ), + iNetworkMode( ENetworkModeInfrastructure ), + iSecurityMode( EWlanConnectionSecurityOpen ), + iOthersEntry( EFalse ), + iProtectedSetupSupported( EFalse ), + iExtendedSecurityMode( EWlanConnectionExtentedSecurityModeOpen ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/OfflineWlanNoteDlg.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/OfflineWlanNoteDlg.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/OfflineWlanNoteDlg.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -37,7 +37,8 @@ // --------------------------------------------------------- // COfflineWlanNoteDlg::COfflineWlanNoteDlg( COfflineWlanNoteNotif* aNotif ) -: iNotif( aNotif ) +: iNotif( aNotif ), + iExpiryTimer( NULL ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/OfflineWlanNoteNotif.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/OfflineWlanNoteNotif.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/OfflineWlanNoteNotif.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -25,7 +25,7 @@ #include // For RProperty #include // For KPSUidUikon and KUikGlobalNotesAllowed. -#include +#include // ================= MEMBER FUNCTIONS ======================= diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/SelectWLANDlg.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/SelectWLANDlg.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/SelectWLANDlg.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include #include @@ -65,7 +65,9 @@ : CAknListQueryDialog( &aIndex ), iPlugin( aPlugin ), iNetworkArray( aNetworkArray ), - iFromOkToExit( EFalse ) + iFromOkToExit( EFalse ), + iWaitDialog( NULL ), + iExpiryTimer( NULL ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/WepWpaQueryDlg.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/WepWpaQueryDlg.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/WepWpaQueryDlg.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -20,7 +20,7 @@ #include #include #include -#include +#include #include #include "WepWpaQueryDlg.h" @@ -61,7 +61,8 @@ : CAknTextQueryDialog( aDataText ), iNotif( aNotif ), iDialogType( aDialogType ), - iHex( aHex ) + iHex( aHex ), + iExpiryTimer( NULL) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/WlanNetworkDataProvider.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/WlanNetworkDataProvider.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/WlanNetworkDataProvider.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -64,7 +64,12 @@ // --------------------------------------------------------- // CWlanNetworkDataProvider::CWlanNetworkDataProvider() -: CBase() +: CBase(), +#ifndef __WINS__ + iWlanMgmt( NULL ), + iScanInfo( NULL ), +#endif // !__WINS__ + iNetworkInfoArray( NULL ) { } @@ -85,7 +90,7 @@ } delete iWlanMgmt; delete iScanInfo; -#endif +#endif // !__WINS__ CLOG_LEAVEFN( "CWlanNetworkDataProvider::~CWlanNetworkDataProvider" ); } @@ -277,7 +282,7 @@ TWlanConnectionExtentedSecurityMode aExtSecurityMode, TBool aProtectedSetupSupported ) { - TBuf networkName16; + TName networkName16; networkName16.Copy( aNetworkName ); TInt index = iNetworkInfoArray->GetArrayIndex( networkName16 ); diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/cellulardataconfirmation.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/cellulardataconfirmation.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/cellulardataconfirmation.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -18,7 +18,7 @@ // INCLUDE FILES #include -#include +#include #include #include "ConnectionDialogsLogger.h" #include "cellulardataconfirmation.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/easywapidlgnotif.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/easywapidlgnotif.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/easywapidlgnotif.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -20,7 +20,7 @@ #include "WepWpaQueryDlg.h" #include "ConnUiUtilsNotif.h" -#include +#include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/nowlansdiscreetpopup.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/nowlansdiscreetpopup.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/nowlansdiscreetpopup.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include "nowlansdiscreetpopup.h" diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/wlanpowersavetest.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/wlanpowersavetest.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/wlanpowersavetest.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -24,7 +24,7 @@ #include #include -#include +#include // ================= MEMBER FUNCTIONS ======================= // diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/wlanpowersavetestnotif.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/wlanpowersavetestnotif.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/wlanpowersavetestnotif.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -24,7 +24,7 @@ #include "ConnUiUtilsNotif.h" #include "ConnectionDialogsLogger.h" -#include +#include #include #include @@ -39,7 +39,9 @@ // CWlanPowerSaveQueryNotif::CWlanPowerSaveQueryNotif() : - iDisable( EFalse ) + iDialog( NULL ), + iDisable( EFalse ), + iExitAsync( NULL ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ActiveCChangeConnectionDlg.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ActiveCChangeConnectionDlg.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ActiveCChangeConnectionDlg.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -26,7 +26,7 @@ #include #endif -#include +#include #include "ActiveCChangeConnectionDlg.h" #include "ChangeConnectionDlg.h" @@ -81,7 +81,8 @@ TUint32* aIAPId, const TConnectionPrefs& aPrefs, TDes& aConnectionName ) -: CActiveIAPListing( aPrefs ), +: CActiveIAPListing( aPrefs ), + iDialog( NULL ), isDialogDeleting( EFalse ), iIAPId( aIAPId ), iConnectionName( aConnectionName ), diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ActiveWrapper.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ActiveWrapper.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ActiveWrapper.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -71,7 +71,15 @@ // CActiveWrapper::CActiveWrapper( const TUint aIndexOfNote ) : CActive( CActive::EPriorityStandard ), - iIndexOfNote( aIndexOfNote ) + iSSID( NULL ), + iConnectionMode( NULL ), + iSecurityMode( NULL ), + iExtSecurityMode( NULL ), + iProtectedSetupSupported( NULL ), + iRS( NULL ), + iIndexOfNote( aIndexOfNote ), + iKey( NULL ), + iHex( NULL ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ChangeConnectionDlg.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ChangeConnectionDlg.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ChangeConnectionDlg.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -27,7 +27,7 @@ #include #include -#include +#include #include "ChangeConnectionDlg.h" #include "ActiveCChangeConnectionDlg.h" @@ -52,7 +52,8 @@ iIAPId( aIAPId ), iConnectionName( aConnectionName ), iIsWLANFeatureSupported( EFalse ), - iActiveDlg( aActiveDlg ) + iActiveDlg( aActiveDlg ), + iExpiryTimer( NULL ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ConnectionUiUtilitiesImpl.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ConnectionUiUtilitiesImpl.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/ConnectionUiUtilitiesImpl.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -46,7 +46,7 @@ #include "ActiveCChangeConnectionDlg.h" #include "connectionstatuspopup.h" -#include +#include #include #include "ConnectionDialogsLogger.h" @@ -85,7 +85,11 @@ // CConnectionUiUtilitiesImpl::CConnectionUiUtilitiesImpl() : iResOffset( 0 ), - iIsWlanSupported( EFalse ) + iIsWlanSupported( EFalse ), + iDummy( EFalse ), + iDummySecMode( EWlanConnectionSecurityOpen ), + iDummyExtSecMode( EWlanConnectionExtentedSecurityModeOpen ), + iConnStatusPopup( NULL ) { for ( TInt i = 0; i < KNumberOfWrappedDialogs; i++ ) { diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/connectionstatuspopup.cpp --- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/connectionstatuspopup.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/src/connectionstatuspopup.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -528,6 +528,7 @@ case KErrGprsReactivationRequested: case KErrGprsOfflineMode: icon = EIconCellular; + // These were GPRS; fall through case KErrWlanOff: case KErrWlanForceOff: textPtr.Set( Ktxt_occ_dpopinfo_connection_unavailable ); diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/DisconnectDlg/src/ConnectionInfo.cpp --- a/connectionutilities/ConnectionDialogs/DisconnectDlg/src/ConnectionInfo.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/DisconnectDlg/src/ConnectionInfo.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -26,7 +26,7 @@ #include #include -#include +#include #include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/DisconnectDlg/src/ConnectionModel.cpp --- a/connectionutilities/ConnectionDialogs/DisconnectDlg/src/ConnectionModel.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/DisconnectDlg/src/ConnectionModel.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -34,7 +34,7 @@ #include #endif -#include +#include // CONSTANTS diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/DisconnectDlg/src/DisconnectDlgUi.cpp --- a/connectionutilities/ConnectionDialogs/DisconnectDlg/src/DisconnectDlgUi.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/DisconnectDlg/src/DisconnectDlgUi.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -29,7 +29,7 @@ #include #include -#include +#include #include diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/cconndlg/inc/ConnDlgPlugin.h --- a/connectionutilities/ConnectionDialogs/cconndlg/inc/ConnDlgPlugin.h Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/cconndlg/inc/ConnDlgPlugin.h Thu Jun 24 11:36:05 2010 +0300 @@ -163,7 +163,7 @@ public CConnectionDialogsNotifBase { public: - CConnDlgAuthenticationPlugin::CConnDlgAuthenticationPlugin(); + CConnDlgAuthenticationPlugin(); /** * NewL function diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/cconndlg/src/ConnDlgPlugin.cpp --- a/connectionutilities/ConnectionDialogs/cconndlg/src/ConnDlgPlugin.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/cconndlg/src/ConnDlgPlugin.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -59,8 +59,9 @@ EXPORT_C CArrayPtr* NotifierArray() { - CArrayPtrFlat* array = new (ELeave) - CArrayPtrFlat( KPluginGranularity ); + CArrayPtrFlat* array = NULL; + TRAP_IGNORE( array = new (ELeave) + CArrayPtrFlat( KPluginGranularity ); ) if ( array ) { diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/group/ConnUiUtilsNotif.mmp --- a/connectionutilities/ConnectionDialogs/group/ConnUiUtilsNotif.mmp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/group/ConnUiUtilsNotif.mmp Thu Jun 24 11:36:05 2010 +0300 @@ -91,13 +91,10 @@ SYSTEMINCLUDE /epoc32/include/libc SYSTEMINCLUDE /epoc32/include/uikon -SYSTEMINCLUDE /epoc32/include/mw/hb/hbcore -SYSTEMINCLUDE /epoc32/include/mw/hb/hbwidgets - LIBRARY euser.lib eikdlg.lib eiksrv.lib cone.lib eikcore.lib eikcoctl.lib LIBRARY bafl.lib avkon.lib AknSkins.lib Ecom.lib -LIBRARY eiksrvui.lib +LIBRARY eiksrvui.lib LIBRARY commonengine.lib LIBRARY AKNNOTIFY.LIB LIBRARY AknIcon.lib @@ -109,7 +106,7 @@ LIBRARY charconv.lib LIBRARY commdb.lib -LIBRARY cmmanager.lib +LIBRARY cmmanager.lib LIBRARY etel3rdparty.lib LIBRARY HbCore.lib LIBRARY HbWidgets.lib diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/group/bld.inf --- a/connectionutilities/ConnectionDialogs/group/bld.inf Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/group/bld.inf Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). +* 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" diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/inc/ConnectionInfo.h --- a/connectionutilities/ConnectionDialogs/inc/ConnectionInfo.h Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/inc/ConnectionInfo.h Thu Jun 24 11:36:05 2010 +0300 @@ -102,7 +102,7 @@ * Returns iId member * @return iId member */ - inline const TUint32 Id() const; + inline TUint32 Id() const; /** * ListItem() function @@ -123,7 +123,7 @@ * Returns iVPN_iap_id member * @return iVPN_iap_id member */ - inline const TUint32 VPNIapId() const; + inline TUint32 VPNIapId() const; /** @@ -131,7 +131,7 @@ * Returns iDestinationId member * @return iDestinationId member */ - inline const TUint32 DestinationId() const; + inline TUint32 DestinationId() const; /** @@ -139,7 +139,7 @@ * Tells if connection is VPN * @return ETrue if connection is VPN */ - inline const TBool IsVPN() const; + inline TBool IsVPN() const; private: // Data diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/inc/ConnectionInfo.inl --- a/connectionutilities/ConnectionDialogs/inc/ConnectionInfo.inl Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/inc/ConnectionInfo.inl Thu Jun 24 11:36:05 2010 +0300 @@ -28,7 +28,7 @@ // CConnectionInfo::Id // --------------------------------------------------------- // -const TUint32 CConnectionInfo::Id() const +TUint32 CConnectionInfo::Id() const { return iId; } @@ -58,7 +58,7 @@ // CConnectionInfo::VPNIapId() // --------------------------------------------------------- // -const TUint32 CConnectionInfo::VPNIapId() const +TUint32 CConnectionInfo::VPNIapId() const { return iVPN_iap_id; } @@ -68,7 +68,7 @@ // CConnectionInfo::DestinationId() // --------------------------------------------------------- // -const TUint32 CConnectionInfo::DestinationId() const +TUint32 CConnectionInfo::DestinationId() const { return iDestinationId; } @@ -78,7 +78,7 @@ // CConnectionInfo::VPNIapId() // --------------------------------------------------------- // -const TBool CConnectionInfo::IsVPN() const +TBool CConnectionInfo::IsVPN() const { return iIsVPN; } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/src/ActiveIAPListing.cpp --- a/connectionutilities/ConnectionDialogs/src/ActiveIAPListing.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/src/ActiveIAPListing.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -92,10 +92,16 @@ CActiveIAPListing::CActiveIAPListing( const TConnectionPrefs& aPrefs ) : CActive( EPriorityUserInput ), iDb( NULL ), + iPeriodic( NULL ), iWaitDialog( NULL ), #ifndef __WINS__ iWlanMgmt( NULL ), #endif // !__WINS__ + iIAPs( NULL ), + iWlanIAPs( NULL ), + iActIAPs( NULL ), + iClientStatus( NULL ), + iIsWLANFeatureSupported( EFalse ), iPrefs( aPrefs ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/src/ConnectionDialogsNotifBase.cpp --- a/connectionutilities/ConnectionDialogs/src/ConnectionDialogsNotifBase.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/src/ConnectionDialogsNotifBase.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -88,9 +88,13 @@ // --------------------------------------------------------- // CConnectionDialogsNotifBase::CConnectionDialogsNotifBase() -: iCancelled( EFalse ), +: iReplySlot( 0 ), + iCancelled( EFalse ), iResource( 0 ) { + iInfo.iUid = TUid::Null(); + iInfo.iChannel = TUid::Null(); + iInfo.iPriority = 0; } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/ConnectionDialogs/src/ConnectionInfoKey.cpp --- a/connectionutilities/ConnectionDialogs/src/ConnectionInfoKey.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/ConnectionDialogs/src/ConnectionInfoKey.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -29,7 +29,9 @@ // CConnectionInfoKey::CConnectionInfoKey( TBool aIsWLANFeatureSupported ) : TKeyArrayFix( 0, ECmpCollated ), - iIsWLANFeatureSupported( aIsWLANFeatureSupported ) + iPtr( NULL ), + iIsWLANFeatureSupported( aIsWLANFeatureSupported ), + iNameEasyWLAN( NULL ) { } diff -r c5b848e6c7d1 -r bbb64eb3bdee connectionutilities/confirmqueries/src/cellularpromptdialog.cpp --- a/connectionutilities/confirmqueries/src/cellularpromptdialog.cpp Thu Jun 10 16:00:16 2010 +0300 +++ b/connectionutilities/confirmqueries/src/cellularpromptdialog.cpp Thu Jun 24 11:36:05 2010 +0300 @@ -15,7 +15,7 @@ * */ -#include +#include #include #include #include @@ -45,12 +45,8 @@ OstTraceFunctionEntry0( CELLULARPROMPTDIALOG_CELLULARPROMPTDIALOG_ENTRY ); // Install localization - QTranslator *translator = new QTranslator(this); - QString lang = QLocale::system().name(); - QString path = "Z:/resource/qt/translations/"; - translator->load("cellularpromptdialog_" + lang, path); - qApp->installTranslator(translator); - + HbTranslator *translator(new HbTranslator("cellularpromptdialog")); + createDialog(parameters); mClose = false; diff -r c5b848e6c7d1 -r bbb64eb3bdee dbcreator/conf/CI_commsdatcreator.confml --- a/dbcreator/conf/CI_commsdatcreator.confml Thu Jun 10 16:00:16 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,831 +0,0 @@ - - - - Global network related settings not tied to individual connection methods. - - Defines the packet data connection mode. Select When Available to register the device to the packet data network (GPRS) when users switch it on in a supported network. Select When Needed to establish a packet data connection only when applications or actions require it. - - - The default access point to use the device as a packet data modem for a computer. - - - - - This setting controls the behavior of the device regarding known (saved) and new WLAN networks. - When a known WLAN network is discovered, the device can automatically switch to it. - When one or more new unknown WLAN networks are discovered in connection request phase, those can be proposed and taken into use. - - - - - This setting controls the cellular packet data usage in home network. - Automatic means that cellular data connection is utilized automatically in case needed. - Confirm means that there is a confirmation query to confirm the usage. - WLAN Only means that cellular data is not tried to use. Instead, WLAN is utilized whenever possible. - - - - - This setting controls the cellular packet data usage in foreign network. - Automatic means that cellular data connection is utilized automatically in case needed. - Confirm means that there is a confirmation query to confirm the usage. - WLAN Only means that cellular data is not tried to use. Instead, WLAN is utilized whenever possible. - - - - - For GPRS the time (in seconds) to stay online when all socket activity has ceased. -1 for unlimited time. - Leave empty to use the product default value. - - - - - For GPRS the time (in seconds) to stay online when session has closed. -1 for unlimited time. - Leave empty to use the product default value. - - - - - For GPRS the time (in seconds) to stay online when socket has closed. -1 for unlimited time. - Leave empty to use the product default value. - - - - - For WLAN the time (in seconds) to stay online when all socket activity has ceased. -1 for unlimited time. - Leave empty to use the product default value. - - - - - For WLAN the time (in seconds) to stay online when all socket activity has ceased. -1 for unlimited time. - Leave empty to use the product default value. - - - - - For WLAN the time (in seconds) to stay online when all socket activity has ceased. -1 for unlimited time. - Leave empty to use the product default value. - - - - - How often WLAN networks are scanned when idle. - - - - - Settings for packet data connections (GPRS). - - Access point to a packet data network. - - The connection name that is visible to the user. - - - - Specifies the connection ID. Either specify the connection ID manually or leave empty to have it allocated automatically. If you specify the ID manaually, verify that the IDs are globally unique. - - - Defines whether the access point is protected or not. Users cannot edit protected access points. - - - Defines whether the access point is hidden or not. - - - Defines whether or not to hide the access point for MMS connections. - - - Defines whether the access point is highlighted or not. - - - Defines whether devices can roam to an access point. - - - Defines the addressing that the network uses. - - - The access point name for this packet data connection. - - - - Authenticates the user to the access point. - - - - Prompts the user to enter a password when a connection is created. - - - Authenticates the user to the access point. - - - - The password authentication method. Select Secure to always send the password encrypted and Normal to send it encryped when possible. - - - Wireless application protocol (WAP) gateway IP address. - - - The Web address (in URL format) of the page to display as the home page when users use this access point. - - - - - Attempts a secure wireless transport layer security (WTLS) connection to the WAP gateway. - - - Defines whether to use a continuous or a temporary connection. - - - IP address of the interface. Typically allocated automatically. - - - Address of the primary DNS server that resolves host names. Typically allocated automatically. - - - Address of the secondary DNS server to connect if the primary DNS server is not available. Typically allocated automatically. - - - Address of the primary DNS server that resolves host names. Typically allocated automatically. - - - Address of the secondary DNS server to connect if the primary DNS server is not available. Typically allocated automatically. - - - Address of the HTTP/HTTPS proxy server. - - - - Port number of the HTTP/HTTPS proxy server. - - - - Protocol name for the proxy settings. Typically HTTP or HTTPS. - - - Defines whether EDGE usage is allowed or not. - - - Specifies the service provider type. Used when filtering connection methods for certain purpose. - - - Defines the time to stay online after all activity on a network link has stopped. Choose 0 or a negative value for unlimited time. Leave empty to disable. - - - - - Settings for WLAN connections. - - Specifies the settings for WLAN access point. - - The connection name that is visible to the user. - - - Specifies the connection ID. Either specify the connection ID manually or leave empty to have it allocated automatically. If you specify the ID manaually, verify that the IDs are globally unique. - - - Defines whether the access point is protected or not. Users cannot edit protected access points. - - - Defines whether the access point is hidden or not. - - - Defines whether or not to hide the access point for MMS connections. - - - Defines whether the access point is highlighted or not. - - - Defines whether devices can roam to an access point. - - - Service set identifier (SSID) of the primary WLAN network. - - - The Web address (in URL format) of the page to display as the home page when users use this access point. - - - Determines how devices communicate with each other. Select Infrastructure if there is a WLAN access point in the network. Select Ad Hoc if devices can send and receive data directly with each other. - - - Security mode of the WLAN network. - - - Address of the primary DNS server that resolves host names. Typically allocated automatically. - - - Address of the secondary DNS server to connect if the primary DNS server is not available. Typically allocated automatically. - - - Address of the primary DNS server that resolves host names. Typically allocated automatically. - - - Address of the secondary DNS server to connect if the primary DNS server is not available. Typically allocated automatically. - - - The gateway IP address. Typically allocated automatically. - - - Network mask. Typically allocated automatically. - - - Address of the HTTP/HTTPS proxy server. - - - Port number of the HTTP/HTTPS proxy server. - - - Protocol name for the proxy settings. Typically HTTP or HTTPS. - - - Defines whether the SSID should be actively scanned. This is needed if the SSID is hidden (not broadcasted by the AP). - - - 802.11 Channel ID (1-14). Used only when connecting/setting up adhoc network. - - - IP address of the interface. Typically allocated automatically. - - - Index of default WEP key. Used only when security mode is WEP. - - - WEP authentication mode. Select Open to allow any device that knows the SSID of the access point to gain access to the network. Select Shared to allow access only to devices that have a static WEP key and pass a challenge based authentication. Only used when security mode is WEP. - - - WEP key length in bits. - - - WEP key format. - - - WEP key data in either ASCII or hexadecimal format. Devices use the RC4 algorithm with a key length of 64, 128, or 256 bits to define a set of WEP keys. Access to the WLAN is allowed only to mobile devices that have the required keys. If the key length is 64, enter 5 bytes in ASCII or 10 bytes in hexadecimal format. If the key length is 128, enter 13 bytes in ASCII or 26 bytes in hexadecimal format. - - - WEP key length in bits. - - - WEP key format. - - - WEP key data in either ASCII or hexadecimal format. Devices use the RC4 algorithm with a key length of 64, 128, or 256 bits to define a set of WEP keys. Access to the WLAN is allowed only to mobile devices that have the required keys. If the key length is 64, enter 5 bytes in ASCII or 10 bytes in hexadecimal format. If the key length is 128, enter 13 bytes in ASCII or 26 bytes in hexadecimal format. - - - WEP key length in bits. - - - WEP key format. - - - WEP key data in either ASCII or hexadecimal format. Devices use the RC4 algorithm with a key length of 64, 128, or 256 bits to define a set of WEP keys. Access to the WLAN is allowed only to mobile devices that have the required keys. If the key length is 64, enter 5 bytes in ASCII or 10 bytes in hexadecimal format. If the key length is 128, enter 13 bytes in ASCII or 26 bytes in hexadecimal format. - - - WEP key length in bits. - - - WEP key format. - - - WEP key data in either ASCII or hexadecimal format. Devices use the RC4 algorithm with a key length of 64, 128, or 256 bits to define a set of WEP keys. Access to the WLAN is allowed only to mobile devices that have the required keys. If the key length is 64, enter 5 bytes in ASCII or 10 bytes in hexadecimal format. If the key length is 128, enter 13 bytes in ASCII or 26 bytes in hexadecimal format. - - - WPA/WPA2 pre-shared key in plain text. ASCII character set values between 32-126 must be used. Minimum length is 8 characters and maximum 63. Define the WPA pre-shared key length field accordingly. - - - Enables the Pre-shared key mode when the security mode is WPA or WPA2. If the setting is off, EAP mode is used and the list of EAPs needs to be defined. - - - The length of the specified pre-shared key in WPA Pre-shared Key. - - - - Extensible Authentication Protocol (EAP) method in use for this connection in case security mode is WPA or 802.1x with EAP. Please fill also the relevant EAP method specific settings. - - - - The username used with EAP-GTC. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - Defines which EAP tunneling method is used with EAP-GTC. - - - The username used with EAP-TLS. - - - The realm used for device identification to the server. - - - Compares the server realm with the device realm. This provides extra security but it depends on the network infrastructure and set-up whether this will work. - - - Specifies whether TLS requires that the server authenticates the client. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - The list of allowed cipher suites. In the format +xxx,+xxx,+xxx... where xxx is the cipher suite identifier. 004: TLS_RSA_WITH_RC4_128_MD5, 005: TLS_RSA_WITH_RC4_128_SHA, 010: TLS_RSA_WITH_3DES_EDE_CBC_SHA, 019: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, 022: TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA, 047: TLS_RSA_WITH_AES_128_CBC_SHA, 050: TLS_DHE_DSS_WITH_AES_128_CBC_SHA, 051: TLS_DHE_RSA_WITH_AES_128_CBC_SHA, 052: TLS_DH_anon_WITH_AES_128_CBC_SHA. For example, +004 enables only RSA with RC4 and MD5. - - - The subject key ID value of the user certificate. Currently this field is the only one that can be used to identify the certificate. - - - The issuer of the user certificate. Currently not used. - - - The serial number of the user certificate. Currently not used. - - - The subject key ID value of the CA certificate. Currently this field is the only one that can be used to identify the certificate. - - - The issuer of the CA certificate. Currently not used. - - - The serial number of the CA certificate. Currently not used. - - - Defines which EAP tunneling method is used with EAP-TLS. - - - The username used with EAP-LEAP. - - - The password used with EAP-LEAP. - - - Specifies how long single session is kept in memory (for example, o new password queries). - - - The username used with EAP-SIM. - - - The realm used for device identification to the server. - - - Specifies whether IMSI is always sent when authenticating or is pseudonym usage allowed. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - Defines which EAP tunneling method is used with EAP-SIM. - - - The username used with EAP-TTLS. - - - The realm used for device identification to the server. - - - Compares the server realm with the device realm. This provides extra security but it depends on the network infrastructure and set-up whether this will work. - - - Specifies whether TTLS requires that the server authenticates the client. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - The list of allowed cipher suites. In the format +xxx,+xxx,+xxx... where xxx is the cipher suite identifier. 004: TLS_RSA_WITH_RC4_128_MD5, 005: TLS_RSA_WITH_RC4_128_SHA, 010: TLS_RSA_WITH_3DES_EDE_CBC_SHA, 019: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, 022: TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA, 047: TLS_RSA_WITH_AES_128_CBC_SHA, 050: TLS_DHE_DSS_WITH_AES_128_CBC_SHA, 051: TLS_DHE_RSA_WITH_AES_128_CBC_SHA, 052: TLS_DH_anon_WITH_AES_128_CBC_SHA. For example, +004 enables only RSA with RC4 and MD5. - - - A list of Extensible Authentication Protocols (EAPs) in tunneled by EAP-TTLS. The format is +xxx,+xxx,+xxx where xxx indicates the enabled EAP method ID as specified in the IANA registry: http://www.iana.org/assignments/eap-numbers. For example, to enable EAP-SIM encapsulation the string needs to be "+018". The list is in priority order, highest priority first. Note that the encapsulate type's encapsulation parameter needs to be configured accordingly. - - - The subject key ID value of the user certificate. Currently this field is the only one that can be used to identify the certificate. - - - The issuer of the user certificate. Currently not used. - - - The serial number of the user certificate. Currently not used. - - - The subject key id value of the CA certificate. Currently this field is the only one that can be used to identify the certificate. - - - The issuer of the CA certificate. Currently not used. - - - The serial number of the CA certificate. Currently not used. - - - The username used with EAP-AKA. - - - The realm used for device identification to the server. - - - Specifies whether IMSI is always sent when authenticating or is pseudonym usage allowed. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - Defines which EAP tunneling method is used with EAP-AKA. - - - The username used with EAP-PEAP. - - - The realm used for device identification to the server. - - - Compares the server realm with the device realm. This provides extra security but it depends on the network infrastructure and set-up whether this will work. - - - Specifies whether PEAP requires that the server authenticates the client. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - The list of allowed cipher suites. In the format +xxx,+xxx,+xxx... where xxx is the cipher suite identifier. 004: TLS_RSA_WITH_RC4_128_MD5, 005: TLS_RSA_WITH_RC4_128_SHA, 010: TLS_RSA_WITH_3DES_EDE_CBC_SHA, 019: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, 022: TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA, 047: TLS_RSA_WITH_AES_128_CBC_SHA, 050: TLS_DHE_DSS_WITH_AES_128_CBC_SHA, 051: TLS_DHE_RSA_WITH_AES_128_CBC_SHA, 052: TLS_DH_anon_WITH_AES_128_CBC_SHA. For example, +004 enables only RSA with RC4 and MD5. - - - Defines whether PEAP version 0 is allowed. If in doubt enable only this one. - - - Defines whether PEAP version 1 is allowed. - - - Defines whether PEAP version 2 is allowed. - - - A list of Extensible Authentication Protocols (EAPs) in tunneled by EAP-PEAP. The format is +xxx,+xxx,+xxx where xxx indicates the enabled EAP method ID as specified in the IANA registry: http://www.iana.org/assignments/eap-numbers. For example to enable EAP-SIM encapsulation the string needs to be "+018". The list is in priority order, highest priority first. Note that the encapsulate type's encapsulation parameter needs to be configured accordingly. - - - The subject key ID value of the user certificate. Currently this field is the only one that can be used to identify the certificate. - - - The issuer of the user certificate. Currently not used. - - - The serial number of the user certificate. Currently not used. - - - The subject key id value of the CA certificate. Currently this field is the only one that can be used to identify the certificate. - - - The issuer of the CA certificate. Currently not used. - - - The serial number of the CA certificate. Currently not used. - - - The username used with EAP-MSCHAPv2. - - - The password used with EAP-MSCHAPv2. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - Defines which EAP tunneling method is used with EAP-MSCHAPv2. - - - The username used with EAP-FAST. - - - The realm used for device identification to the server. - - - Specifies whether the server's realm is compared with own realm. This provides extra security but it depends on the network infrastructure and set-up whether this will work. - - - Specifies whether TTLS requires that the server authenticates the client. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - The list of allowed cipher suites. In the format +xxx,+xxx,+xxx... where xxx is the cipher suite identifier. 004: TLS_RSA_WITH_RC4_128_MD5, 005: TLS_RSA_WITH_RC4_128_SHA, 010: TLS_RSA_WITH_3DES_EDE_CBC_SHA, 019: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, 022: TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA, 047: TLS_RSA_WITH_AES_128_CBC_SHA, 050: TLS_DHE_DSS_WITH_AES_128_CBC_SHA, 051: TLS_DHE_RSA_WITH_AES_128_CBC_SHA, 052: TLS_DH_anon_WITH_AES_128_CBC_SHA. For example, +004 enables only RSA with RC4 and MD5. - - - A list of Extensible Authentication Protocols (EAPs) in tunneled by EAP-FAST. The format is +xxx,+xxx,+xxx where xxx indicates the enabled EAP method ID as specified in the IANA registry: http://www.iana.org/assignments/eap-numbers. For example to enable EAP-SIM encapsulation the string needs to be "+018". The list is in priority order, highest priority first. Note that the encapsulate type's encapsulation parameter needs to be configured accordingly. - - - Allows the dynamic provisioning of a PAC key in signed mode, where the server is authenticated during a signed Diffie-Hellman (DH) exchange. The device must have the server public key. - - - Allows the dynamic provisioning of a PAC key in anonymous mode, without authenticating the server. - - - Defines whether the server issues a warning if the device does not send a PAC, the server cannot decrypt the PAC, or the PAC has expired. - - - Defines whether the server issues a warning the server and the device cannot match a PAC. - - - Defines whether the server issues a warning if the server is not the default server. - - - The subject key ID value of the user certificate. Currently this field is the only one that can be used to identify the certificate. - - - The issuer of the user certificate. Ignored by the implementation currently! - - - The serial number of the user certificate. Currently not used. - - - The subject key ID value of the CA certificate. Currently this field is the only one that can be used to identify the certificate. - - - The issuer of the CA certificate. Currently not used. - - - The serial number of the CA certificate. Currently not used. - - - The username used with MSCHAPv2. - - - The password used with MSCHAPv2. - - - Specifies how long single session is kept in memory (for example, no new password queries). - - - Defines which EAP tunneling method is used with MSCHAPv2. Needs to be EAP-TTLS. - - - - - Settings for Destination Networks (SNAP) that applications can use. - - Settings for Destination Network. - - Destination Network name that is visible to the user. - - - Specifies the connection ID. Either specify the connection ID manually or leave empty to have it allocated automatically. If you specify the ID manaually, verify that the IDs are globally unique. - - - Metadata that specifies a few default destination networks that applications can use. - - - Defines the protection level. Select Destination And Contents to protect the connection methods inside the destination and their priorities. - - - Defines whether the Destination Network is hidden or not. - - - Defines whether or not to hide the Destination Network for MMS connections. - - - Defines whether the Destination Network is highlighted or not. - - - Defines the icon to be assigned to Destination Network. - - - Name of an embedded Destination Network that is bound to the Destination Network. - - - Name of the first connection method that is bound to the Destination Network. - - - Name of the second connection method that is bound to the Destination Network. - - - Name of the third connection method that is bound to the Destination Network. - - - Name of the fourth connection method that is bound to the Destination Network. - - - Name of the fifth connection method that is bound to the Destination Network. - - - Name of the sixth connection method that is bound to the Destination Network. - - - Name of the seventh connection method that is bound to the Destination Network. - - - Name of the eight connection method that is bound to the Destination Network. - - - Name of the ninth connection method that is bound to the Destination Network. - - - Name of the tenth connection method that is bound to the Destination Network. - - - - \ No newline at end of file diff -r c5b848e6c7d1 -r bbb64eb3bdee dbcreator/group/bld.inf --- a/dbcreator/group/bld.inf Thu Jun 10 16:00:16 2010 +0300 +++ b/dbcreator/group/bld.inf Thu Jun 24 11:36:05 2010 +0300 @@ -22,7 +22,6 @@ DEFAULT PRJ_EXPORTS -../conf/CI_commsdatcreator.confml MW_LAYER_CONFML(CI_commsdatcreator.confml) ../conf/commsdatcreator.confml MW_LAYER_CONFML(commsdatcreator.confml) ../conf/commsdatcreator_01.gcfml MW_LAYER_GCFML(commsdatcreator_01.gcfml) ../conf/commsdatcreator.implml MW_LAYER_CRML(commsdatcreator.implml) diff -r c5b848e6c7d1 -r bbb64eb3bdee ipcm_plat/connection_settings_shim_api/inc/cmmanagerdefines_shim.h --- a/ipcm_plat/connection_settings_shim_api/inc/cmmanagerdefines_shim.h Thu Jun 10 16:00:16 2010 +0300 +++ b/ipcm_plat/connection_settings_shim_api/inc/cmmanagerdefines_shim.h Thu Jun 24 11:36:05 2010 +0300 @@ -89,7 +89,9 @@ * Enumerations for connection method attributes. */ enum ConnectionMethodAttribute { - // Common attributes + // Common attributes + //! From TConnectionMethodCommonAttributes in cmconnectionmethoddef.h + CmDestination = CMManager::ECmDestination, //! From TConnectionMethodCommonAttributes in cmconnectionmethoddef.h CmBearerType = CMManager::ECmBearerType, //! From TConnectionMethodCommonAttributes in cmconnectionmethoddef.h @@ -138,6 +140,8 @@ CmProxyServerName = CMManager::ECmProxyServerName, //! From TConnectionMethodCommonAttributes in cmconnectionmethoddef.h CmProxyPortNumber = CMManager::ECmProxyPortNumber, + //! From TConnectionMethodCommonAttributes in cmconnectionmethoddef.h + CmMetaHotSpot = CMManager::ECmMetaHotSpot, // Packet data specific attributes /*! diff -r c5b848e6c7d1 -r bbb64eb3bdee ipcm_plat/group/bld.inf --- a/ipcm_plat/group/bld.inf Thu Jun 10 16:00:16 2010 +0300 +++ b/ipcm_plat/group/bld.inf Thu Jun 24 11:36:05 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* 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" @@ -27,3 +27,4 @@ #include "../pdpcontextmanager2_settings_api/group/bld.inf" #include "../mpm_connect_screen_api/group/bld.inf" #include "../flextimer_api/group/bld.inf" +#include "../mpm_vpn_toggle_api/group/bld.inf" diff -r c5b848e6c7d1 -r bbb64eb3bdee ipcm_plat/mpm_vpn_toggle_api/group/bld.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipcm_plat/mpm_vpn_toggle_api/group/bld.inf Thu Jun 24 11:36:05 2010 +0300 @@ -0,0 +1,25 @@ +/* +* 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: Used to export api headers. +* +*/ + +#include + +PRJ_PLATFORMS +DEFAULT + +PRJ_EXPORTS + +../inc/mpmvpntoggleapi.h MW_LAYER_PLATFORM_EXPORT_PATH(mpmvpntoggleapi.h) diff -r c5b848e6c7d1 -r bbb64eb3bdee ipcm_plat/mpm_vpn_toggle_api/inc/mpmvpntoggleapi.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipcm_plat/mpm_vpn_toggle_api/inc/mpmvpntoggleapi.h Thu Jun 24 11:36:05 2010 +0300 @@ -0,0 +1,49 @@ +/* +* 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: Defines central repository key for VPN toggle +* +*/ + +#ifndef MPMVPNTOGGLEAPI_H +#define MPMVPNTOGGLEAPI_H + +/** + * The UID of the repository to be accessed. + */ +const TUid KMpmVpnToggleCenRepUid = {0x20016A88}; + +/** + * This key contains value, which defines if VPN connection is preferred + * connection. Client can set this value if it has WriteDeviceData and + * NetworkControl capabilities. + */ +const TUint32 KMpmVpnTogglePreferVpn = 0x00000001; + +/** + * This key contains VPN IAP Id value for VPN IAP which is used to establish + * VPN connection, when VPN connection is preferred. Client can set this value + * if it has WriteDeviceData and NetworkControl capabilities. TUint32 value + * needs to be converted from TInt. + */ +const TUint32 KMpmVpnToggleIapId = 0x00000002; + +/** + * This key contains SNAP Id value SNAP which is used to establish VPN + * connection, when VPN connection is preferred. Client can set this value + * if it has WriteDeviceData and NetworkControl capabilities. TUint32 value + * needs to be converted from TInt. + */ +const TUint32 KMpmVpnToggleSnapId = 0x00000003; + +#endif // MPMVPNTOGGLEAPI_H diff -r c5b848e6c7d1 -r bbb64eb3bdee ipcm_plat/mpm_vpn_toggle_api/mpm_vpn_toggle_api.metaxml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ipcm_plat/mpm_vpn_toggle_api/mpm_vpn_toggle_api.metaxml Thu Jun 24 11:36:05 2010 +0300 @@ -0,0 +1,15 @@ + + + mpm_vpn_toggle_api + Provides API to set/get VPN connection preferred value, which defines whether VPN connection is preferred connection. VPN IAP Id or Intranet SNAP Id needs to be also defined, when VPN connection is preferred connection. VPN IAP Id or Intranet SNAP Id needs to be defined, if VPN connection is preferred. + c++ + mpm_vpn_toggle_api + + + + + + no + no + + diff -r c5b848e6c7d1 -r bbb64eb3bdee ipconnmgmt.pro --- a/ipconnmgmt.pro Thu Jun 10 16:00:16 2010 +0300 +++ b/ipconnmgmt.pro Thu Jun 24 11:36:05 2010 +0300 @@ -12,18 +12,19 @@ # Contributors: # # Description: +# Qt project file for ipconnmgmt package. # TEMPLATE = subdirs +CONFIG += ordered + SUBDIRS += \ ipcm_plat \ connectionutilities \ cmmanager \ connectionmonitoring -CONFIG += ordered - -symbian*: { - SYMBIAN_PLATFORMS = WINSCW ARMV5 -} +symbian { + BLD_INF_RULES.prj_exports += "$${LITERAL_HASH}include \"./group/bld.inf\"" +} diff -r c5b848e6c7d1 -r bbb64eb3bdee keepalive/flextimer/test/testflextimer/group/testflextimer_doxyfile.txt --- a/keepalive/flextimer/test/testflextimer/group/testflextimer_doxyfile.txt Thu Jun 10 16:00:16 2010 +0300 +++ b/keepalive/flextimer/test/testflextimer/group/testflextimer_doxyfile.txt Thu Jun 24 11:36:05 2010 +0300 @@ -1,20 +1,19 @@ -# -# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +# 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 the License "Symbian Foundation License v1.0" +# under the terms of "Eclipse Public License v1.0" # which accompanies this distribution, and is available -# at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html". +# at the URL "http://www.eclipse.org/legal/epl-v10.html". # # Initial Contributors: # Nokia Corporation - initial contribution. # # Contributors: -# -# Description: +# +# Description: Doxygen configuration for generating FlexTimer test +# specication. # # - # Doxyfile 1.4.1 #--------------------------------------------------------------------------- diff -r c5b848e6c7d1 -r bbb64eb3bdee layers.sysdef.xml --- a/layers.sysdef.xml Thu Jun 10 16:00:16 2010 +0300 +++ b/layers.sysdef.xml Thu Jun 24 11:36:05 2010 +0300 @@ -7,7 +7,6 @@ -