# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1274782182 -10800 # Node ID 9c303455e25639314b6cad7619b686c7877c1ff7 # Parent 5944cae565c93414a8eadeaa9be7d9bd49223528 Revision: 201019 Kit: 2010121 diff -r 5944cae565c9 -r 9c303455e256 genericpositioningplugins/group/bld.inf --- a/genericpositioningplugins/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/genericpositioningplugins/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -18,7 +18,7 @@ #include PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE #include "../locationnpppsy/group/bld.inf" #include "../locationsuplpsy/group/bld.inf" diff -r 5944cae565c9 -r 9c303455e256 genericpositioningplugins/locationnpppsy/group/bld.inf --- a/genericpositioningplugins/locationnpppsy/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/genericpositioningplugins/locationnpppsy/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -18,7 +18,7 @@ #include PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS ../rom/nla_npppsy.iby CORE_MW_LAYER_IBY_EXPORT_PATH(nla_npppsy.iby) diff -r 5944cae565c9 -r 9c303455e256 group/bld.inf --- a/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -17,7 +17,7 @@ PRJ_PLATFORMS -WINSCW ARMV5 +WINSCW ARMV5 GCCE #include "../genericpositioningplugins/group/bld.inf" #include "../landmarks/group/bld.inf" diff -r 5944cae565c9 -r 9c303455e256 landmarks/group/bld.inf --- a/landmarks/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/landmarks/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -19,7 +19,7 @@ PRJ_PLATFORMS -WINSCW ARMV5 +WINSCW ARMV5 GCCE #include "../locationlandmarks/group/bld.inf" diff -r 5944cae565c9 -r 9c303455e256 landmarks/locationlandmarks/dbmanclientlib/group/bld.inf --- a/landmarks/locationlandmarks/dbmanclientlib/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/landmarks/locationlandmarks/dbmanclientlib/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -20,7 +20,7 @@ #include PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS diff -r 5944cae565c9 -r 9c303455e256 landmarks/locationlandmarks/dbmanclientlib/src/EPos_HPosLmDatabaseInfo.cpp --- a/landmarks/locationlandmarks/dbmanclientlib/src/EPos_HPosLmDatabaseInfo.cpp Tue May 11 16:36:36 2010 +0300 +++ b/landmarks/locationlandmarks/dbmanclientlib/src/EPos_HPosLmDatabaseInfo.cpp Tue May 25 13:09:42 2010 +0300 @@ -254,9 +254,16 @@ sizeof(TInt) + aDatabaseUri.Size(); +#if defined(__GCCE__) + // allocate memory + return User::AllocL(_FOFF(HPosLmDatabaseInfo, + iBuffer) + requiredBufferSize * sizeof (typeof(iBuffer))); +#else // allocate memory return User::AllocL(_FOFF(HPosLmDatabaseInfo, - iBuffer[requiredBufferSize])); + iBuffer[requiredBufferSize])); +#endif + } diff -r 5944cae565c9 -r 9c303455e256 locationmapnavfw/group/bld.inf --- a/locationmapnavfw/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/locationmapnavfw/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -17,7 +17,7 @@ PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE #include "../library/group/bld.inf" #include "../aiwprovider/group/bld.inf" diff -r 5944cae565c9 -r 9c303455e256 locationmapnavfw/library/src/mncoordinateconverterbase.cpp --- a/locationmapnavfw/library/src/mncoordinateconverterbase.cpp Tue May 11 16:36:36 2010 +0300 +++ b/locationmapnavfw/library/src/mncoordinateconverterbase.cpp Tue May 25 13:09:42 2010 +0300 @@ -36,8 +36,8 @@ // --------------------------------------------------------------------------- // CMnCoordinateConverterBase* CMnCoordinateConverterBase::NewL( TUid aProviderUid ) - { - TInt32 offset = static_cast _FOFF( CMnCoordinateConverterBase, iDtorIdKey ); + { + TInt32 offset = static_cast (_FOFF( CMnCoordinateConverterBase, iDtorIdKey )); const TInt KNumUidHexDigits = 8; TBuf8 uidText8; diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/group/bld.inf --- a/locationsystemui/locationsysui/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -21,7 +21,7 @@ #include PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE // Help exports #include "../help/group/bld.inf" diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/locbtnotifier/group/bld.inf --- a/locationsystemui/locationsysui/locbtnotifier/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/locbtnotifier/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -24,11 +24,9 @@ PRJ_EXPORTS -../data/locbtgpspsypscontextstate.xml /epoc32/RELEASE/winscw/UDEB/Z/private/10282BC4/Settings/10282C74/locbtgpspsypscontextstate.xml -../data/locbtgpspsypscontextstate.xml /epoc32/data/Z/private/10282BC4/Settings/10282C74/locbtgpspsypscontextstate.xml +../data/locbtgpspsypscontextstate.xml Z/private/10282BC4/Settings/10282C74/locbtgpspsypscontextstate.xml +../data/locbtgpspsypscontextstate.rul Z/private/10282BC4/Rules/locbtgpspsypscontextstate.rul -../data/locbtgpspsypscontextstate.rul /epoc32/RELEASE/winscw/UDEB/Z/private/10282BC4/Rules/locbtgpspsypscontextstate.rul -../data/locbtgpspsypscontextstate.rul /epoc32/data/Z/private/10282BC4/Rules/locbtgpspsypscontextstate.rul PRJ_MMPFILES diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/locnotprefplugin/group/bld.inf --- a/locationsystemui/locationsysui/locnotprefplugin/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/locnotprefplugin/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -24,8 +24,7 @@ DEFAULT PRJ_EXPORTS -../data/backup_registration.xml /epoc32/RELEASE/winscw/udeb/z/private/10281861/backup_registration.xml -../data/backup_registration.xml /epoc32/data/z/private/10281861/backup_registration.xml +../data/backup_registration.xml z/private/10281861/backup_registration.xml PRJ_MMPFILES locnotprefplugin.mmp diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/locsuplsettingsui/group/bld.inf --- a/locationsystemui/locationsysui/locsuplsettingsui/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/locsuplsettingsui/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -22,7 +22,7 @@ #include PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/locsuplsettingsui/inc/locsuplsettingsuiengine.h --- a/locationsystemui/locationsysui/locsuplsettingsui/inc/locsuplsettingsuiengine.h Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/locsuplsettingsui/inc/locsuplsettingsuiengine.h Tue May 25 13:09:42 2010 +0300 @@ -136,7 +136,7 @@ /** * Creates a new server entry in Supl Settings. */ - void CLocSUPLSettingsUiEngine::AddNewServerL( + void AddNewServerL( const TDesC& aServerAddress, const TDesC& aIapName, const TBool aUsageInHomeNw diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/locverifier/group/bld.inf --- a/locationsystemui/locationsysui/locverifier/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/locverifier/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -22,7 +22,7 @@ #include PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/locverifier/inc/lpdrequestorprocessor.h --- a/locationsystemui/locationsysui/locverifier/inc/lpdrequestorprocessor.h Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/locverifier/inc/lpdrequestorprocessor.h Tue May 25 13:09:42 2010 +0300 @@ -74,7 +74,7 @@ /** * Sets Type of Request */ - void CLpdRequestorProcessor::SetRequestType( TInt aReqType ); + void SetRequestType( TInt aReqType ); /** * Resets requestor arrays and destroys requestor objects. diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/queryandnotification/inc/EPos_CPosPrivacyNotifierExtension.h --- a/locationsystemui/locationsysui/queryandnotification/inc/EPos_CPosPrivacyNotifierExtension.h Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/queryandnotification/inc/EPos_CPosPrivacyNotifierExtension.h Tue May 25 13:09:42 2010 +0300 @@ -30,7 +30,7 @@ // INCLUDES #include #include -#include +#include #include // FORWARD DECLARATIONS class CPosRequestHandler; diff -r 5944cae565c9 -r 9c303455e256 locationsystemui/locationsysui/queryandnotification/inc/EPos_CPosRequestHandler.h --- a/locationsystemui/locationsysui/queryandnotification/inc/EPos_CPosRequestHandler.h Tue May 11 16:36:36 2010 +0300 +++ b/locationsystemui/locationsysui/queryandnotification/inc/EPos_CPosRequestHandler.h Tue May 25 13:09:42 2010 +0300 @@ -29,7 +29,7 @@ // INCLUDES #include -#include +#include #include // FORWARD DECLARATIONS diff -r 5944cae565c9 -r 9c303455e256 locationtriggering/group/bld.inf --- a/locationtriggering/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/locationtriggering/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -19,16 +19,12 @@ #include PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS #ifdef CORE_MW_LAYER_IBY_EXPORT_PATH ../rom/locationtriggering.iby CORE_MW_LAYER_IBY_EXPORT_PATH(locationtriggering.iby) ../rom/locationtriggeringstub.iby CORE_MW_LAYER_IBY_EXPORT_PATH(locationtriggeringstub.iby) - -// Export SIS File -../data/lbtstub.sis /epoc32/data/z/system/install/lbtstub.sis - #endif #ifdef MW_LAYER_CONFML diff -r 5944cae565c9 -r 9c303455e256 locationtriggering/ltcontainer/group/bld.inf --- a/locationtriggering/ltcontainer/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/locationtriggering/ltcontainer/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -17,7 +17,7 @@ PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS ../inc/lbtcontainer.h |../../inc/lbtcontainer.h diff -r 5944cae565c9 -r 9c303455e256 locationtriggering/ltcontainer/inc/lbtcontainerutilities.h --- a/locationtriggering/ltcontainer/inc/lbtcontainerutilities.h Tue May 11 16:36:36 2010 +0300 +++ b/locationtriggering/ltcontainer/inc/lbtcontainerutilities.h Tue May 25 13:09:42 2010 +0300 @@ -116,7 +116,7 @@ * * @return ETrue if the UIDs suffices the security polity, EFalse otherwise */ - static TBool LbtContainerUtilities::RunSecurityPolicy( TUid& aOwnerUid, + static TBool RunSecurityPolicy( TUid& aOwnerUid, TUid& aManagerUid, TSecureId& aStartupProcessUid, TLbtSecurityPolicy& aSecurityPolicy ); diff -r 5944cae565c9 -r 9c303455e256 locationtriggering/rom/locationtriggering.iby --- a/locationtriggering/rom/locationtriggering.iby Tue May 11 16:36:36 2010 +0300 +++ b/locationtriggering/rom/locationtriggering.iby Tue May 25 13:09:42 2010 +0300 @@ -51,8 +51,6 @@ // Backup and restore registeration file data=DATAZ_\private\1028312B\backup_registration.xml \private\1028312B\backup_registration.xml -// Central repository file -data=DATAZ_\private\10202be9\1028312F.txt \private\10202be9\1028312F.txt // Location Triggering Management Library file=ABI_DIR\BUILD_DIR\lbtmanager.dll SHARED_LIB_DIR\lbtmanager.dll diff -r 5944cae565c9 -r 9c303455e256 locsrv_plat/query_and_notification_api/inc/EPos_CPosPrivacyNotifier.h --- a/locsrv_plat/query_and_notification_api/inc/EPos_CPosPrivacyNotifier.h Tue May 11 16:36:36 2010 +0300 +++ b/locsrv_plat/query_and_notification_api/inc/EPos_CPosPrivacyNotifier.h Tue May 25 13:09:42 2010 +0300 @@ -23,7 +23,7 @@ // INCLUDES #include #include -#include +#include // DATA TYPES diff -r 5944cae565c9 -r 9c303455e256 locsrv_pub/blid_application_satellite_info_api/tsrc/bc_blid_application_satellite_info_Api/group/BCBlidTest.mmp --- a/locsrv_pub/blid_application_satellite_info_api/tsrc/bc_blid_application_satellite_info_Api/group/BCBlidTest.mmp Tue May 11 16:36:36 2010 +0300 +++ b/locsrv_pub/blid_application_satellite_info_api/tsrc/bc_blid_application_satellite_info_Api/group/BCBlidTest.mmp Tue May 25 13:09:42 2010 +0300 @@ -17,7 +17,7 @@ #if defined(__S60_) - // To get the OS_LAYER_SYSTEMINCLUDE-definition + // To get the MW_LAYER_SYSTEMINCLUDE-definition #include #endif @@ -26,31 +26,23 @@ UID 0x1000008D 0x101FB3E3 CAPABILITY ALL -TCB -/* Remove comments and replace 0x00000000 with correct vendor id */ -// VENDORID 0x00000000 -/* Remove comments and replace 0x00000000 with correct secure id */ -// SECUREID 0x00000000 -//TARGETPATH ?target_path DEFFILE BCBlidTest.def SOURCEPATH ../src SOURCE BCBlidTest.cpp SOURCE BCBlidTestBlocks.cpp -//RESOURCE resource_file -//RESOURCE resource_file2 USERINCLUDE ../inc #if defined(__S60_) - OS_LAYER_SYSTEMINCLUDE + MW_LAYER_SYSTEMINCLUDE #else SYSTEMINCLUDE /epoc32/include SYSTEMINCLUDE /epoc32/include/internal #endif -SYSTEMINCLUDE /epoc32/include SYSTEMINCLUDE /epoc32/include/applications @@ -64,26 +56,5 @@ LANG SC -/* -START WINS -?wins_specific_information -END - -START MARM -?marm_specific_information -END -*/ -// Other possible keywords: - -// DOCUMENT ?file, that is not compiled, but added to MSVC project workspace (i.e. release notes) -/* -START BITMAP ?target -TARGETPATH ?emulated_path_on_target_machine -HEADER -SOURCE ?color_depth ?source_bitmap -END -*/ -// DEFFILE ?filename -// AIF ?filename // End of File diff -r 5944cae565c9 -r 9c303455e256 supl/group/bld.inf --- a/supl/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/supl/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -17,7 +17,7 @@ PRJ_PLATFORMS -WINSCW ARMV5 +WINSCW ARMV5 GCCE #include "../locationsuplfw/group/bld.inf" #include "../locationomasuplprotocolhandler/group/bld.inf" diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/group/bld.inf --- a/supl/locationomasuplprotocolhandler/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -19,7 +19,7 @@ #include PRJ_PLATFORMS -WINSCW ARMV5 +WINSCW ARMV5 GCCE PRJ_EXPORTS ../rom/omasuplprotocolhandler.iby CORE_MW_LAYER_IBY_EXPORT_PATH(omasuplprotocolhandler.iby) diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandler/group/bld.inf --- a/supl/locationomasuplprotocolhandler/protocolhandler/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandler/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -18,7 +18,7 @@ PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS ../inc/epos_comasuplprotocolmanager.h |../../inc/epos_comasuplprotocolmanager.h diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandler/inc/epos_comasuplcommonconfig.h --- a/supl/locationomasuplprotocolhandler/protocolhandler/inc/epos_comasuplcommonconfig.h Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandler/inc/epos_comasuplcommonconfig.h Tue May 25 13:09:42 2010 +0300 @@ -42,7 +42,7 @@ * @param None. * @return Instance of COMASuplCommonConfig */ - IMPORT_C static COMASuplCommonConfig* COMASuplCommonConfig::NewL(); + IMPORT_C static COMASuplCommonConfig* NewL(); /** * ~COMASuplCommonConfig Method, Destructor diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandler/inc/epos_comasuplsettings.h --- a/supl/locationomasuplprotocolhandler/protocolhandler/inc/epos_comasuplsettings.h Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandler/inc/epos_comasuplsettings.h Tue May 25 13:09:42 2010 +0300 @@ -40,7 +40,7 @@ * @param None. * @return Instance of COMASuplSettings */ - IMPORT_C static COMASuplSettings* COMASuplSettings::NewL(); + IMPORT_C static COMASuplSettings* NewL(); /** * ~COMASuplSettings Method, Destructor diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplfallbackhandler.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplfallbackhandler.cpp Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplfallbackhandler.cpp Tue May 25 13:09:42 2010 +0300 @@ -136,6 +136,47 @@ aTls = ETrue; aPskTls = EFalse; aIsIapDialogShown = ETrue; + + CServerParams* param = CServerParams::NewL(); + CleanupStack::PushL(param); + + //Find out if this alternative generated SUPL server is in the SUPL Settings list + TInt err = iSuplSettings.GetSlpInfoAddress(iGenratedHslpAddress, param); + if(err == KErrNotFound) + { + //Server does not exist + iTrace->Trace(_L("Server does not exist in list so adding it in."),KTraceFileName, __LINE__); + CServerParams* newParam=CServerParams::NewL(); + CleanupStack::PushL(newParam); + User::LeaveIfError(newParam->Set( iGenratedHslpAddress,iDefaultIAPName,ETrue,ETrue,ETrue,EFalse )); + + err = iSuplSettings.AddNewServer( newParam, aSLPId ); //Ignore error + LogBuffer.Copy(_L("AddNewServer() completed with err: ")); + LogBuffer.AppendNum(err); + iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); + + CleanupStack::PopAndDestroy(&newParam); + } + else + { + //Server exists, get the SLP ID and the IAP Access point for this server + HBufC* hslpAddress = HBufC::NewL(KHSLPAddressLength); + HBufC* iapName = HBufC::NewL(KMaxIapNameLength); + TBool serverEnabled; + TBool simChangeRemove; + TBool usageInHomeNw; + TBool editable; + + iTrace->Trace(_L("Server already exists, getting the SLP ID and Access Point."),KTraceFileName, __LINE__); + + param->Get(aSLPId,hslpAddress->Des(),iapName->Des(),serverEnabled,simChangeRemove,usageInHomeNw,editable); + aIAPName.Copy(iapName->Des()); + + delete hslpAddress; + delete iapName; + } + + CleanupStack::PopAndDestroy(¶m); iTrace->Trace(_L("Fallback allowed & TLSAuth failed"),KTraceFileName, __LINE__); iTrace->Trace(_L("Server being used:"),KTraceFileName, __LINE__); @@ -192,6 +233,18 @@ iTrace->Trace(_L("iap being used:"),KTraceFileName, __LINE__); LogBuffer.Copy(aIAPName); iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); + + //Add the server to the list for future connections + CServerParams* param=CServerParams::NewL(); + CleanupStack::PushL(param); + User::LeaveIfError(param->Set( iGenratedHslpAddress,iDefaultIAPName,ETrue,ETrue,ETrue,EFalse )); + + TInt err = iSuplSettings.AddNewServer( param, aSLPId ); //Ignore error + LogBuffer.Copy(_L("AddNewServer() completed with err: ")); + LogBuffer.AppendNum(err); + iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); + + CleanupStack::PopAndDestroy(¶m); return KErrNone; } diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplprotocolmanager1.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplprotocolmanager1.cpp Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplprotocolmanager1.cpp Tue May 25 13:09:42 2010 +0300 @@ -106,13 +106,21 @@ { iSettingsLauncher->CancelLaunch(); } - iSuplSettings->SetUIActive( EFalse ); + + if(iSuplSettings) + { + iSuplSettings->SetUIActive( EFalse ); + } DeleteAllSessions(); iSuplSessions.Reset(); iSuplSessions.Close(); - iTelServer.UnloadPhoneModule(iTsyName); + //Only attempt to unload the phone if the TSY has actually been initialised + if(iTsyName.Length() > 0) + { + iTelServer.UnloadPhoneModule(iTsyName); + } iQueuedPacket.Close(); diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplsession.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplsession.cpp Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplsession.cpp Tue May 25 13:09:42 2010 +0300 @@ -3850,9 +3850,11 @@ } CleanupStack::PopAndDestroy(serverParams); } - + if(iSuplState) + { delete iSuplState; iSuplState = NULL; + } CleanupStack::PushL(hslpAdress); ServerAddressCheckForSuplInitL(); iSuplState = COMASuplEndState::NewL(iErrorStatusCode,iOMASuplAsnHandlerBaseImpl,iEncodedSuplInit,hslpAdress); diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandlerver2/group/bld.inf --- a/supl/locationomasuplprotocolhandler/protocolhandlerver2/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver2/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -18,7 +18,7 @@ PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandlerver2/inc/epos_comasuplsettings.h --- a/supl/locationomasuplprotocolhandler/protocolhandlerver2/inc/epos_comasuplsettings.h Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver2/inc/epos_comasuplsettings.h Tue May 25 13:09:42 2010 +0300 @@ -40,7 +40,7 @@ * @param None. * @return Instance of COMASuplSettings */ - static COMASuplSettings* COMASuplSettings::NewL(); + static COMASuplSettings* NewL(); /** * ~COMASuplSettings Method, Destructor diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplfallbackhandler.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplfallbackhandler.cpp Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplfallbackhandler.cpp Tue May 25 13:09:42 2010 +0300 @@ -135,6 +135,47 @@ aTls = ETrue; aPskTls = EFalse; aIsIapDialogShown = ETrue; + + CServerParams* param = CServerParams::NewL(); + CleanupStack::PushL(param); + + //Find out if this alternative generated SUPL server is in the SUPL Settings list + TInt err = iSuplSettings.GetSlpInfoAddress(iGenratedHslpAddress, param); + if(err == KErrNotFound) + { + //Server does not exist + iTrace->Trace(_L("Server does not exist in list so adding it in."),KTraceFileName, __LINE__); + CServerParams* newParam=CServerParams::NewL(); + CleanupStack::PushL(newParam); + User::LeaveIfError(newParam->Set( iGenratedHslpAddress,iDefaultIAPName,ETrue,ETrue,ETrue,EFalse )); + + err = iSuplSettings.AddNewServer( newParam, aSLPId ); //Ignore error + LogBuffer.Copy(_L("AddNewServer() completed with err: ")); + LogBuffer.AppendNum(err); + iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); + + CleanupStack::PopAndDestroy(&newParam); + } + else + { + //Server exists, get the SLP ID and the IAP Access point for this server + HBufC* hslpAddress = HBufC::NewL(KHSLPAddressLength); + HBufC* iapName = HBufC::NewL(KMaxIapNameLength); + TBool serverEnabled; + TBool simChangeRemove; + TBool usageInHomeNw; + TBool editable; + + iTrace->Trace(_L("Server already exists, getting the SLP ID and Access Point."),KTraceFileName, __LINE__); + + param->Get(aSLPId,hslpAddress->Des(),iapName->Des(),serverEnabled,simChangeRemove,usageInHomeNw,editable); + aIAPName.Copy(iapName->Des()); + + delete hslpAddress; + delete iapName; + } + + CleanupStack::PopAndDestroy(¶m); iTrace->Trace(_L("Fallback allowed & TLSAuth failed"),KTraceFileName, __LINE__); iTrace->Trace(_L("Server being used:"),KTraceFileName, __LINE__); @@ -191,6 +232,18 @@ iTrace->Trace(_L("iap being used:"),KTraceFileName, __LINE__); LogBuffer.Copy(aIAPName); iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); + + //Add the server to the list for future connections + CServerParams* param=CServerParams::NewL(); + CleanupStack::PushL(param); + User::LeaveIfError(param->Set( iGenratedHslpAddress,iDefaultIAPName,ETrue,ETrue,ETrue,EFalse )); + + TInt err = iSuplSettings.AddNewServer( param, aSLPId ); //Ignore error + LogBuffer.Copy(_L("AddNewServer() completed with err: ")); + LogBuffer.AppendNum(err); + iTrace->Trace(LogBuffer,KTraceFileName, __LINE__); + + CleanupStack::PopAndDestroy(¶m); return KErrNone; } diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplprotocolmanager2.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplprotocolmanager2.cpp Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplprotocolmanager2.cpp Tue May 25 13:09:42 2010 +0300 @@ -108,13 +108,21 @@ { iSettingsLauncher->CancelLaunch(); } - iSuplSettings->SetUIActive( EFalse ); + + if(iSuplSettings) + { + iSuplSettings->SetUIActive( EFalse ); + } DeleteAllSessions(); iSuplSessions.Reset(); iSuplSessions.Close(); + //Only attempt to unload the phone if the TSY has actually been initialised + if(iTsyName.Length() > 0) + { iTelServer.UnloadPhoneModule(iTsyName); + } iQueuedPacket.Close(); diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplsession2.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplsession2.cpp Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplsession2.cpp Tue May 25 13:09:42 2010 +0300 @@ -2197,6 +2197,10 @@ { CreateCloneMessageL(aDecodedAsnMessage); UpdateSuplSessionIDL(); + if (iRequestType == ESUPL_NETWORK && messageType == COMASuplAsnMessageBase::ESUPL_INIT) + { + ServerAddressCheckForSuplInitL(); + } iSuplSessionState = ESUPL_INITIALIZED; iSuplMsgType = ESUPL_END; diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/supllistener/group/bld.inf --- a/supl/locationomasuplprotocolhandler/supllistener/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/supllistener/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -19,12 +19,11 @@ PRJ_PLATFORMS -WINSCW ARMV5 +WINSCW ARMV5 GCCE PRJ_MMPFILES ./epos_omasupllistener.mmp // for backup restore PRJ_EXPORTS -../data/backup_registration.xml /epoc32/release/winscw/udeb/z/private/1027509E/backup_registration.xml -../data/backup_registration.xml /epoc32/data/z/private/1027509E/backup_registration.xml +../data/backup_registration.xml z/private/1027509E/backup_registration.xml ../inc/epos_comasuplproductconfigcrkeys.h |../../../inc/epos_comasuplproductconfigcrkeys.h \ No newline at end of file diff -r 5944cae565c9 -r 9c303455e256 supl/locationomasuplprotocolhandler/supllistener/inc/epos_comasuplsmslistenerbase.h --- a/supl/locationomasuplprotocolhandler/supllistener/inc/epos_comasuplsmslistenerbase.h Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/supllistener/inc/epos_comasuplsmslistenerbase.h Tue May 25 13:09:42 2010 +0300 @@ -112,7 +112,7 @@ * * @since S60 v3.1 */ - void COMASuplSmsListenerBase::SendL( const TPtr8& aMessage ); + void SendL( const TPtr8& aMessage ); // from base class CActive /** diff -r 5944cae565c9 -r 9c303455e256 supl/locationsuplfw/gateway/group/bld.inf --- a/supl/locationsuplfw/gateway/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationsuplfw/gateway/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -23,13 +23,8 @@ WINSCW ARMV5 PRJ_EXPORTS -/**** -../Data/102073D2.txt /epoc32/RELEASE/winscw/UDEB/Z/private/10202be9/102073D2.txt -../Data/102073D2.txt /epoc32/data/Z/private/10202be9/102073D2.txt -*/ -../data/backup_registration.xml /epoc32/RELEASE/winscw/udeb/z/private/102073ca/backup_registration.xml -../data/backup_registration.xml /epoc32/data/z/private/102073ca/backup_registration.xml +../data/backup_registration.xml z/private/102073ca/backup_registration.xml PRJ_MMPFILES epos_csuplserver.mmp diff -r 5944cae565c9 -r 9c303455e256 supl/locationsuplfw/protocolhandlerapi/group/bld.inf --- a/supl/locationsuplfw/protocolhandlerapi/group/bld.inf Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationsuplfw/protocolhandlerapi/group/bld.inf Tue May 25 13:09:42 2010 +0300 @@ -19,7 +19,7 @@ PRJ_PLATFORMS -DEFAULT +DEFAULT GCCE PRJ_EXPORTS /* diff -r 5944cae565c9 -r 9c303455e256 supl/locationsuplfw/protocolhandlerapi/src/epos_suplkey.cpp --- a/supl/locationsuplfw/protocolhandlerapi/src/epos_suplkey.cpp Tue May 11 16:36:36 2010 +0300 +++ b/supl/locationsuplfw/protocolhandlerapi/src/epos_suplkey.cpp Tue May 25 13:09:42 2010 +0300 @@ -37,11 +37,6 @@ #include /* for memcpy() etc. */ #include /* for _lrotl with VC++ */ -#if defined(__GNUC__) || defined(__GNU_LIBRARY__) -#include -#include -#endif - #include "sha1.h" #include "hmac.h"