sysstatemgmt/systemstatereferenceplugins/clayer/src/ssmsecurityeventobserver.cpp
changeset 16 ef634fd8dac3
parent 12 e978f818f9bd
equal deleted inserted replaced
13:cef4ff1e6c4f 16:ef634fd8dac3
    13 // Description:
    13 // Description:
    14 // Implementation of CStrtSecurityEventObserver class
    14 // Implementation of CStrtSecurityEventObserver class
    15 //
    15 //
    16 
    16 
    17 
    17 
    18 
    18 #include <ssm/startupdomainpskeys.h>
    19 #include "strtsecphaseobserver.h"
    19 #include "strtsecphaseobserver.h"
    20 #include "ssmsecurityeventobserver.h"
    20 #include "ssmsecurityeventobserver.h"
    21 #include "ssmsecuritynotecontroller.h"
    21 #include "ssmsecuritynotecontroller.h"
    22 #include "ssmuiproviderdll.h"
    22 #include "ssmuiproviderdll.h"
    23 #include "ssmdebug.h"
    23 #include "ssmdebug.h"
   124 void CStrtSecurityEventObserver::ProcessSecurityEvent()
   124 void CStrtSecurityEventObserver::ProcessSecurityEvent()
   125     {
   125     {
   126     switch (iEvent)
   126     switch (iEvent)
   127         {
   127         {
   128         case RMobilePhone::EPin1Required:
   128         case RMobilePhone::EPin1Required:
   129             SimCodeRequest(ESecCodePIN1);
   129             {
   130             break;
   130             TInt pSIgnorePin1RequiredEvent( EPSIgnoreSecurityEventUninitialized );
       
   131 
       
   132             //Get the KIgnoreSecurityEvent PS value
       
   133             TInt err = RProperty::Get( KPSUidStartup, KIgnoreSecurityEvent, pSIgnorePin1RequiredEvent );
       
   134 			DEBUGPRINT2A("Getting KIgnoreSecurityEvent completed with %d ", err);
       
   135             //Ignore the event only when KIgnoreSecurityEvent value is EPSIgnoreSecurityEventEPin1Required 
       
   136             if( KErrNone == err && EPSIgnoreSecurityEventEPin1Required == pSIgnorePin1RequiredEvent )
       
   137                 {
       
   138                 err = RProperty::Set( KPSUidStartup, KIgnoreSecurityEvent, EPSIgnoreSecurityEventUninitialized );
       
   139                 DEBUGPRINT2A("Setting KIgnoreSecurityEvent completed with %d ", err);
       
   140 				}
       
   141             else
       
   142                 {
       
   143                 SimCodeRequest(ESecCodePIN1);
       
   144                 }
       
   145             break;
       
   146             }
   131         case RMobilePhone::EPuk1Required:
   147         case RMobilePhone::EPuk1Required:
   132             SimCodeRequest(ESecCodePUK1);
   148             SimCodeRequest(ESecCodePUK1);
   133             break;
   149             break;
   134         case RMobilePhone::EPin2Required:
   150         case RMobilePhone::EPin2Required:
   135             SimCodeRequest(ESecCodePIN2);
   151             SimCodeRequest(ESecCodePIN2);
   136             break;
   152             break;
   137         case RMobilePhone::EPuk2Required:
   153         case RMobilePhone::EPuk2Required:
   138             SimCodeRequest(ESecCodePUK2);
   154             SimCodeRequest(ESecCodePUK2);
   139             break;
   155             break;
   140         case RMobilePhone::EPhonePasswordRequired:
   156         case RMobilePhone::EPhonePasswordRequired:
   141             SecCodeRequest(ESecCodePasswd);
   157             {
   142             break;
   158             TInt pSIgnorePhonePasswordRequiredEvent( EPSIgnoreSecurityEventUninitialized );
       
   159 
       
   160             //Get the KCancelSecurityNotifier PS value
       
   161             TInt err = RProperty::Get( KPSUidStartup, KIgnoreSecurityEvent, pSIgnorePhonePasswordRequiredEvent );
       
   162 			DEBUGPRINT2A("Getting KIgnoreSecurityEvent completed with %d ", err);
       
   163             //Ignore the event only when KIgnoreSecurityEvent value is EPSIgnoreSecurityEventEPhonePasswordRequired 
       
   164             if( KErrNone == err && EPSIgnoreSecurityEventEPhonePasswordRequired == pSIgnorePhonePasswordRequiredEvent )
       
   165                 {
       
   166                 err = RProperty::Set( KPSUidStartup, KIgnoreSecurityEvent, EPSIgnoreSecurityEventUninitialized );
       
   167 				DEBUGPRINT2A("Setting KIgnoreSecurityEvent completed with %d ", err);
       
   168 				}
       
   169             else
       
   170                 {
       
   171                 SecCodeRequest(ESecCodePasswd);
       
   172                 }
       
   173             break;
       
   174             }
   143         case RMobilePhone::EPin1Verified:
   175         case RMobilePhone::EPin1Verified:
   144             CodeVerifyIndication(ESecCodePIN1);
   176             CodeVerifyIndication(ESecCodePIN1);
   145             break;
   177             break;
   146         case RMobilePhone::EPin2Verified:
   178         case RMobilePhone::EPin2Verified:
   147             CodeVerifyIndication(ESecCodePIN2);
   179             CodeVerifyIndication(ESecCodePIN2);