pkiutilities/CTSecurityDialogs/NotifSrc/CTSecurityDialogsAO.cpp
branchRCL_3
changeset 8 ece4bbb094df
parent 7 6e226572c5f0
child 11 9971b621ef6c
equal deleted inserted replaced
7:6e226572c5f0 8:ece4bbb094df
    78 _LIT( KKeyStoreEnterPwLabel, "Key store passphrase" );
    78 _LIT( KKeyStoreEnterPwLabel, "Key store passphrase" );
    79 _LIT( KKeyStoreCreatePwLabel, "New key store passphrase" );
    79 _LIT( KKeyStoreCreatePwLabel, "New key store passphrase" );
    80 _LIT( KKeyStoreImportKeyLabel, "Passphrase of the imported key file" );
    80 _LIT( KKeyStoreImportKeyLabel, "Passphrase of the imported key file" );
    81 _LIT( KKeyStoreExportKeyLabel, "Passphrase of the exported key file" );
    81 _LIT( KKeyStoreExportKeyLabel, "Passphrase of the exported key file" );
    82 _LIT( KPKCS12TokenLabel, "PKCS12");
    82 _LIT( KPKCS12TokenLabel, "PKCS12");
       
    83 
       
    84 
       
    85 // ============================ LOCAL FUNCTIONS ===============================
       
    86 
       
    87 TInt AlgorithmNameResourceId( TAlgorithmId aAlgorithmId )
       
    88     {
       
    89     TInt resourceId = 0;
       
    90     switch( aAlgorithmId )
       
    91         {
       
    92         case ERSA:
       
    93             resourceId = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_RSA;
       
    94             break;
       
    95         case EDSA:
       
    96             resourceId = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_DSA;
       
    97             break;
       
    98         case EDH:
       
    99             resourceId = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_DH;
       
   100             break;
       
   101         case EMD2:
       
   102             resourceId = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_MD2;
       
   103             break;
       
   104         case EMD5:
       
   105             resourceId = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_MD5;
       
   106             break;
       
   107         case ESHA1:
       
   108             resourceId = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_SHA1;
       
   109             break;
       
   110         case ESHA224:
       
   111         case ESHA256:
       
   112         case ESHA384:
       
   113         case ESHA512:
       
   114             resourceId = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_SHA2;
       
   115             break;
       
   116         default:
       
   117             resourceId = R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN;
       
   118             break;
       
   119         }
       
   120     return resourceId;
       
   121     }
       
   122 
    83 
   123 
    84 // ============================ MEMBER FUNCTIONS ===============================
   124 // ============================ MEMBER FUNCTIONS ===============================
    85 
   125 
    86 // -----------------------------------------------------------------------------
   126 // -----------------------------------------------------------------------------
    87 // CCTSecurityDialogsAO::CCTSecurityDialogsAO
   127 // CCTSecurityDialogsAO::CCTSecurityDialogsAO
  2048 //
  2088 //
  2049 void CCTSecurityDialogsAO::AddCertAlgorithmsL( TDes& aMessage, const CX509Certificate& aCert )
  2089 void CCTSecurityDialogsAO::AddCertAlgorithmsL( TDes& aMessage, const CX509Certificate& aCert )
  2050     {
  2090     {
  2051     TInt fieldType = 0;
  2091     TInt fieldType = 0;
  2052     TInt fieldType2 = 0;
  2092     TInt fieldType2 = 0;
       
  2093 
  2053     // digest algorithm
  2094     // digest algorithm
  2054     TAlgorithmId algorithmId =
  2095     TAlgorithmId algorithmId = aCert.SigningAlgorithm().DigestAlgorithm().Algorithm();
  2055         aCert.SigningAlgorithm().DigestAlgorithm().Algorithm();
  2096     fieldType = AlgorithmNameResourceId( algorithmId );
  2056     switch ( algorithmId )
       
  2057         {
       
  2058         case EMD2:
       
  2059             {
       
  2060             fieldType = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_MD2;
       
  2061             break;
       
  2062             }
       
  2063         case EMD5:
       
  2064             {
       
  2065             fieldType = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_MD5;
       
  2066             break;
       
  2067             }
       
  2068         case ESHA1:
       
  2069             {
       
  2070             fieldType = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_SHA1;
       
  2071             break;
       
  2072             }
       
  2073         default:
       
  2074             {
       
  2075             fieldType = R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN;
       
  2076             break;
       
  2077             }
       
  2078         }
       
  2079 
  2097 
  2080     // public-key algorithm
  2098     // public-key algorithm
  2081     algorithmId =
  2099     algorithmId = aCert.SigningAlgorithm().AsymmetricAlgorithm().Algorithm();
  2082         aCert.SigningAlgorithm().AsymmetricAlgorithm().Algorithm();
  2100     fieldType2 = AlgorithmNameResourceId( algorithmId );
  2083     switch ( algorithmId )
       
  2084         {
       
  2085         case ERSA:
       
  2086             {
       
  2087             fieldType2 = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_RSA;
       
  2088             break;
       
  2089             }
       
  2090         case EDSA:
       
  2091             {
       
  2092             fieldType2 = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_DSA;
       
  2093             break;
       
  2094             }
       
  2095         case EDH:
       
  2096             {
       
  2097             fieldType2 = R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM_DH;
       
  2098             break;
       
  2099             }
       
  2100         default:
       
  2101             {
       
  2102             fieldType2 = R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN;
       
  2103             }
       
  2104         }
       
  2105 
  2101 
  2106     // If other algorithm is unknown
  2102     // If other algorithm is unknown
  2107     if ( fieldType == R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN ||
  2103     if( fieldType == R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN ||
  2108         fieldType2 == R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN )
  2104         fieldType2 == R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN )
  2109         {
  2105         {
  2110         DetailsFieldResourceL( aMessage,
  2106         DetailsFieldResourceL( aMessage,
  2111         R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM, R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN );
  2107         R_TEXT_RESOURCE_DETAILS_VIEW_ALGORITHM, R_TEXT_RESOURCE_DETAILS_VIEW_UNKNOWN );
  2112         }
  2108         }