dbcreator/commsdatcreator/Src/cdcreaderxml.cpp
branchGCC_SURGE
changeset 49 faa5ef4f80da
parent 37 46a9400b839e
parent 46 95d45f234cf3
equal deleted inserted replaced
39:f10336de0cd6 49:faa5ef4f80da
   167 //---------------
   167 //---------------
   168 //WPA security
   168 //WPA security
   169 //---------------
   169 //---------------
   170 //WPAPresharedKey         string    WPA/WPA2 pre-shared key in plain text. 
   170 //WPAPresharedKey         string    WPA/WPA2 pre-shared key in plain text. 
   171 //WPAKeyLength            integer   The length of the WPA/WPA2 pre-shared key.
   171 //WPAKeyLength            integer   The length of the WPA/WPA2 pre-shared key.
   172 //WPAListOfEAPs           string    A list of EAPs in use
   172 //WPAEapMethod            string    A EAP method in use
   173 //WPAUseOfPresharedKey    string    WPA/WPA2 pre-shared key usage.
   173 //WPAUseOfPresharedKey    string    WPA/WPA2 pre-shared key usage.
   174 //=============
   174 //=============
   175 //VPN specific:
   175 //VPN specific:
   176 //=============
   176 //=============
   177 //KVpnIapName             string    IAP name used for the connection
   177 //KVpnIapName             string    IAP name used for the connection
   321 _LIT16( KWEPKey4Data,               "WEPKey4Data" );
   321 _LIT16( KWEPKey4Data,               "WEPKey4Data" );
   322 
   322 
   323 //WPA security
   323 //WPA security
   324 _LIT16( KWPAPresharedKey,           "WPAPresharedKey" );
   324 _LIT16( KWPAPresharedKey,           "WPAPresharedKey" );
   325 _LIT16( KWPAKeyLength,              "WPAKeyLength" );
   325 _LIT16( KWPAKeyLength,              "WPAKeyLength" );
   326 _LIT16( KWPAListOfEAPs,             "WPAListOfEAPs" );
   326 _LIT16( KWPAEapMethod,              "WPAEapMethod");
   327 _LIT16( KWPAUseOfPresharedKey,      "WPAUseOfPresharedKey" );
   327 _LIT16( KWPAUseOfPresharedKey,      "WPAUseOfPresharedKey" );
   328 
   328 
   329 //EAP security
   329 //EAP security
   330 _LIT16( KEapGtcUsername,            "EapGtcUsername" );
   330 _LIT16( KEapGtcUsername,            "EapGtcUsername" );
   331 _LIT16( KEapGtcSessionValidityTime, "EapGtcSessionValidityTime" );
   331 _LIT16( KEapGtcSessionValidityTime, "EapGtcSessionValidityTime" );
   471 _LIT16( KUIPriorityCdma2k,          "UIPriorityCdma2k" );
   471 _LIT16( KUIPriorityCdma2k,          "UIPriorityCdma2k" );
   472 _LIT16( KUIPriorityDialOut,         "UIPriorityDialOut" );
   472 _LIT16( KUIPriorityDialOut,         "UIPriorityDialOut" );
   473 _LIT16( KUIPriorityDialIn,          "UIPriorityDialIn" );
   473 _LIT16( KUIPriorityDialIn,          "UIPriorityDialIn" );
   474 _LIT16( KUIPriorityVpn,             "UIPriorityVpn" );
   474 _LIT16( KUIPriorityVpn,             "UIPriorityVpn" );
   475 _LIT16( KUIPriorityMip,             "UIPriorityMip" );
   475 _LIT16( KUIPriorityMip,             "UIPriorityMip" );
   476 _LIT16( KDefaultConnectionType,     "DefaultConnectionType" );
       
   477 _LIT16( KDefaultConnectionName,     "DefaultConnectionName" );
       
   478 _LIT16( KUsageOfWlan,               "UsageOfWlan" );
   476 _LIT16( KUsageOfWlan,               "UsageOfWlan" );
   479 _LIT16( KCellularDataUsageHome,     "CellularDataUsageHome" );
   477 _LIT16( KCellularDataUsageHome,     "CellularDataUsageHome" );
   480 _LIT16( KCellularDataUsageVisitor,  "CellularDataUsageVisitor" );
   478 _LIT16( KCellularDataUsageVisitor,  "CellularDataUsageVisitor" );
   481 _LIT16( KGprsLastSocketActivityTimeout, "GprsLastSocketActivityTimeout" );
   479 _LIT16( KGprsLastSocketActivityTimeout, "GprsLastSocketActivityTimeout" );
   482 _LIT16( KGprsLastSessionClosedTimeout,  "GprsLastSessionClosedTimeout" );
   480 _LIT16( KGprsLastSessionClosedTimeout,  "GprsLastSessionClosedTimeout" );
   490 _LIT16( KWlanShortRetry,            "WlanShortRetry" );
   488 _LIT16( KWlanShortRetry,            "WlanShortRetry" );
   491 _LIT16( KWlanRTS,                   "WlanRTS" );
   489 _LIT16( KWlanRTS,                   "WlanRTS" );
   492 _LIT16( KWlanTxPowerLevel,          "WlanTxPowerLevel" );
   490 _LIT16( KWlanTxPowerLevel,          "WlanTxPowerLevel" );
   493 _LIT16( KWlanRadioMeasurements,     "WlanRadioMeasurements" );
   491 _LIT16( KWlanRadioMeasurements,     "WlanRadioMeasurements" );
   494 _LIT16( KWlanPowerMode,             "WlanPowerMode" );
   492 _LIT16( KWlanPowerMode,             "WlanPowerMode" );
   495 
       
   496 
       
   497 //maximum number of PacketData AP parameters
       
   498 const TInt KMaxPacketDataParam = 28;
       
   499 const TInt KMaxLANParam = 26;
       
   500 const TInt KMaxWLANParam = 125;
       
   501 const TInt KMaxGlobalParam = 42;
       
   502 const TInt KMaxVPNParam = 12;
       
   503 const TInt KMaxDNParam = 19;
       
   504 
   493 
   505 
   494 
   506 // ================= MEMBER FUNCTIONS =======================
   495 // ================= MEMBER FUNCTIONS =======================
   507 
   496 
   508 // ---------------------------------------------------------
   497 // ---------------------------------------------------------
   910     {
   899     {
   911     TDbCreatorFeatures feature( EFeatureNone );
   900     TDbCreatorFeatures feature( EFeatureNone );
   912     
   901     
   913     if ( iLine->FindF( KFeatureHeadPacketData ) != KErrNotFound )
   902     if ( iLine->FindF( KFeatureHeadPacketData ) != KErrNotFound )
   914         {
   903         {
       
   904         CLOG_WRITE( "CReaderXML::DetectFeatureHead(): EFeaturePacketData" );
   915         feature = EFeaturePacketData;
   905         feature = EFeaturePacketData;
   916         }
   906         }
   917     else if ( iLine->FindF( KFeatureHeadWLAN ) != KErrNotFound )
   907     else if ( iLine->FindF( KFeatureHeadWLAN ) != KErrNotFound )
   918         {
   908         {
       
   909         CLOG_WRITE( "CReaderXML::DetectFeatureHead(): EFeatureWLAN" );
   919         feature = EFeatureWLAN;
   910         feature = EFeatureWLAN;
   920         }
   911         }
   921     else if ( iLine->FindF( KFeatureHeadLAN ) != KErrNotFound )
   912     else if ( iLine->FindF( KFeatureHeadLAN ) != KErrNotFound )
   922         {
   913         {
       
   914         CLOG_WRITE( "CReaderXML::DetectFeatureHead(): EFeatureLAN" );
   923         feature = EFeatureLAN;
   915         feature = EFeatureLAN;
   924         }
   916         }
   925     else if ( iLine->FindF( KFeatureHeadVPN ) != KErrNotFound )
   917     else if ( iLine->FindF( KFeatureHeadVPN ) != KErrNotFound )
   926         {
   918         {
       
   919         CLOG_WRITE( "CReaderXML::DetectFeatureHead(): EFeatureVPN" );
   927         feature = EFeatureVPN;
   920         feature = EFeatureVPN;
   928         }
   921         }
   929     else if ( iLine->FindF( KFeatureHeadDN ) != KErrNotFound )
   922     else if ( iLine->FindF( KFeatureHeadDN ) != KErrNotFound )
   930         {
   923         {
       
   924         CLOG_WRITE( "CReaderXML::DetectFeatureHead(): EFeatureDN" );
   931         feature = EFeatureDN;
   925         feature = EFeatureDN;
   932         }
   926         }
   933     else if ( iLine->FindF( KFeatureHeadGlobal ) != KErrNotFound )
   927     else if ( iLine->FindF( KFeatureHeadGlobal ) != KErrNotFound )
   934         {
   928         {
       
   929         CLOG_WRITE( "CReaderXML::DetectFeatureHead(): EFeatureGlobal" );
   935         feature = EFeatureGlobal;
   930         feature = EFeatureGlobal;
   936         iFoundGlobal = ETrue;        
   931         iFoundGlobal = ETrue;        
   937         }
   932         }
   938     else
   933     else
   939         {
   934         {
  1018 // CReaderXML::DetectParamL
  1013 // CReaderXML::DetectParamL
  1019 // ---------------------------------------------------------
  1014 // ---------------------------------------------------------
  1020 //
  1015 //
  1021 TInt CReaderXML::DetectParam()
  1016 TInt CReaderXML::DetectParam()
  1022     {
  1017     {
  1023     TInt maxParam( 0 );           //maximum nunber of params in array
       
  1024     TInt fieldId( KErrNotFound ); //field id of detected parameter 
  1018     TInt fieldId( KErrNotFound ); //field id of detected parameter 
  1025     RArray<EInputParams> *params( NULL ); //pointer to the table used 
  1019     RArray<EInputParams> *params( NULL ); //pointer to the table used 
  1026                                         //for or detection    
  1020                                         //for or detection    
  1027 
  1021 
  1028     switch ( CurrentFeature() )        
  1022     switch ( CurrentFeature() )        
  1029         {
  1023         {
  1030         case EFeaturePacketData:
  1024         case EFeaturePacketData:
  1031             maxParam = KMaxPacketDataParam;
       
  1032             params   = &iPDParams;
  1025             params   = &iPDParams;
  1033             break;
  1026             break;
  1034         case EFeatureWLAN:
  1027         case EFeatureWLAN:
  1035             maxParam = KMaxWLANParam;
       
  1036             params   = &iWLanParams;
  1028             params   = &iWLanParams;
  1037             break;
  1029             break;
  1038         case EFeatureLAN:
  1030         case EFeatureLAN:
  1039             maxParam = KMaxLANParam;
       
  1040             params   = &iLanParams;
  1031             params   = &iLanParams;
  1041             break;
  1032             break;
  1042         case EFeatureVPN:
  1033         case EFeatureVPN:
  1043             maxParam = KMaxVPNParam;
       
  1044             params   = &iVpnParams;
  1034             params   = &iVpnParams;
  1045             break;
  1035             break;
  1046         case EFeatureDN:
  1036         case EFeatureDN:
  1047             maxParam = KMaxDNParam;
       
  1048             params =   &iDNParams;
  1037             params =   &iDNParams;
  1049             break;
  1038             break;
  1050         case EFeatureGlobal:
  1039         case EFeatureGlobal:
  1051             maxParam = KMaxGlobalParam;
       
  1052             params   = &iGlobalParams;
  1040             params   = &iGlobalParams;
  1053             break;
  1041             break;
  1054         default:
  1042         default:
  1055             User::Panic( KPanicInvalidCase, KErrInvalidCase );
  1043             User::Panic( KPanicInvalidCase, KErrInvalidCase );
  1056         }
  1044         }
  1057        
  1045        
  1058     //looks for parameter match
  1046     //looks for parameter match
  1059     HBufC16* paramName = ReadParam( EParamName );
  1047     HBufC16* paramName = ReadParam( EParamName );
  1060     TBool found ( EFalse );
       
  1061     
       
  1062     if ( paramName == NULL )
  1048     if ( paramName == NULL )
  1063             {
  1049             {
  1064             return fieldId;
  1050             return fieldId;
  1065             }
  1051             }
  1066 
  1052 
  1067     for ( TInt idx = 0; idx < maxParam && !found; idx++ )
  1053     TBool found ( EFalse );
       
  1054     for ( TInt idx = 0; idx < params->Count() && !found; idx++ )
  1068         {        
  1055         {        
  1069         if ( paramName->CompareF( (*params)[idx].iParam ) == 0 )
  1056         if ( paramName->CompareF( (*params)[idx].iParam ) == 0 )
  1070             {
  1057             {
  1071             fieldId = (*params)[idx].iId;
  1058             fieldId = (*params)[idx].iId;
  1072             found = ETrue;            
  1059             found = ETrue;            
  1125         if( ret == NULL )
  1112         if( ret == NULL )
  1126             {
  1113             {
  1127             CLOG_WRITE_FORMAT( "! Warning: tag could not be allocated %S:",
  1114             CLOG_WRITE_FORMAT( "! Warning: tag could not be allocated %S:",
  1128                                      &tag );
  1115                                      &tag );
  1129             }
  1116             }
       
  1117 // Debugging help; commented out for clearer log.
       
  1118 //        else 
       
  1119 //            {
       
  1120 //            if (aSegment == EParamValue)
       
  1121 //                {
       
  1122 //                CLOG_WRITE_FORMAT( "CReaderXML::ReadParam: value %S", &tag );
       
  1123 //                }
       
  1124 //            else if (aSegment == EParamName)
       
  1125 //                {
       
  1126 //                CLOG_WRITE_FORMAT( "CReaderXML::ReadParam: name %S", &tag );
       
  1127 //                }
       
  1128 //            }
  1130         }
  1129         }
  1131     return ret;
  1130     return ret;
  1132     }
  1131     }
  1133 
  1132 
  1134 
  1133 
  1640     iWLanParams.Append( EInputParams( EWEPKey4Length,               KWEPKey4Length ) );
  1639     iWLanParams.Append( EInputParams( EWEPKey4Length,               KWEPKey4Length ) );
  1641     iWLanParams.Append( EInputParams( EWEPKey4Format,               KWEPKey4Format ) );
  1640     iWLanParams.Append( EInputParams( EWEPKey4Format,               KWEPKey4Format ) );
  1642     iWLanParams.Append( EInputParams( EWEPKey4Data,                 KWEPKey4Data ) );
  1641     iWLanParams.Append( EInputParams( EWEPKey4Data,                 KWEPKey4Data ) );
  1643     iWLanParams.Append( EInputParams( EWPAPresharedKey,             KWPAPresharedKey ) );
  1642     iWLanParams.Append( EInputParams( EWPAPresharedKey,             KWPAPresharedKey ) );
  1644     iWLanParams.Append( EInputParams( EWPAKeyLength,                KWPAKeyLength ) );
  1643     iWLanParams.Append( EInputParams( EWPAKeyLength,                KWPAKeyLength ) );
  1645     iWLanParams.Append( EInputParams( EWPAListOfEAPs,               KWPAListOfEAPs ) );
  1644     iWLanParams.Append( EInputParams( EWPAEapMethod,                KWPAEapMethod ) );
  1646     iWLanParams.Append( EInputParams( EWPAUseOfPresharedKey,        KWPAUseOfPresharedKey ) );
  1645     iWLanParams.Append( EInputParams( EWPAUseOfPresharedKey,        KWPAUseOfPresharedKey ) );
  1647     iWLanParams.Append( EInputParams( EEapGtcUsername,              KEapGtcUsername ) );
  1646     iWLanParams.Append( EInputParams( EEapGtcUsername,              KEapGtcUsername ) );
  1648     iWLanParams.Append( EInputParams( EEapGtcSessionValidityTime,   KEapGtcSessionValidityTime ) );
  1647     iWLanParams.Append( EInputParams( EEapGtcSessionValidityTime,   KEapGtcSessionValidityTime ) );
  1649     iWLanParams.Append( EInputParams( EEapGtcEncapsulation,         KEapGtcEncapsulation ) );
  1648     iWLanParams.Append( EInputParams( EEapGtcEncapsulation,         KEapGtcEncapsulation ) );
  1650     iWLanParams.Append( EInputParams( EEapTlsUsername,              KEapTlsUsername ) );
  1649     iWLanParams.Append( EInputParams( EEapTlsUsername,              KEapTlsUsername ) );
  1775     iGlobalParams.Append( EInputParams( EUIPriorityCdma2k,      KUIPriorityCdma2k ) );
  1774     iGlobalParams.Append( EInputParams( EUIPriorityCdma2k,      KUIPriorityCdma2k ) );
  1776     iGlobalParams.Append( EInputParams( EUIPriorityDialOut,     KUIPriorityDialOut ) );
  1775     iGlobalParams.Append( EInputParams( EUIPriorityDialOut,     KUIPriorityDialOut ) );
  1777     iGlobalParams.Append( EInputParams( EUIPriorityDialIn,      KUIPriorityDialIn ) );
  1776     iGlobalParams.Append( EInputParams( EUIPriorityDialIn,      KUIPriorityDialIn ) );
  1778     iGlobalParams.Append( EInputParams( EUIPriorityVpn,         KUIPriorityVpn ) );
  1777     iGlobalParams.Append( EInputParams( EUIPriorityVpn,         KUIPriorityVpn ) );
  1779     iGlobalParams.Append( EInputParams( EUIPriorityMip,         KUIPriorityMip ) );
  1778     iGlobalParams.Append( EInputParams( EUIPriorityMip,         KUIPriorityMip ) );
  1780     iGlobalParams.Append( EInputParams( EDefaultConnectionType, KDefaultConnectionType ) );
       
  1781     iGlobalParams.Append( EInputParams( EDefaultConnectionName, KDefaultConnectionName ) );
       
  1782     iGlobalParams.Append( EInputParams( EUsageOfWlan,           KUsageOfWlan ) );
  1779     iGlobalParams.Append( EInputParams( EUsageOfWlan,           KUsageOfWlan ) );
  1783     iGlobalParams.Append( EInputParams( ECellularDataUsageHome,         KCellularDataUsageHome ) );
  1780     iGlobalParams.Append( EInputParams( ECellularDataUsageHome,         KCellularDataUsageHome ) );
  1784     iGlobalParams.Append( EInputParams( ECellularDataUsageVisitor,      KCellularDataUsageVisitor ) );
  1781     iGlobalParams.Append( EInputParams( ECellularDataUsageVisitor,      KCellularDataUsageVisitor ) );
  1785     iGlobalParams.Append( EInputParams( EGprsLastSocketActivityTimeout, KGprsLastSocketActivityTimeout ) );
  1782     iGlobalParams.Append( EInputParams( EGprsLastSocketActivityTimeout, KGprsLastSocketActivityTimeout ) );
  1786     iGlobalParams.Append( EInputParams( EGprsLastSessionClosedTimeout,  KGprsLastSessionClosedTimeout ) );
  1783     iGlobalParams.Append( EInputParams( EGprsLastSessionClosedTimeout,  KGprsLastSessionClosedTimeout ) );