| author | Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> | 
| Tue, 02 Feb 2010 00:44:34 +0200 | |
| changeset 1 | d5423fbb4f29 | 
| parent 0 | 164170e6151a | 
| child 8 | ece4bbb094df | 
| permissions | -rw-r--r-- | 
| 0 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1 | /* | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2 | * Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 3 | * All rights reserved. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 4 | * This component and the accompanying materials are made available | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 5 | * under the terms of "Eclipse Public License v1.0" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 6 | * which accompanies this distribution, and is available | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 7 | * at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 8 | * | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 9 | * Initial Contributors: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 10 | * Nokia Corporation - initial contribution. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 11 | * | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 12 | * Contributors: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 13 | * | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 14 | * Description: Provides api for handling security events. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 15 | * | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 16 | * | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 17 | */ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 18 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 19 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | #include <aknnotedialog.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | #include <etelmm.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | #include <SecUi.rsg> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | #include <exterror.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 24 | #include <textresolver.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | #include <aknmediatorfacade.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | #include <secondarydisplay/SecondaryDisplayStartupAPI.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | #include <centralrepository.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | #include <starterclient.h> //used for RemoveSplashScreen | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | #include <e32property.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 | #include <PSVariables.h> // Property values | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 | #include <coreapplicationuisdomainpskeys.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | #include <startupdomainpskeys.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | #include <uikon/eiksrvui.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 | #include <settingsinternalcrkeys.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 | #include <securityuisprivatepskeys.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | #include <AknNotiferAppServerApplication.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 41 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 42 | #include <SCPClient.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 43 | #include <securitynotification.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 44 | #include "secui.hrh" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 45 | #include "secuisecurityhandler.h" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 46 | #include "secuicodequerydialog.h" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 47 | #include "secuisecuritysettings.h" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 48 | #include "SecUiWait.h" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 49 | #include "SecUiLockObserver.h" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 50 | #ifdef RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | #include <RemoteLockSettings.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 52 | #endif // RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 53 | #include <StringLoader.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | #include <featmgr.h> | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 | // LOCAL CONSTANTS AND MACROS | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | const TInt KMaxNumberOfPUKAttempts(10); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 | const TInt KMaxNumberOfPINAttempts(3); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 | const TInt KLastRemainingInputAttempt(1); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | const TInt KTriesToConnectServer( 2 ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | const TInt KTimeBeforeRetryingRequest( 50000 ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 62 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 63 | // ================= MEMBER FUNCTIONS ======================= | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 64 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 65 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 66 | // CSecurityHandler::CSecurityHandler() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 67 | // C++ constructor | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | EXPORT_C CSecurityHandler::CSecurityHandler(RMobilePhone& aPhone): | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 71 | iPhone(aPhone), iQueryCanceled(ETrue), iSecurityDlg(NULL), iNoteDlg(NULL) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 72 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 73 | TInt result = iCustomPhone.Open(aPhone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 74 | TRAP_IGNORE( FeatureManager::InitializeLibL() ); //Shouldn't this panic if FM does not initialise?? | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 75 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 76 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 77 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 78 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 79 | // CSecurityHandler::~CSecurityHandler() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 80 | // Destructor | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 81 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 82 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 83 | EXPORT_C CSecurityHandler::~CSecurityHandler() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 84 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 85 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 86 |     RDebug::Print(_L("CSecurityHandler::~CSecurityHandler()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 87 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 88 | if ( iDestroyedPtr ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 89 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 90 | *iDestroyedPtr = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 91 | iDestroyedPtr = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 92 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 93 | CancelSecCodeQuery(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 94 | iCustomPhone.Close(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 95 | FeatureManager::UnInitializeLib(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 96 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 97 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 98 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 99 | // CSecurityHandler::HandleEventL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 100 | // Handles different security events | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 101 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 102 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 103 | EXPORT_C void CSecurityHandler::HandleEventL( | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 104 | RMobilePhone::TMobilePhoneSecurityEvent aEvent ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 105 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 106 | TInt result = KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 107 | HandleEventL( aEvent, result ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 108 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 109 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 110 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 111 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 112 | // CSecurityHandler::HandleEventL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 113 | // Handles different security events | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 114 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 115 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 116 | EXPORT_C void CSecurityHandler::HandleEventL( | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 117 | RMobilePhone::TMobilePhoneSecurityEvent aEvent, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 118 | TBool aStartup, TInt& aResult ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 119 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 120 | iStartup = aStartup; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 121 | HandleEventL( aEvent, aResult ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 122 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 123 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 124 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 125 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 126 | // CSecurityHandler::HandleEventL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 127 | // Handles different security events | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 128 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 129 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 130 | EXPORT_C void CSecurityHandler::HandleEventL( | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 131 | RMobilePhone::TMobilePhoneSecurityEvent aEvent, TInt& aResult ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 132 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 133 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 134 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 135 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 136 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 137 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 138 |     RDebug::Print(_L("(SECUI)CSecurityHandler::HandleEventL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 139 |     RDebug::Print(_L("(SECUI)CSecurityHandler::HandleEventL() EVENT: %d"), aEvent);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 140 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 141 | TBool wcdmaSupported(FeatureManager::FeatureSupported( KFeatureIdProtocolWcdma )); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 142 | TBool upinSupported(FeatureManager::FeatureSupported( KFeatureIdUpin )); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 143 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 144 | switch(aEvent) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 145 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 146 | case RMobilePhone::EPin1Required: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 147 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 148 |                 RDebug::Print(_L("(SECUI)CSecurityHandler::HandleEventL() Pin1Required"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 149 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 150 | aResult = Pin1RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 151 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 152 | case RMobilePhone::EPuk1Required: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 153 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 154 |                 RDebug::Print(_L("(SECUI)CSecurityHandler::HandleEventL() PUK1Required"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 155 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 156 | ((CAknNotifierAppServerAppUi*)(CEikonEnv::Static())->EikAppUi())->SuppressAppSwitching(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 157 | TRAPD(err,aResult = Puk1RequiredL()); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 158 | ((CAknNotifierAppServerAppUi*)(CEikonEnv::Static())->EikAppUi())->SuppressAppSwitching(EFalse); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 159 | User::LeaveIfError(err); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 160 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 161 | case RMobilePhone::EPin2Required: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 162 | Pin2RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 163 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 164 | case RMobilePhone::EPuk2Required: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 165 | Puk2RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 166 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 167 | case RMobilePhone::EUniversalPinRequired: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 168 | if(wcdmaSupported || upinSupported) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 169 |                    {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 170 | aResult = UPinRequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 171 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 172 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 173 | aResult = KErrNotSupported; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 174 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 175 | case RMobilePhone::EUniversalPukRequired: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 176 | if(wcdmaSupported || upinSupported) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 177 |                    {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 178 | aResult = UPukRequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 179 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 180 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 181 | aResult = KErrNotSupported; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 182 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 183 | case RMobilePhone::EPhonePasswordRequired: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 184 | aResult = PassPhraseRequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 185 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 186 | case RMobilePhone::EICCTerminated: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 187 | SimLockEventL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 188 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 189 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 190 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 191 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 192 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 193 | RDebug::Print( _L( "CSecurityHandler::HandleEventL() returning %d." ), aResult ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 194 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 195 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 196 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 197 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 198 | // CSecurityHandler::AskSecCodeL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 199 | // For asking security code e.g in settings | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 200 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 201 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 202 | EXPORT_C TBool CSecurityHandler::AskSecCodeL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 203 |     {        
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 204 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 205 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 206 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 207 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 208 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 209 |     RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 210 | #endif | 
| 1 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 211 | |
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 212 | /* if code is still not initialized, then there's no need to ask it. This fixes the error when the RFS requests the code */ | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 213 |     const TUid KCRUidSCPLockCode = {0x2002677B};
 | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 214 | const TUint32 KSCPLockCodeDefaultLockCode = 0x00000001; | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 215 | |
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 216 | CRepository* repository = CRepository::NewL(KCRUidSCPLockCode); | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 217 | TInt currentLockStatus = -1; | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 218 | TInt res=-1; | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 219 | |
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 220 | res = repository->Get(KSCPLockCodeDefaultLockCode , currentLockStatus); | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 221 | #if defined(_DEBUG) | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 222 | RDebug::Printf( "%s %s (%u) res=%x", __FILE__, __PRETTY_FUNCTION__, __LINE__, res ); | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 223 | RDebug::Printf( "%s %s (%u) currentLockStatus=%x", __FILE__, __PRETTY_FUNCTION__, __LINE__, currentLockStatus ); | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 224 | #endif | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 225 | delete repository; | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 226 | if(res==0 && currentLockStatus==1) | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 227 |         {
 | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 228 | // code is the default one; no need to request it. | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 229 | return ETrue; | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 230 | } | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 231 | /* end check for default code */ | 
| 
d5423fbb4f29
Revision: 201003
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: 
0diff
changeset | 232 | |
| 0 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 233 | // Destructor sets thisDestroyed to ETrue | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 234 | TBool thisDestroyed( EFalse ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 235 | iDestroyedPtr = &thisDestroyed; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 236 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 237 | iQueryCanceled = EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 238 | RMobilePhone::TMobilePassword password; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 239 | RMobilePhone::TMobilePassword required_fourth; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 240 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 241 | TInt ret = KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 242 | TInt err = KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 243 | TInt status = KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 244 | if(FeatureManager::FeatureSupported(KFeatureIdSapTerminalControlFw ) && | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 245 | FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 246 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 247 | // Connect to the SCP server, and request the code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 248 | RSCPClient scpClient; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 249 | User::LeaveIfError( scpClient.Connect() ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 250 | CleanupClosePushL( scpClient ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 251 | status = scpClient.SecCodeQuery( password, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 252 | RSCPClient::SCP_OK_CANCEL, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 253 | EFalse, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 254 | 0 ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 255 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 256 | if ( status != KErrCancel ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 257 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 258 | // Set this "true" to indicate that the input wasn't cancelled | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 259 | ret = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 260 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 261 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 262 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 263 | ret = EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 264 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 265 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 266 | CleanupStack::PopAndDestroy(); //scpClient | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 267 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 268 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 269 |   {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 270 | iSecurityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_SECURITY_CODE_MIN_LENGTH,SEC_C_SECURITY_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 271 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 272 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 273 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 274 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 275 |     	{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 276 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 277 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowSecCode);// adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 278 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 279 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 280 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 281 | CSecUiLockObserver* deviceLockStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 282 | CleanupStack::PushL(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 283 | err =KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 284 | TRAP(err,ret = iSecurityDlg->ExecuteLD(R_SECURITY_QUERY)); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 285 | CleanupStack::PopAndDestroy(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 286 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 287 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 288 | // check if CSecurityHandler has been "killed" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 289 | if ( thisDestroyed ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 290 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 291 | return EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 292 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 293 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 294 | iDestroyedPtr = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 295 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 296 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 297 | if (err != KErrNone) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 298 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 299 | User::Leave(err); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 300 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 301 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 302 | if (ret) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 303 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 304 | while (!iQueryCanceled) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 305 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 306 | if (!FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 307 | 		           {           
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 308 | RMobilePhone::TMobilePhoneSecurityCode secCodeType; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 309 | secCodeType = RMobilePhone::ESecurityCodePhonePassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 310 | CWait* wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 311 | iPhone.VerifySecurityCode(wait->iStatus,secCodeType, password, required_fourth); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 312 | status = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 313 | delete wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 314 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 315 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 316 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 317 | switch(status) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 318 |                 {        
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 319 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 320 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 321 | if(FeatureManager::FeatureSupported(KFeatureIdSapTerminalControlFw ) && | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 322 | !(FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements))) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 323 |     								{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 324 | RSCPClient scpClient; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 325 | User::LeaveIfError( scpClient.Connect() ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 326 | CleanupClosePushL( scpClient ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 327 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 328 | TSCPSecCode newCode; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 329 | newCode.Copy( password ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 330 | scpClient.StoreCode( newCode ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 331 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 332 | CleanupStack::PopAndDestroy(); //scpClient | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 333 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 334 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 335 | iQueryCanceled = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 336 | return ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 337 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 338 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 339 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 340 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 341 | iDestroyedPtr = &thisDestroyed; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 342 | // security code blocked! | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 343 | iNoteDlg = new (ELeave) CAknNoteDialog(REINTERPRET_CAST(CEikDialog**,&iNoteDlg)); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 344 | iNoteDlg->SetTimeout(CAknNoteDialog::ELongTimeout); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 345 | iNoteDlg->SetTone(CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 346 | err =KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 347 | TRAP(err,iNoteDlg->ExecuteLD(R_SEC_BLOCKED)); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 348 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 349 | // check if CSecurityHandler has been "killed" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 350 | if ( thisDestroyed ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 351 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 352 | return EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 353 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 354 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 355 | iDestroyedPtr = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 356 | iNoteDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 357 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 358 | if (err != KErrNone) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 359 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 360 | User::Leave(err); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 361 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 362 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 363 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 364 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 365 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 366 |                     {    
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 367 | iDestroyedPtr = &thisDestroyed; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 368 | // code was entered erroneusly | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 369 | iNoteDlg = new (ELeave) CAknNoteDialog(REINTERPRET_CAST(CEikDialog**,&iNoteDlg)); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 370 | iNoteDlg->SetTimeout(CAknNoteDialog::ELongTimeout); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 371 | iNoteDlg->SetTone(CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 372 | err =KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 373 | TRAP(err,iNoteDlg->ExecuteLD(R_CODE_ERROR)); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 374 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 375 | // check if CSecurityHandler has been "killed" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 376 | if ( thisDestroyed ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 377 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 378 | return EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 379 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 380 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 381 | iDestroyedPtr = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 382 | iNoteDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 383 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 384 | if (err != KErrNone) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 385 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 386 | User::Leave(err); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 387 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 388 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 389 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 390 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 391 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 392 | iDestroyedPtr = &thisDestroyed; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 393 | err =KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 394 | TRAP(err,ShowGenericErrorNoteL(status)); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 395 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 396 | // check if CSecurityHandler has been "killed" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 397 | if ( thisDestroyed ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 398 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 399 | return EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 400 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 401 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 402 | iDestroyedPtr = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 403 | iNoteDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 404 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 405 | if (err != KErrNone) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 406 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 407 | User::Leave(err); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 408 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 409 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 410 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 411 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 412 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 413 | if (iQueryCanceled) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 414 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 415 | ret = EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 416 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 417 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 418 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 419 |             password = _L("");
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 420 | iDestroyedPtr = &thisDestroyed; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 421 | if(FeatureManager::FeatureSupported(KFeatureIdSapTerminalControlFw ) && | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 422 | FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 423 |     				{       
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 424 | // Connect to the SCP server, and request the code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 425 | RSCPClient scpClient; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 426 | User::LeaveIfError( scpClient.Connect() ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 427 | CleanupClosePushL( scpClient ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 428 | status = scpClient.SecCodeQuery( password, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 429 | RSCPClient::SCP_OK_CANCEL, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 430 | EFalse, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 431 | 0 ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 432 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 433 | if ( status != KErrCancel ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 434 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 435 | // Set this "true" to indicate that the input wasn't cancelled | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 436 | ret = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 437 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 438 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 439 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 440 | ret = EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 441 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 442 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 443 | CleanupStack::PopAndDestroy(); //scpClient | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 444 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 445 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 446 |           {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 447 | iSecurityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_SECURITY_CODE_MIN_LENGTH,SEC_C_SECURITY_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 448 | CSecUiLockObserver* deviceLockStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 449 | CleanupStack::PushL(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 450 | err =KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 451 | TRAP(err,ret = iSecurityDlg->ExecuteLD(R_SECURITY_QUERY)); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 452 | CleanupStack::PopAndDestroy(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 453 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 454 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 455 | // check if CSecurityHandler has been "killed" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 456 | if ( thisDestroyed ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 457 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 458 | return EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 459 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 460 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 461 | iDestroyedPtr = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 462 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 463 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 464 | if (err != KErrNone) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 465 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 466 | User::Leave(err); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 467 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 468 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 469 | if (!ret) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 470 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 471 | } // while | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 472 | } // if | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 473 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 474 | iQueryCanceled = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 475 | return ret; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 476 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 477 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 478 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 479 | // CSecurityHandler::CancelSecCodeQuery() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 480 | // Cancels PIN2 and security code queries | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 481 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 482 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 483 | EXPORT_C void CSecurityHandler::CancelSecCodeQuery() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 484 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 485 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 486 |     RDebug::Print(_L("(SECUI)CSecurityHandler::CancelSecCodeQuery()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 487 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 488 | if (!iQueryCanceled) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 489 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 490 | iQueryCanceled = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 491 | if (iSecurityDlg != NULL) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 492 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 493 | delete iSecurityDlg; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 494 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 495 | if (iNoteDlg != NULL) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 496 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 497 | delete iNoteDlg; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 498 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 499 | iNoteDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 500 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 501 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 502 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 503 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 504 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 505 | // CSecurityHandler::AskSecCodeInAutoLock() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 506 | // for asking security code in autolock | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 507 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 508 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 509 | EXPORT_C TBool CSecurityHandler::AskSecCodeInAutoLockL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 510 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 511 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 512 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 513 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 514 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 515 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 516 | #ifdef __WINS__ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 517 | return ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 518 | #else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 519 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 520 |     RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 521 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 522 | TInt res; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 523 | CWait* wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 524 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 525 | RMobilePhone::TMobilePhoneLockSetting lockChange(RMobilePhone::ELockSetDisabled); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 526 | RMobilePhone::TMobilePhoneLock lockType = RMobilePhone::ELockPhoneDevice; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 527 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 528 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 529 |     RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() get autolock period"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 530 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 531 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 532 | // get autolock period from Central Repository. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 533 | CRepository* repository = CRepository::NewL(KCRUidSecuritySettings); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 534 | TInt period = 0; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 535 | res = repository->Get(KSettingsAutoLockTime, period); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 536 | delete repository; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 537 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 538 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 539 |     RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() autolock period:%d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 540 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 541 | if (res == KErrNone) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 542 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 543 | // disable autolock in Domestic OS side too if autolock period is 0. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 544 | if (period == 0 ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 545 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 546 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 547 |             RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() Call SetLockSetting"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 548 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 549 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 550 | #ifdef RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 551 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 552 | // If remote lock is enabled, don't disable the domestic OS device lock | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 553 | // since that would render the RemoteLock useless. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 554 | // Instead just re-set the DOS lock to enabled which as a side effect | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 555 | // requests the security code from the user. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 556 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 557 | TBool remoteLockStatus( EFalse ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 558 | CRemoteLockSettings* remoteLockSettings = CRemoteLockSettings::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 559 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 560 | if ( remoteLockSettings->GetEnabled( remoteLockStatus ) ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 561 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 562 | if ( remoteLockStatus ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 563 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 564 | // Remote lock is enabled | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 565 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 566 | RDebug::Print( _L( "(SecUi)CSecurityHandler::AskSecCodeInAutoLockL() - RemoteLock is enabled: lockChange = RMobilePhone::ELockSetEnabled" ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 567 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 568 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 569 | lockChange = RMobilePhone::ELockSetEnabled; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 570 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 571 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 572 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 573 | // Remote lock is disabled | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 574 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 575 | RDebug::Print( _L( "(SecUi)CSecurityHandler::AskSecCodeInAutoLockL() - RemoteLock is disabled: lockChange = RMobilePhone::ELockSetDisabled" ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 576 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 577 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 578 | lockChange = RMobilePhone::ELockSetDisabled; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 579 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 580 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 581 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 582 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 583 | // Failed to get remote lock status | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 584 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 585 | RDebug::Print( _L( "(SecUi)CSecurityHandler::AskSecCodeInAutoLockL() - Failed to get RemoteLock status" ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 586 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 587 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 588 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 589 | delete remoteLockSettings; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 590 | remoteLockSettings = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 591 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 592 | #else // not defined RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 593 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 594 | lockChange = RMobilePhone::ELockSetDisabled; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 595 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 596 | #endif // RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 597 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 598 | wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 599 | iPhone.SetLockSetting(wait->iStatus,lockType,lockChange); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 600 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 601 | delete wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 602 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 603 |                 RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() SetLockSetting RESULT:%d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 604 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 605 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 606 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 607 |             {	// ask security code
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 608 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 609 |             	RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() Ask sec code via notifier"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 610 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 611 | RNotifier codeQueryNotifier; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 612 | User::LeaveIfError(codeQueryNotifier.Connect()); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 613 | CWait* wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 614 | CleanupStack::PushL(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 615 | TInt queryResponse = 0; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 616 | TPckg<TInt> response(queryResponse); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 617 | TSecurityNotificationPckg params; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 618 | params().iEvent = static_cast<TInt>(RMobilePhone::EPhonePasswordRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 619 | params().iStartup = EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 620 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 621 |     			RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() Start Notifier"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 622 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 623 | codeQueryNotifier.StartNotifierAndGetResponse(wait->iStatus, KSecurityNotifierUid,params, response); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 624 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 625 | CleanupStack::PopAndDestroy(); // wait | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 626 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 627 |             	RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() results:"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 628 |             	RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() res:%d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 629 |             	RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() queryResponse:%d"), queryResponse);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 630 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 631 | if(res == KErrNone) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 632 | res = queryResponse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 633 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 634 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 635 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 636 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 637 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 638 |         RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() KERRSOMETHING:Call SetLockSetting"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 639 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 640 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 641 | #ifdef RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 642 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 643 | // If remote lock is enabled, don't disable the domestic OS device lock | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 644 | // since that would render the RemoteLock useless. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 645 | // Instead just re-set the DOS lock to enabled which as a side effect | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 646 | // requests the security code from the user. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 647 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 648 | TBool remoteLockStatus( EFalse ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 649 | CRemoteLockSettings* remoteLockSettings = CRemoteLockSettings::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 650 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 651 | if ( remoteLockSettings->GetEnabled( remoteLockStatus ) ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 652 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 653 | if ( remoteLockStatus ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 654 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 655 | // Remote lock is enabled | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 656 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 657 | RDebug::Print( _L( "(SecUi)CSecurityHandler::AskSecCodeInAutoLockL() - Failed to get AutoLock status and RemoteLock is enabled: lockChange = RMobilePhone::ELockSetEnabled" ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 658 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 659 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 660 | lockChange = RMobilePhone::ELockSetEnabled; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 661 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 662 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 663 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 664 | // Remote lock is disabled | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 665 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 666 | RDebug::Print( _L( "(SecUi)CSecurityHandler::AskSecCodeInAutoLockL() - Failed to get AutoLock status and RemoteLock is disabled: lockChange = RMobilePhone::ELockSetDisabled" ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 667 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 668 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 669 | lockChange = RMobilePhone::ELockSetDisabled; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 670 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 671 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 672 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 673 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 674 | // Failed to get remote lock status | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 675 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 676 | RDebug::Print( _L( "(SecUi)CSecurityHandler::AskSecCodeInAutoLockL() - Failed to get AutoLock status and failed to get RemoteLock status" ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 677 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 678 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 679 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 680 | delete remoteLockSettings; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 681 | remoteLockSettings = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 682 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 683 | #else // not defined RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 684 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 685 | // could not get the current autolock time... disable autolock in Domestic OS side. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 686 | lockChange = RMobilePhone::ELockSetDisabled; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 687 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 688 | #endif // RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 689 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 690 | wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 691 | iPhone.SetLockSetting(wait->iStatus,lockType,lockChange); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 692 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 693 | delete wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 694 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 695 |         RDebug::Print(_L("(SECUI)CSecurityHandler::AskSecCodeInAutoLockL() KES: SetLockSetting RESULT:%d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 696 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 697 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 698 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 699 | switch (res) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 700 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 701 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 702 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 703 | return ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 704 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 705 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 706 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 707 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 708 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 709 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 710 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 711 | return AskSecCodeInAutoLockL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 712 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 713 | case KErrAbort: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 714 | case KErrCancel: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 715 | // user pressed "cancel" | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 716 | return EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 717 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 718 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 719 | return AskSecCodeInAutoLockL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 720 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 721 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 722 | #endif // WINS | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 723 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 724 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 725 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 726 | // CSecurityHandler::PassPhraseRequired() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 727 | // Handles PassPhraseRequired event | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 728 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 729 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 730 | TInt CSecurityHandler::PassPhraseRequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 731 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 732 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 733 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 734 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 735 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 736 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 737 |     RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 738 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 739 | TBool StartUp = iStartup; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 740 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 741 | RMobilePhone::TMobilePassword password; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 742 | RMobilePhone::TMobilePassword required_fourth; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 743 | TInt status; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 744 | TInt autolockState; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 745 | TInt err( KErrGeneral ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 746 | err = RProperty::Get(KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, autolockState); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 747 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 748 |     RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() Autolock Status result: %d"), err);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 749 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 750 | if(!StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 751 | User::LeaveIfError( err ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 752 | TBool isConditionSatisfied = EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 753 | TInt tarmFlag=0; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 754 | if(FeatureManager::FeatureSupported(KFeatureIdSapTerminalControlFw )) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 755 |   	{		
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 756 | TInt tRet = RProperty::Get( KSCPSIDAutolock, SCP_TARM_ADMIN_FLAG_UID, tarmFlag ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 757 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 758 | if ( tRet != KErrNone ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 759 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 760 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 761 |         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL():\
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 762 | Warning: failed to get TARM Admin Flag state")); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 763 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 764 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 765 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 766 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 767 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 768 |         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL(): TARM flag: %d"), tarmFlag );
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 769 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 770 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 771 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 772 | if ( ( StartUp ) || ( tarmFlag & KSCPFlagResyncQuery ) ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 773 | isConditionSatisfied = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 774 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 775 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 776 | 		{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 777 | if (StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 778 | isConditionSatisfied = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 779 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 780 | if (isConditionSatisfied) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 781 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 782 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 783 |         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() Dialog 1"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 784 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 785 | // Security code at bootup: No "cancel" softkey; Emergency calls enabled. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 786 | if(FeatureManager::FeatureSupported(KFeatureIdSapTerminalControlFw ) && | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 787 | FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 788 |     		{                   	    		    		    		
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 789 | // Connect to the SCP server, and request the code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 790 | RSCPClient scpClient; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 791 | User::LeaveIfError( scpClient.Connect() ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 792 | CleanupClosePushL( scpClient ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 793 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 794 | status = scpClient.SecCodeQuery( password, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 795 | RSCPClient::SCP_OK_ETEL, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 796 | ETrue, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 797 | KSCPEtelRequest ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 798 | // Note that SecCodeQuery doesn't indicate the return value from the dialog | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 799 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 800 | CleanupStack::PopAndDestroy(); //scpClient | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 801 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 802 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 803 |       {     
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 804 | CCodeQueryDialog* securityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_SECURITY_CODE_MIN_LENGTH,SEC_C_SECURITY_CODE_MAX_LENGTH,ESecUiCodeEtelReqest); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 805 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 806 | securityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 807 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 808 | securityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 809 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 810 | securityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 811 | CAknMediatorFacade* covercl = AknMediatorFacade(securityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 812 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 813 |     		{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 814 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 815 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowSecCode); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 816 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 817 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 818 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 819 | status = securityDlg->ExecuteLD(R_SECURITY_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 820 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 821 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 822 | else if ( (autolockState > EAutolockOff)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 823 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 824 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 825 |         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() Dialog 2"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 826 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 827 | // Autolock is On. Security event came from user pressing "unlock". | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 828 | // Emergency call support must be enabled and there must be a "cancel" softkey. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 829 | if(FeatureManager::FeatureSupported(KFeatureIdSapTerminalControlFw ) && | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 830 | FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 831 | 		    		{                                    
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 832 | // Connect to the SCP server, and request the code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 833 | RSCPClient scpClient; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 834 | User::LeaveIfError( scpClient.Connect() ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 835 | CleanupClosePushL( scpClient ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 836 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 837 | status = scpClient.SecCodeQuery( password, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 838 | RSCPClient::SCP_OK_CANCEL, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 839 | ETrue, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 840 | KSCPEtelRequest ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 841 | // Note that SecCodeQuery doesn't indicate the return value from the dialog | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 842 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 843 | CleanupStack::PopAndDestroy(); //scpClient | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 844 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 845 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 846 | 			    {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 847 | CCodeQueryDialog* securityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_SECURITY_CODE_MIN_LENGTH,SEC_C_SECURITY_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 848 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 849 | securityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 850 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 851 | securityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 852 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 853 | securityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 854 | CAknMediatorFacade* covercl = AknMediatorFacade(securityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 855 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 856 |     	{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 857 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 858 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowSecCode); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 859 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 860 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 861 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 862 | status = securityDlg->ExecuteLD(R_SECURITY_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 863 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 864 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 865 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 866 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 867 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 868 |         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() Dialog 3"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 869 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 870 | // Code query due to a setting change; "Cancel" softkey active; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 871 | // no emergency call support. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 872 | if(FeatureManager::FeatureSupported(KFeatureIdSapTerminalControlFw ) && | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 873 | FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 874 | 	    		{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 875 | // Connect to the SCP server, and request the code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 876 | RSCPClient scpClient; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 877 | User::LeaveIfError( scpClient.Connect() ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 878 | CleanupClosePushL( scpClient ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 879 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 880 | status = scpClient.SecCodeQuery( password, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 881 | RSCPClient::SCP_OK_CANCEL, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 882 | EFalse, | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 883 | KSCPEtelRequest ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 884 | // Note that SecCodeQuery doesn't indicate the return value from the dialog | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 885 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 886 | CleanupStack::PopAndDestroy(); //scpClient | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 887 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 888 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 889 | 			    {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 890 | iSecurityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_SECURITY_CODE_MIN_LENGTH,SEC_C_SECURITY_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 891 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 892 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 893 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 894 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 895 |     	{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 896 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowSecCode); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 897 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 898 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 899 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 900 | // read a flag to see whether the query is SecUi originated. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 901 | TInt secUiOriginatedQuery(ESecurityUIsETelAPIOriginated); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 902 | RProperty::Get(KPSUidSecurityUIs, KSecurityUIsSecUIOriginatedQuery, secUiOriginatedQuery); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 903 | CSecUiLockObserver* deviceLockStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 904 | CleanupStack::PushL(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 905 | CSecUiLockObserver* queryStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg, ESecUiRequestStateObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 906 | CleanupStack::PushL(queryStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 907 | CSecUiLockObserver* callStatusObserver = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 908 | if(secUiOriginatedQuery == ESecurityUIsSystemLockOriginated) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 909 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 910 | callStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg, ESecUiCallStateObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 911 | CleanupStack::PushL(callStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 912 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 913 | status = iSecurityDlg->ExecuteLD(R_SECURITY_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 914 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 915 | if(callStatusObserver == NULL) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 916 | CleanupStack::PopAndDestroy(2); //deviceLockStatusObserver, queryStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 917 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 918 | CleanupStack::PopAndDestroy(3); //deviceLockStatusObserver, queryStatusObserver, callStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 919 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 920 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 921 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 922 | TBool isCondition = EFalse; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 923 | if(!FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 924 | {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 925 | if (!status || (status == ESecUiEmergencyCall) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 926 | || (status == EAknSoftkeyEmergencyCall) || (status == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 927 | isCondition = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 928 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 929 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 930 | {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 931 | if ( ( status == KErrCancel ) || (status == ESecUiEmergencyCall) || | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 932 | (status == EAknSoftkeyEmergencyCall) || (status == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 933 | isCondition = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 934 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 935 | if (isCondition) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 936 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 937 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 938 | 		RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() DIALOG ERROR"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 939 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 940 | if (!StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 941 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 942 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 943 |             RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() ABORT CALLED!!!!!!"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 944 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 945 | iPhone.AbortSecurityCode(RMobilePhone::ESecurityCodePhonePassword); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 946 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 947 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 948 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 949 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 950 | RMobilePhone::TMobilePhoneSecurityCode secCodeType = RMobilePhone::ESecurityCodePhonePassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 951 | CWait* wait = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 952 | if(!FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 953 | { 
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 954 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 955 |         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() VerifySecurityCode"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 956 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 957 | wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 958 | iPhone.VerifySecurityCode(wait->iStatus,secCodeType, password, required_fourth); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 959 | status = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 960 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 961 |         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() VerifySecurityCode STATUS: %d"), status);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 962 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 963 | delete wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 964 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 965 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 966 |   {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 967 | wait = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 968 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 969 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 970 | TInt returnValue = status; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 971 | switch(status) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 972 |         {        
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 973 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 974 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 975 |             RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() KErrNone"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 976 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 977 | // code approved | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 978 | CSecuritySettings::ShowResultNoteL(R_CONFIRMATION_NOTE, CAknNoteDialog::EConfirmationTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 979 | if(FeatureManager::FeatureSupported(KFeatureIdSapTerminalControlFw)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 980 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 981 | // Unset the admin flag if set | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 982 | if ( tarmFlag & KSCPFlagResyncQuery ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 983 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 984 | TInt tRet = RProperty::Get( KSCPSIDAutolock, SCP_TARM_ADMIN_FLAG_UID, tarmFlag ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 985 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 986 | if ( tRet == KErrNone ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 987 | 	                    {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 988 | tarmFlag &= ~KSCPFlagResyncQuery; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 989 | tRet = RProperty::Set( KSCPSIDAutolock, SCP_TARM_ADMIN_FLAG_UID, tarmFlag ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 990 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 991 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 992 | if ( tRet != KErrNone ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 993 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 994 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 995 |                         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL():\
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 996 | FAILED to unset TARM Admin Flag")); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 997 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 998 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 999 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1000 | if(!FeatureManager::FeatureSupported(KFeatureIdSapDeviceLockEnhancements)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1001 | 				        {           
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1002 | RSCPClient scpClient; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1003 | User::LeaveIfError( scpClient.Connect() ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1004 | CleanupClosePushL( scpClient ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1005 | TSCPSecCode newCode; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1006 | newCode.Copy( password ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1007 | scpClient.StoreCode( newCode ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1008 | CleanupStack::PopAndDestroy(); //scpClient | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1009 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1010 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1011 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1012 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1013 | if (StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1014 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1015 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1016 |                 RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL()KErrNone: Startup; get autolock period."));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1017 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1018 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1019 | // get autolock period from Central Repository. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1020 | CRepository* repository = CRepository::NewL(KCRUidSecuritySettings); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1021 | TInt period = 0; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1022 | TInt res = repository->Get(KSettingsAutoLockTime, period); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1023 | delete repository; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1024 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1025 | _LIT_SECURITY_POLICY_PASS(KReadPolicy); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1026 | _LIT_SECURITY_POLICY_C1(KWritePolicy, ECapabilityWriteDeviceData); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1027 | RProperty::Define(KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, RProperty::EInt, KReadPolicy, KWritePolicy); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1028 | RProperty::Set(KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, EAutolockOff); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1029 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1030 | 								RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() EAutolockOff")); 
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1031 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1032 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1033 | if (res == KErrNone) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1034 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1035 | // disable autolock in Domestic OS side too if autolock period is 0. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1036 | if (period == 0 ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1037 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1038 | #ifdef RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1039 | // If remote lock is enabled, don't disable the domestic OS device lock | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1040 | // since that would render the RemoteLock useless. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1041 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1042 | TBool remoteLockStatus( EFalse ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1043 | CRemoteLockSettings* remoteLockSettings = CRemoteLockSettings::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1044 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1045 | if ( remoteLockSettings->GetEnabled( remoteLockStatus ) ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1046 |                             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1047 | if ( !remoteLockStatus ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1048 |                                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1049 | // Remote lock is disabled | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1050 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1051 | RDebug::Print( _L( "(SecUi)CSecurityHandler::PassPhraseRequiredL() - Autolock and RemoteLock are disabled -> disable DOS device lock" ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1052 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1053 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1054 | // Disable DOS device lock setting | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1055 | wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1056 | iCustomPhone.DisablePhoneLock(wait->iStatus,password); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1057 | wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1058 | delete wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1059 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1060 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1061 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1062 |                             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1063 | // Failed to get remote lock status | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1064 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1065 | RDebug::Print( _L( "(SecUi)CSecurityHandler::PassPhraseRequiredL() - Autolock is disabled, but failed to get RemoteLock status, so do nothing." ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1066 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1067 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1068 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1069 | delete remoteLockSettings; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1070 | remoteLockSettings = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1071 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1072 | #else // not defined RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1073 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1074 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1075 |                         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL()KErrNone: Startup; DisablePhoneLock."));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1076 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1077 | wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1078 | iCustomPhone.DisablePhoneLock(wait->iStatus,password); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1079 | wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1080 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1081 |                         RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL()KErrNone: Startup; DisablePhoneLock completed."));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1082 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1083 | delete wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1084 | #endif // RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1085 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1086 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1087 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1088 |                     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1089 | #ifdef RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1090 | // If remote lock is enabled, don't disable the domestic OS device lock | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1091 | // since that would render the RemoteLock useless. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1092 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1093 | TBool remoteLockStatus( EFalse ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1094 | CRemoteLockSettings* remoteLockSettings = CRemoteLockSettings::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1095 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1096 | if ( remoteLockSettings->GetEnabled( remoteLockStatus ) ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1097 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1098 | if ( !remoteLockStatus ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1099 |                             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1100 | // Remote lock is disabled | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1101 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1102 | RDebug::Print( _L( "(SecUi)CSecurityHandler::PassPhraseRequiredL() - Failed to get Autolock period and RemoteLock is disabled -> disable DOS device lock" ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1103 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1104 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1105 | wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1106 | iCustomPhone.DisablePhoneLock(wait->iStatus,password); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1107 | wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1108 | delete wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1109 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1110 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1111 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1112 |                         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1113 | // Failed to get remote lock status | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1114 | #ifdef _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1115 | RDebug::Print( _L( "(SecUi)CSecurityHandler::PassPhraseRequiredL() - Failed to get Autolock period and RemoteLock status, so do nothing." ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1116 | #endif // _DEBUG | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1117 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1118 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1119 | delete remoteLockSettings; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1120 | remoteLockSettings = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1121 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1122 | #else // not defined RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1123 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1124 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1125 |                     RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL()KErrNone: Startup; Could not get autolock period."));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1126 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1127 | // could not get the current autolock time... disable autolock in Domestic OS side. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1128 | wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1129 | iCustomPhone.DisablePhoneLock(wait->iStatus,password); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1130 | wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1131 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1132 |                     RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL()KErrNone: Startup; NO AUTOLOCK PERIOD; DisablePhoneLock completed."));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1133 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1134 | delete wait; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1135 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1136 | #endif // RD_REMOTELOCK | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1137 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1138 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1139 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1140 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1141 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1142 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1143 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1144 | // security code blocked! | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1145 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1146 |             RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() ErrGsmSSPasswordAttemptsViolation"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1147 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1148 | CSecuritySettings::ShowResultNoteL(R_SEC_BLOCKED, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1149 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1150 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1151 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1152 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1153 |             RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() KErrGsm0707IncorrectPassword"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1154 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1155 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1156 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1157 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1158 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1159 |             RDebug::Print(_L("(SECUI)CSecurityHandler::PassPhraseRequiredL() DEFAULT"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1160 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1161 | CSecuritySettings::ShowErrorNoteL(status); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1162 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1163 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1164 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1165 | return returnValue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1166 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1167 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1168 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1169 | // CSecurityHandler::Pin1Required() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1170 | // Handles Pin1Required event | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1171 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1172 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1173 | TInt CSecurityHandler::Pin1RequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1174 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1175 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1176 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1177 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1178 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1179 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1180 | RMobilePhone::TMobilePassword password; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1181 | RMobilePhone::TMobilePassword required_fourth; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1182 | RMobilePhone::TMobilePhoneSecurityCode secCodeType = RMobilePhone::ESecurityCodePin1; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1183 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5 codeInfo; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1184 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5Pckg codeInfoPkg(codeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1185 | TBool StartUp = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1186 | TInt secUiOriginatedQuery(ESecurityUIsSecUIOriginatedUninitialized); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1187 | TInt err = KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1188 | TInt res = KErrGeneral; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1189 | CWait* wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1190 | CleanupStack::PushL(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1191 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1192 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1193 | StartUp = iStartup; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1194 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1195 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1196 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin1RequiredL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1197 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1198 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1199 | if(!StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1200 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1201 | // read a flag to see whether the query is SecUi originated. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1202 | err = RProperty::Get(KPSUidSecurityUIs, KSecurityUIsSecUIOriginatedQuery, secUiOriginatedQuery); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1203 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1204 | if ( err != KErrNone ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1205 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1206 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1207 |         RDebug::Print(_L("(SECUI)CSecurityHandler::Pin1RequiredL():\
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1208 | FAILED to get the SECUI query Flag: %d"), err); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1209 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1210 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1211 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1212 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1213 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1214 |                 RDebug::Print(_L("(SECUI)CSecurityHandler::Pin1RequiredL():\
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1215 | SECUI query Flag: %d"), secUiOriginatedQuery); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1216 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1217 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1218 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1219 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1220 |     RDebug::Print(_L("CSecurityHandler::Pin1RequiredL() Execute dlg"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1221 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1222 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1223 | if(StartUp || (secUiOriginatedQuery != ESecurityUIsSecUIOriginated) || (err != KErrNone)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1224 |     {	
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1225 | iSecurityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiCodeEtelReqest); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1226 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1227 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1228 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1229 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1230 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1231 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1232 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1233 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1234 |     	{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1235 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1236 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowPIN1); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1237 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1238 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1239 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1240 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1241 | wait->SetRequestType(EMobilePhoneGetSecurityCodeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1242 | iPhone.GetSecurityCodeInfo(wait->iStatus, secCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1243 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1244 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1245 | TInt attempts(codeInfo.iRemainingEntryAttempts); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1246 |         RDebug::Print(_L("CSecurityHandler::Pin1RequiredL() Remaining Attempts query status: %d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1247 |         RDebug::Print(_L("CSecurityHandler::Pin1RequiredL() Remaining Attempts: %d"), attempts);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1248 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1249 | User::LeaveIfError(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1250 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1251 | if(codeInfo.iRemainingEntryAttempts == KMaxNumberOfPINAttempts) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1252 | res = iSecurityDlg->ExecuteLD(R_PIN_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1253 | else if(codeInfo.iRemainingEntryAttempts > KLastRemainingInputAttempt) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1254 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1255 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_REMAINING_PIN_ATTEMPTS, codeInfo.iRemainingEntryAttempts); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1256 | res = iSecurityDlg->ExecuteLD(R_PIN_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1257 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1258 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1259 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1260 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1261 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_FINAL_PIN_ATTEMPT); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1262 | res = iSecurityDlg->ExecuteLD(R_PIN_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1263 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1264 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1265 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1266 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1267 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1268 |     	RDebug::Print(_L("CSecurityHandler::Pin1RequiredL() Execute dlg RESULT: %d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1269 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1270 | if ((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1271 |             { 
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1272 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1273 |             RDebug::Print(_L("CSecurityHandler::Pin1RequiredL() R_PIN_REQUEST_QUERY CANCEL!"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1274 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1275 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1276 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1277 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1278 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1279 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1280 |     {	
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1281 | iSecurityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1282 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1283 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1284 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1285 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1286 |     		{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1287 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1288 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowPIN1); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1289 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1290 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1291 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1292 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1293 | wait->SetRequestType(EMobilePhoneGetSecurityCodeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1294 | iPhone.GetSecurityCodeInfo(wait->iStatus, secCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1295 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1296 | User::LeaveIfError(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1297 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1298 | CSecUiLockObserver* deviceLockStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1299 | CleanupStack::PushL(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1300 | CSecUiLockObserver* queryStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg, ESecUiRequestStateObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1301 | CleanupStack::PushL(queryStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1302 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1303 | if(codeInfo.iRemainingEntryAttempts == KMaxNumberOfPINAttempts) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1304 | res = iSecurityDlg->ExecuteLD(R_PIN_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1305 | else if(codeInfo.iRemainingEntryAttempts > KLastRemainingInputAttempt) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1306 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1307 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_REMAINING_PIN_ATTEMPTS, codeInfo.iRemainingEntryAttempts ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1308 | res = iSecurityDlg->ExecuteLD(R_PIN_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1309 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1310 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1311 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1312 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1313 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_FINAL_PIN_ATTEMPT); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1314 | res = iSecurityDlg->ExecuteLD(R_PIN_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1315 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1316 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1317 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1318 | CleanupStack::PopAndDestroy(2); //deviceLockStatusObserver, queryStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1319 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1320 | if( !res || (res == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1321 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1322 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1323 |             RDebug::Print(_L("CSecurityHandler::Pin1RequiredL() R_PIN_QUERY cancel!"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1324 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1325 | // cancel code request | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1326 | iPhone.AbortSecurityCode(RMobilePhone::ESecurityCodePin1); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1327 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1328 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1329 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1330 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1331 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1332 |     RDebug::Print(_L("CSecurityNotifier::Pin1RequiredL()VerifySecurityCode"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1333 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1334 | iPhone.VerifySecurityCode(wait->iStatus,secCodeType, password, required_fourth); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1335 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1336 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1337 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1338 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin1RequiredL() VerifySecurityCode STATUS: %d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1339 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1340 | TInt returnValue = res; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1341 | switch(res) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1342 |         {        
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1343 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1344 | // code approved | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1345 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1346 |             RDebug::Print(_L("CSecurityHandler::Pin1RequiredL()code approved "));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1347 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1348 | CSecuritySettings::ShowResultNoteL(R_CONFIRMATION_NOTE, CAknNoteDialog::EConfirmationTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1349 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1350 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1351 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1352 | // code was entered erroneously | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1353 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1354 | if(StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1355 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1356 | returnValue = Pin1RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1357 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1358 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1359 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1360 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1361 | // code blocked; show error note and terminate. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1362 | // code blocked | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1363 | if(StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1364 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1365 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1366 | case KErrGsm0707SimWrong: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1367 | // sim lock active | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1368 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1369 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1370 | CSecuritySettings::ShowErrorNoteL(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1371 | if(StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1372 |             {        
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1373 | returnValue = Pin1RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1374 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1375 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1376 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1377 | return returnValue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1378 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1379 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1380 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1381 | // CSecurityHandler::Puk1Required() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1382 | // Handles Puk1Required event | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1383 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1384 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1385 | TInt CSecurityHandler::Puk1RequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1386 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1387 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1388 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1389 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1390 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1391 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1392 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Puk1RequiredL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1393 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1394 | RMobilePhone::TMobilePassword aPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1395 | RMobilePhone::TMobilePassword aNewPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1396 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5 codeInfo; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1397 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5Pckg codeInfoPkg(codeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1398 | RMobilePhone::TMobilePhoneSecurityCode blockCodeType; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1399 | blockCodeType = RMobilePhone::ESecurityCodePuk1; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1400 | CWait* wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1401 | CleanupStack::PushL(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1402 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1403 | TBool StartUp(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1404 | StartUp = iStartup; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1405 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1406 | TInt res(KErrNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1407 | wait->SetRequestType(EMobilePhoneGetSecurityCodeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1408 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1409 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Puk1RequiredL(): Get Code info"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1410 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1411 | iPhone.GetSecurityCodeInfo(wait->iStatus, blockCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1412 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1413 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1414 | TInt thisTry = 0; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1415 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1416 | // If there was a problem (as there might be in case we're dropping off SIM Access Profile); try again a couple of times. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1417 | while ( res != KErrNone && ( thisTry++ ) <= KTriesToConnectServer ) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1418 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1419 | User::After( KTimeBeforeRetryingRequest ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1420 | iPhone.GetSecurityCodeInfo(wait->iStatus, blockCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1421 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1422 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1423 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1424 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Puk1RequiredL(): Get Code info result: %d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1425 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1426 | //If there's still an error we're doomed. Bail out. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1427 | User::LeaveIfError(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1428 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1429 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1430 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Puk1RequiredL(): Show last note"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1431 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1432 | //show the last "Code Error" note of PIN verify result here so it won't be left under the PUK1 dialog | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1433 | if(!StartUp && (codeInfo.iRemainingEntryAttempts == KMaxNumberOfPUKAttempts)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1434 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1435 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1436 | // ask PUK code | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1437 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aPassword,SEC_C_PUK_CODE_MIN_LENGTH,SEC_C_PUK_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1438 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1439 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1440 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1441 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1442 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1443 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1444 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1445 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1446 |     	{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1447 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1448 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowPUK1); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1449 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1450 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1451 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1452 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1453 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1454 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Puk1RequiredL(): Show dialog"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1455 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1456 | if(codeInfo.iRemainingEntryAttempts == KMaxNumberOfPUKAttempts) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1457 | res = iSecurityDlg->ExecuteLD(R_PUK_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1458 | else if(codeInfo.iRemainingEntryAttempts > KLastRemainingInputAttempt) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1459 |        {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1460 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_REMAINING_PUK_ATTEMPTS, codeInfo.iRemainingEntryAttempts); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1461 | res = iSecurityDlg->ExecuteLD(R_PUK_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1462 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1463 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1464 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1465 |        {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1466 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_FINAL_PUK_ATTEMPT); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1467 | res = iSecurityDlg->ExecuteLD(R_PUK_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1468 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1469 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1470 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1471 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1472 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1473 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1474 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1475 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1476 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1477 | RMobilePhone::TMobilePassword verifcationPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1478 | // new pin code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1479 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aNewPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1480 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1481 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1482 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1483 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1484 | res = iSecurityDlg->ExecuteLD(R_NEW_PIN_CODE_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1485 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1486 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1487 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1488 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1489 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1490 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1491 | // verification code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1492 | iSecurityDlg = new (ELeave) CCodeQueryDialog (verifcationPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1493 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1494 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1495 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1496 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1497 | res = iSecurityDlg->ExecuteLD(R_VERIFY_NEW_PIN_CODE_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1498 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1499 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1500 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1501 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1502 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1503 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1504 | while (aNewPassword.CompareF(verifcationPassword) != 0) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1505 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1506 | // codes do not match -> note -> ask new pin and verification codes again | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1507 | CSecuritySettings::ShowResultNoteL(R_CODES_DONT_MATCH, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1508 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1509 |         verifcationPassword = _L("");
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1510 |         aNewPassword = _L("");
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1511 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1512 | // new pin code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1513 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aNewPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1514 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1515 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1516 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1517 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1518 | res = iSecurityDlg->ExecuteLD(R_NEW_PIN_CODE_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1519 | if ((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1520 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1521 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1522 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1523 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1524 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1525 | // verification code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1526 | iSecurityDlg = new (ELeave) CCodeQueryDialog (verifcationPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1527 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1528 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1529 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1530 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1531 | res = iSecurityDlg->ExecuteLD(R_VERIFY_NEW_PIN_CODE_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1532 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1533 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1534 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1535 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1536 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1537 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1538 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1539 | // send code | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1540 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1541 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Puk1RequiredL(): Verify Code"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1542 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1543 | iPhone.VerifySecurityCode(wait->iStatus,blockCodeType,aNewPassword,aPassword); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1544 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1545 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1546 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1547 | TInt returnValue = res; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1548 | switch(res) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1549 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1550 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1551 | // code approved -> note | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1552 | CSecuritySettings::ShowResultNoteL(R_PIN_CODE_CHANGED_NOTE, CAknNoteDialog::EConfirmationTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1553 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1554 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1555 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1556 | // wrong PUK code -> note -> ask PUK code again | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1557 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1558 | returnValue = Puk1RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1559 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1560 | case KErrGsm0707SimWrong: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1561 | // sim lock active | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1562 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1563 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1564 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1565 | // sim card rejected. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1566 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1567 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1568 | CSecuritySettings::ShowErrorNoteL(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1569 | returnValue = Puk1RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1570 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1571 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1572 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1573 | return returnValue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1574 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1575 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1576 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1577 | // CSecurityHandler::Pin2Required() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1578 | // Handles Pin2Required event | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1579 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1580 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1581 | void CSecurityHandler::Pin2RequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1582 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1583 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1584 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1585 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1586 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1587 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1588 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL() BEGIN"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1589 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1590 | RMobilePhone::TMobilePassword password; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1591 | RMobilePhone::TMobilePassword required_fourth; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1592 | RMobilePhone::TMobilePhoneSecurityCode secCodeType(RMobilePhone::ESecurityCodePin2); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1593 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5 codeInfo; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1594 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5Pckg codeInfoPkg(codeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1595 | CWait* wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1596 | CleanupStack::PushL(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1597 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1598 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1599 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL(): create dialog"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1600 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1601 | iSecurityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_PIN2_CODE_MIN_LENGTH,SEC_C_PIN2_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1602 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1603 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1604 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL(): publish dialog"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1605 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1606 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1607 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1608 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1609 |     	{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1610 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1611 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowPIN2); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1612 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1613 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1614 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1615 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1616 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1617 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL(): get PIN2 info"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1618 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1619 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1620 | wait->SetRequestType(EMobilePhoneGetSecurityCodeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1621 | iPhone.GetSecurityCodeInfo(wait->iStatus, secCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1622 | TInt ret = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1623 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1624 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1625 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL(): get PIN2 info result: %d"), ret);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1626 | TInt attempts(codeInfo.iRemainingEntryAttempts); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1627 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL(): attempts remaining: %d"), attempts);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1628 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1629 | User::LeaveIfError(ret); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1630 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1631 | CSecUiLockObserver* deviceLockStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1632 | CleanupStack::PushL(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1633 | CSecUiLockObserver* queryStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg, ESecUiRequestStateObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1634 | CleanupStack::PushL(queryStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1635 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1636 | if(codeInfo.iRemainingEntryAttempts == KMaxNumberOfPINAttempts) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1637 | ret = iSecurityDlg->ExecuteLD(R_PIN2_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1638 | else if(codeInfo.iRemainingEntryAttempts > KLastRemainingInputAttempt) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1639 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1640 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_REMAINING_PIN2_ATTEMPTS, codeInfo.iRemainingEntryAttempts ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1641 | ret = iSecurityDlg->ExecuteLD(R_PIN2_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1642 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1643 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1644 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1645 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1646 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_FINAL_PIN2_ATTEMPT); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1647 | ret = iSecurityDlg->ExecuteLD(R_PIN2_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1648 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1649 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1650 | CleanupStack::PopAndDestroy(2); //deviceLockStatusObserver, queryStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1651 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1652 | if (!ret || (ret == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1653 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1654 | iPhone.AbortSecurityCode(RMobilePhone::ESecurityCodePin2); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1655 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1656 | return; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1657 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1658 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1659 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1660 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL(): Verify Code"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1661 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1662 | iPhone.VerifySecurityCode(wait->iStatus,secCodeType,password,required_fourth); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1663 | TInt status = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1664 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1665 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL(): destroy wait"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1666 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1667 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1668 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1669 | switch(status) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1670 |         {        
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1671 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1672 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1673 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1674 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1675 | // code was entered erroneously | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1676 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1677 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1678 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1679 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1680 | // blocked | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1681 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1682 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1683 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1684 | CSecuritySettings::ShowErrorNoteL(status); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1685 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1686 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1687 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1688 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Pin2RequiredL(): END"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1689 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1690 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1691 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1692 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1693 | // CSecurityHandler::Puk2Required() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1694 | // Handles Puk2Required event | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1695 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1696 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1697 | void CSecurityHandler::Puk2RequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1698 |     {    
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1699 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1700 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1701 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1702 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1703 | RMobilePhone::TMobilePassword aPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1704 | RMobilePhone::TMobilePassword aNewPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1705 | RMobilePhone::TMobilePassword verifcationPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1706 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5 codeInfo; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1707 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5Pckg codeInfoPkg(codeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1708 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1709 | RMobilePhone::TMobilePhoneSecurityCode blockCodeType; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1710 | blockCodeType = RMobilePhone::ESecurityCodePuk2; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1711 | CWait* wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1712 | CleanupStack::PushL(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1713 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1714 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1715 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Puk2RequiredL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1716 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1717 | // ask PUK2 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1718 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aPassword,SEC_C_PUK2_CODE_MIN_LENGTH,SEC_C_PUK2_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1719 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1720 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1721 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1722 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1723 |     	{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1724 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1725 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowPUK2); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1726 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1727 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1728 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1729 | CSecUiLockObserver* deviceLockStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1730 | CleanupStack::PushL(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1731 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1732 | TInt ret(KErrNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1733 | wait->SetRequestType(EMobilePhoneGetSecurityCodeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1734 | iPhone.GetSecurityCodeInfo(wait->iStatus, blockCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1735 | ret = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1736 | User::LeaveIfError(ret); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1737 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1738 | if(codeInfo.iRemainingEntryAttempts == KMaxNumberOfPUKAttempts) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1739 | ret = iSecurityDlg->ExecuteLD(R_PUK2_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1740 | else if(codeInfo.iRemainingEntryAttempts > KLastRemainingInputAttempt) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1741 |        {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1742 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_REMAINING_PUK2_ATTEMPTS, codeInfo.iRemainingEntryAttempts); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1743 | ret = iSecurityDlg->ExecuteLD(R_PUK2_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1744 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1745 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1746 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1747 |        {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1748 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_FINAL_PUK2_ATTEMPT); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1749 | ret = iSecurityDlg->ExecuteLD(R_PUK2_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1750 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1751 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1752 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1753 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1754 | if(!ret || (ret == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1755 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1756 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1757 |     	RDebug::Print(_L("(SECUI)CSecurityHandler::Puk2RequiredL() PUK QUERY CANCEL"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1758 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1759 | // cancel "get security unblock code" request | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1760 | iPhone.AbortSecurityCode(blockCodeType); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1761 | CleanupStack::PopAndDestroy(2); //wait, deviceLockStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1762 | return; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1763 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1764 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1765 |     RDebug::Print(_L("(SECUI)CSecurityHandler::Puk2RequiredL() NEW QUERY"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1766 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1767 | // new pin2 code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1768 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aNewPassword,SEC_C_PIN2_CODE_MIN_LENGTH,SEC_C_PIN2_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1769 | deviceLockStatusObserver->SetAddress(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1770 | ret = iSecurityDlg->ExecuteLD(R_NEW_PIN2_CODE_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1771 | if(!ret || (ret == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1772 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1773 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1774 |     	RDebug::Print(_L("(SECUI)CSecurityHandler::Puk2RequiredL() NEW QUERY CANCEL"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1775 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1776 | // cancel "get security unblock code" request | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1777 | iPhone.AbortSecurityCode(blockCodeType); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1778 | CleanupStack::PopAndDestroy(2); //wait, deviceLockStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1779 | return; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1780 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1781 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1782 | // verification code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1783 | iSecurityDlg = new (ELeave) CCodeQueryDialog (verifcationPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1784 | deviceLockStatusObserver->SetAddress(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1785 | ret = iSecurityDlg->ExecuteLD(R_VERIFY_NEW_PIN2_CODE_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1786 | if (!ret || (ret == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1787 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1788 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1789 |     	RDebug::Print(_L("(SECUI)CSecurityHandler::Puk2RequiredL() VERIFY QUERY CANCEL"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1790 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1791 | // cancel "get security unblock code" request | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1792 | iPhone.AbortSecurityCode(blockCodeType); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1793 | CleanupStack::PopAndDestroy(2); //wait, deviceLockStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1794 | return; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1795 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1796 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1797 | while (aNewPassword.CompareF(verifcationPassword) != 0) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1798 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1799 | // codes do not match -> note -> ask new pin and verification codes again | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1800 | CSecuritySettings::ShowResultNoteL(R_CODES_DONT_MATCH, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1801 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1802 |         verifcationPassword = _L("");
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1803 |         aNewPassword = _L("");
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1804 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1805 | // new pin2 code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1806 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aNewPassword,SEC_C_PIN2_CODE_MIN_LENGTH,SEC_C_PIN2_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1807 | deviceLockStatusObserver->SetAddress(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1808 | deviceLockStatusObserver->StartObserver(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1809 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1810 | ret = iSecurityDlg->ExecuteLD(R_NEW_PIN2_CODE_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1811 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1812 | if(!ret || (ret == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1813 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1814 | // cancel "get security unblock code" request | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1815 | iPhone.AbortSecurityCode(blockCodeType); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1816 | CleanupStack::PopAndDestroy(2); //wait, deviceLockStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1817 | return; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1818 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1819 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1820 | // verification code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1821 | iSecurityDlg = new (ELeave) CCodeQueryDialog (verifcationPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1822 | deviceLockStatusObserver->SetAddress(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1823 | deviceLockStatusObserver->StartObserver(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1824 | ret = iSecurityDlg->ExecuteLD(R_VERIFY_NEW_PIN2_CODE_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1825 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1826 | if (!ret || (ret == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1827 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1828 | // cancel "get security unblock code" request | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1829 | iPhone.AbortSecurityCode(blockCodeType); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1830 | CleanupStack::PopAndDestroy(2); //wait, deviceLockStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1831 | return; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1832 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1833 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1834 | CleanupStack::PopAndDestroy(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1835 | // send code | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1836 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1837 | iPhone.VerifySecurityCode(wait->iStatus,blockCodeType,aNewPassword,aPassword); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1838 | TInt res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1839 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1840 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1841 | switch(res) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1842 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1843 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1844 | // code approved -> note | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1845 | CSecuritySettings::ShowResultNoteL(R_PIN2_CODE_CHANGED_NOTE, CAknNoteDialog::EConfirmationTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1846 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1847 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1848 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1849 | // wrong PUK2 code -> note -> ask PUK2 code again | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1850 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1851 | Puk2RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1852 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1853 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1854 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1855 | // Pin2 features blocked permanently! | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1856 | CSecuritySettings::ShowResultNoteL(R_PIN2_REJECTED, CAknNoteDialog::EConfirmationTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1857 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1858 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1859 | CSecuritySettings::ShowErrorNoteL(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1860 | Puk2RequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1861 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1862 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1863 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1864 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1865 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1866 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1867 | // CSecurityHandler::UPinRequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1868 | // Hendles UniversalPinRequired event | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1869 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1870 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1871 | TInt CSecurityHandler::UPinRequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1872 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1873 | /***************************************************** | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1874 | * Series 60 Customer / ETel | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1875 | * Series 60 ETel API | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1876 | *****************************************************/ | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1877 | TBool wcdmaSupported(FeatureManager::FeatureSupported( KFeatureIdProtocolWcdma )); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1878 | TBool upinSupported(FeatureManager::FeatureSupported( KFeatureIdUpin )); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1879 | if(wcdmaSupported || upinSupported) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1880 |        {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1881 | RMobilePhone::TMobilePassword password; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1882 | RMobilePhone::TMobilePassword required_fourth; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1883 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5 codeInfo; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1884 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5Pckg codeInfoPkg(codeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1885 | RMobilePhone::TMobilePhoneSecurityCode secCodeType = RMobilePhone::ESecurityUniversalPin; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1886 | CWait* wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1887 | CleanupStack::PushL(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1888 | TBool StartUp = ETrue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1889 | TInt secUiOriginatedQuery(ESecurityUIsSecUIOriginatedUninitialized); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1890 | TInt err = KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1891 | TInt res = KErrGeneral; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1892 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1893 | StartUp = iStartup; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1894 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1895 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1896 |         RDebug::Print(_L("(SECUI)CSecurityHandler::UPinRequiredL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1897 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1898 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1899 | if(!StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1900 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1901 | // read a flag to see whether the query is SecUi originated. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1902 | err = RProperty::Get(KPSUidSecurityUIs, KSecurityUIsSecUIOriginatedQuery, secUiOriginatedQuery); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1903 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1904 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1905 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1906 |         RDebug::Print(_L("CSecurityHandler::UPinRequiredL() Execute dlg"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1907 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1908 | if(StartUp || (secUiOriginatedQuery != ESecurityUIsSecUIOriginated) || (err != KErrNone)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1909 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1910 | iSecurityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiCodeEtelReqest); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1911 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1912 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1913 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1914 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1915 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1916 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1917 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1918 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1919 |         		{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1920 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1921 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowUPIN); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1922 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1923 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1924 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1925 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1926 | wait->SetRequestType(EMobilePhoneGetSecurityCodeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1927 | iPhone.GetSecurityCodeInfo(wait->iStatus, secCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1928 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1929 | User::LeaveIfError(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1930 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1931 | if(codeInfo.iRemainingEntryAttempts == KMaxNumberOfPINAttempts) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1932 | res = iSecurityDlg->ExecuteLD(R_UPIN_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1933 | else if(codeInfo.iRemainingEntryAttempts > KLastRemainingInputAttempt) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1934 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1935 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_REMAINING_UPIN_ATTEMPTS, codeInfo.iRemainingEntryAttempts); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1936 | res = iSecurityDlg->ExecuteLD(R_UPIN_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1937 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1938 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1939 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1940 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1941 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_FINAL_UPIN_ATTEMPT); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1942 | res = iSecurityDlg->ExecuteLD(R_UPIN_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1943 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1944 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1945 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1946 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1947 | if ((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1948 |                 { 
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1949 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1950 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1951 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1952 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1953 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1954 |         {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1955 | iSecurityDlg = new (ELeave) CCodeQueryDialog (password,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1956 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1957 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1958 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1959 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1960 |         		{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1961 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1962 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowUPIN); // adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1963 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1964 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1965 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1966 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1967 | wait->SetRequestType(EMobilePhoneGetSecurityCodeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1968 | iPhone.GetSecurityCodeInfo(wait->iStatus, secCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1969 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1970 | User::LeaveIfError(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1971 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1972 | CSecUiLockObserver* deviceLockStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1973 | CleanupStack::PushL(deviceLockStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1974 | CSecUiLockObserver* queryStatusObserver = CSecUiLockObserver::NewL(iSecurityDlg, ESecUiRequestStateObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1975 | CleanupStack::PushL(queryStatusObserver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1976 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1977 | if(codeInfo.iRemainingEntryAttempts == KMaxNumberOfPINAttempts) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1978 | res = iSecurityDlg->ExecuteLD(R_UPIN_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1979 | else if(codeInfo.iRemainingEntryAttempts > KLastRemainingInputAttempt) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1980 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1981 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_REMAINING_UPIN_ATTEMPTS, codeInfo.iRemainingEntryAttempts); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1982 | res = iSecurityDlg->ExecuteLD(R_UPIN_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1983 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1984 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1985 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1986 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1987 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_FINAL_UPIN_ATTEMPT); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1988 | res = iSecurityDlg->ExecuteLD(R_UPIN_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1989 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1990 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1991 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1992 | CleanupStack::PopAndDestroy(2); //deviceLockStatusObserver, queryStatusObserver | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1993 | iSecurityDlg = NULL; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1994 | if( !res || (res == ESecUiDeviceLocked)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1995 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1996 | // cancel code request | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1997 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1998 | iPhone.AbortSecurityCode(RMobilePhone::ESecurityUniversalPin); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1999 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2000 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2001 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2002 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2003 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2004 |         RDebug::Print(_L("CSecurityNotifier::UPinRequiredL()VerifySecurityCode"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2005 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2006 | iPhone.VerifySecurityCode(wait->iStatus,secCodeType, password, required_fourth); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2007 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2008 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2009 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2010 |         RDebug::Print(_L("(SECUI)CSecurityHandler::UPinRequiredL() VerifySecurityCode STATUS: %d"), res);
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2011 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2012 | TInt returnValue = res; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2013 | switch(res) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2014 |             {        
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2015 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2016 | // code approved | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2017 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2018 |                 RDebug::Print(_L("CSecurityHandler::UPinRequiredL()code approved "));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2019 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2020 | CSecuritySettings::ShowResultNoteL(R_CONFIRMATION_NOTE, CAknNoteDialog::EConfirmationTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2021 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2022 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2023 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2024 | // code was entered erroneously | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2025 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2026 | if(StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2027 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2028 | returnValue = UPinRequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2029 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2030 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2031 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2032 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2033 | // code blocked; show error note and terminate. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2034 | if(StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2035 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2036 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2037 | case KErrGsm0707SimWrong: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2038 | // sim lock active | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2039 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2040 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2041 | CSecuritySettings::ShowErrorNoteL(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2042 | if(StartUp) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2043 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2044 | returnValue = UPinRequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2045 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2046 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2047 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2048 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2049 | return returnValue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2050 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2051 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2052 | return KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2053 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2054 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2055 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2056 | // CSecurityHandler::UPukRequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2057 | // Handles UPukRequired event | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2058 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2059 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2060 | TInt CSecurityHandler::UPukRequiredL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2061 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2062 | TBool wcdmaSupported(FeatureManager::FeatureSupported( KFeatureIdProtocolWcdma )); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2063 | TBool upinSupported(FeatureManager::FeatureSupported( KFeatureIdUpin )); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2064 | if(wcdmaSupported || upinSupported) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2065 |        {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2066 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2067 |         RDebug::Print(_L("(SECUI)CSecurityHandler::UPukRequiredL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2068 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2069 | RMobilePhone::TMobilePassword aPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2070 | RMobilePhone::TMobilePassword aNewPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2071 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5 codeInfo; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2072 | RMobilePhone::TMobilePhoneSecurityCodeInfoV5Pckg codeInfoPkg(codeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2073 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2074 | RMobilePhone::TMobilePhoneSecurityCode blockCodeType; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2075 | blockCodeType = RMobilePhone::ESecurityUniversalPuk; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2076 | CWait* wait = CWait::NewL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2077 | CleanupStack::PushL(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2078 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2079 | TBool StartUp(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2080 | StartUp = iStartup; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2081 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2082 | TInt res(KErrNone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2083 | wait->SetRequestType(EMobilePhoneGetSecurityCodeInfo); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2084 | iPhone.GetSecurityCodeInfo(wait->iStatus, blockCodeType, codeInfoPkg); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2085 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2086 | User::LeaveIfError(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2087 | //show last "Code Error" note for UPIN verify result so it won't be left under the PUK1 dialog | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2088 | if(!StartUp && (codeInfo.iRemainingEntryAttempts == KMaxNumberOfPUKAttempts)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2089 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2090 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2091 | // ask UPUK code | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2092 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aPassword,SEC_C_PUK_CODE_MIN_LENGTH,SEC_C_PUK_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2093 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2094 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2095 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2096 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2097 | #ifdef __COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2098 | iSecurityDlg->PublishDialogL(SecondaryDisplay::ECmdShowSecurityQuery, SecondaryDisplay::KCatStartup); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2099 | CAknMediatorFacade* covercl = AknMediatorFacade(iSecurityDlg); // uses MOP, so control provided | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2100 | if (covercl) // returns null if __COVER_DISPLAY is not defined | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2101 |         		{
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2102 | // … - add data that cover ui is interested in | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2103 | covercl->BufStream().WriteInt32L(SecondaryDisplay::EShowUPUK);// adds int to additional data to be posted to cover ui | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2104 | covercl->BufStream().CommitL(); // no more data to send so commit buf | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2105 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2106 | #endif //__COVER_DISPLAY | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2107 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2108 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2109 | if(codeInfo.iRemainingEntryAttempts == KMaxNumberOfPUKAttempts) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2110 | res = iSecurityDlg->ExecuteLD(R_UPUK_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2111 | else if(codeInfo.iRemainingEntryAttempts > KLastRemainingInputAttempt) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2112 |            {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2113 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_REMAINING_UPUK_ATTEMPTS, codeInfo.iRemainingEntryAttempts); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2114 | res = iSecurityDlg->ExecuteLD(R_UPUK_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2115 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2116 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2117 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2118 |            {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2119 | HBufC* queryPrompt = StringLoader::LoadLC(R_SECUI_FINAL_UPUK_ATTEMPT); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2120 | res = iSecurityDlg->ExecuteLD(R_UPUK_REQUEST_QUERY, *queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2121 | CleanupStack::PopAndDestroy(queryPrompt); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2122 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2123 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2124 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2125 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2126 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2127 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2128 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2129 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2130 | RMobilePhone::TMobilePassword verifcationPassword; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2131 | // new upin code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2132 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aNewPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2133 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2134 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2135 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2136 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2137 | res = iSecurityDlg->ExecuteLD(R_NEW_UPIN_CODE_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2138 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2139 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2140 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2141 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2142 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2143 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2144 | // verification code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2145 | iSecurityDlg = new (ELeave) CCodeQueryDialog (verifcationPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2146 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2147 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2148 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2149 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2150 | res = iSecurityDlg->ExecuteLD(R_VERIFY_NEW_UPIN_CODE_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2151 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2152 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2153 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2154 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2155 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2156 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2157 | while (aNewPassword.CompareF(verifcationPassword) != 0) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2158 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2159 | // codes do not match -> note -> ask new upin and verification codes again | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2160 | CSecuritySettings::ShowResultNoteL(R_CODES_DONT_MATCH, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2161 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2162 |             verifcationPassword = _L("");
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2163 |             aNewPassword = _L("");
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2164 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2165 | // new upin code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2166 | iSecurityDlg = new (ELeave) CCodeQueryDialog (aNewPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2167 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2168 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2169 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2170 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2171 | res = iSecurityDlg->ExecuteLD(R_NEW_UPIN_CODE_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2172 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2173 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2174 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2175 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2176 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2177 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2178 | // verification code query | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2179 | iSecurityDlg = new (ELeave) CCodeQueryDialog (verifcationPassword,SEC_C_PIN_CODE_MIN_LENGTH,SEC_C_PIN_CODE_MAX_LENGTH,ESecUiPukRequired); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2180 | if(AknLayoutUtils::PenEnabled()) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2181 | iSecurityDlg->SetEmergencyCallSupportForCBA( ETrue ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2182 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2183 | iSecurityDlg->SetEmergencyCallSupport(ETrue); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2184 | res = iSecurityDlg->ExecuteLD(R_VERIFY_NEW_UPIN_CODE_REQUEST_QUERY); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2185 | if((!res) || (res == ESecUiEmergencyCall) || (res == EAknSoftkeyEmergencyCall)) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2186 |                 {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2187 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2188 | return KErrCancel; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2189 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2190 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2191 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2192 | // send code | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2193 | iPhone.VerifySecurityCode(wait->iStatus,blockCodeType,aNewPassword,aPassword); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2194 | res = wait->WaitForRequestL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2195 | CleanupStack::PopAndDestroy(wait); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2196 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2197 | TInt returnValue = res; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2198 | switch(res) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2199 |             {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2200 | case KErrNone: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2201 | // code approved -> note | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2202 | CSecuritySettings::ShowResultNoteL(R_UPIN_CODE_CHANGED_NOTE, CAknNoteDialog::EConfirmationTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2203 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2204 | case KErrGsm0707IncorrectPassword: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2205 | case KErrAccessDenied: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2206 | // wrong PUK code -> note -> ask UPUK code again | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2207 | CSecuritySettings::ShowResultNoteL(R_CODE_ERROR, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2208 | returnValue = UPukRequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2209 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2210 | case KErrGsm0707SimWrong: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2211 | // sim lock active | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2212 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2213 | case KErrGsmSSPasswordAttemptsViolation: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2214 | case KErrLocked: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2215 | // sim card rejected. | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2216 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2217 | default: | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2218 | CSecuritySettings::ShowErrorNoteL(res); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2219 | returnValue = UPukRequiredL(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2220 | break; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2221 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2222 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2223 | return returnValue; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2224 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2225 | else | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2226 | return KErrNone; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2227 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2228 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2229 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2230 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2231 | // CSecurityHandler::SimLockEventL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2232 | // Shows "SIM restriction on" note | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2233 | // ---------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2234 | // | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2235 | void CSecurityHandler::SimLockEventL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2236 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2237 | #if defined(_DEBUG) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2238 |     RDebug::Print(_L("CSecurityHandler::SimLockEventL()"));
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2239 | #endif | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2240 | CSecuritySettings::ShowResultNoteL(R_SIM_ON, CAknNoteDialog::EConfirmationTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2241 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2242 | // --------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2243 | // CSecurityHandler::RemoveSplashScreenL() | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2244 | // Removes splash screen | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2245 | // --------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2246 | void CSecurityHandler::RemoveSplashScreenL() const | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2247 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2248 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2249 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2250 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2251 | // --------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2252 | // CSecurityHandler::ShowGenericErrorNoteL(TInt aStatus) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2253 | // Shows a generic error note | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2254 | // --------------------------------------------------------- | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2255 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2256 | void CSecurityHandler::ShowGenericErrorNoteL(TInt aStatus) | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2257 |     {
 | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2258 | // Let's create TextResolver instance for error resolving... | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2259 | CTextResolver* textresolver = CTextResolver::NewLC(); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2260 | // Resolve the error | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2261 | TPtrC errorstring; | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2262 | errorstring.Set( textresolver->ResolveErrorString( aStatus ) ); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2263 | iNoteDlg = new (ELeave) CAknNoteDialog(REINTERPRET_CAST(CEikDialog**,&iNoteDlg)); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2264 | iNoteDlg->PrepareLC(R_CODE_ERROR); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2265 | iNoteDlg->SetTextL((TDesC&)errorstring); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2266 | iNoteDlg->RunDlgLD(CAknNoteDialog::ELongTimeout, CAknNoteDialog::EErrorTone); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2267 | CleanupStack::PopAndDestroy(textresolver); | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2268 | } | 
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2269 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2270 | |
| 
164170e6151a
Revision: 201004
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2271 | // End of file |