telephonyserverplugins/simtsy/src/CSimContextHelper.cpp
changeset 44 8b72faa1200f
parent 0 3553901f7fa8
child 53 12b52b1a573e
equal deleted inserted replaced
39:2473f5e227f9 44:8b72faa1200f
     1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
    12 //
    12 //
    13 // Description:
    13 // Description:
    14 //
    14 //
    15 
    15 
    16 
    16 
       
    17 
       
    18 
       
    19 #include "OstTraceDefinitions.h"
       
    20 #ifdef OST_TRACE_COMPILER_IN_USE
       
    21 #include "CSimContextHelperTraces.h"
       
    22 #endif
       
    23 
    17 #include "CSimContextHelper.h"
    24 #include "CSimContextHelper.h"
    18 
    25 
    19 #include "CSimPacketContext.h"
    26 #include "CSimPacketContext.h"
    20 #include "Simlog.h"
       
    21 
    27 
    22                                                                                                                    //const RPacketContext::TContextConfigGPRS&  aContextConfigV1        
    28                                                                                                                    //const RPacketContext::TContextConfigGPRS&  aContextConfigV1        
    23 void CSimContextHelper::SetTContextConfigParamFromTContextConfigGPRS( TContextConfigParam& aContextConfigToSet, const RPacketContext::TContextConfigGPRS&  aContextConfigV1 )
    29 void CSimContextHelper::SetTContextConfigParamFromTContextConfigGPRS( TContextConfigParam& aContextConfigToSet, const RPacketContext::TContextConfigGPRS&  aContextConfigV1 )
    24 	{		
    30 	{		
    25 	aContextConfigToSet.iProtocolType = aContextConfigV1.iPdpType;
    31 	aContextConfigToSet.iProtocolType = aContextConfigV1.iPdpType;
   216 		
   222 		
   217 		//Get the Protocol Type from the config file
   223 		//Get the Protocol Type from the config file
   218 		TInt ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,protocolType);
   224 		TInt ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,protocolType);
   219 		if(ret!=KErrNone)
   225 		if(ret!=KErrNone)
   220 			{
   226 			{
   221 			LOGPARSERR("ContextConfigParams::protocolType",ret,0,&aTag);
   227 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_1, "WARNING - CONFIGURATION FILE PARSING - Reading element CONTEXTCONFIGPARAMS::PROTOCOLTYPE returned %d (element no. %d) from tag %s.",ret,0,aTag);
   222 			continue;
   228 			continue;
   223 			}
   229 			}
   224 		else
   230 		else
   225 			{
   231 			{
   226 			configParam.iProtocolType = protocolType;	
   232 			configParam.iProtocolType = protocolType;	
   229 		
   235 		
   230 		//Get the GGSN Address from the config file
   236 		//Get the GGSN Address from the config file
   231 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,gsnAddress);
   237 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,gsnAddress);
   232 		if(ret!=KErrNone)
   238 		if(ret!=KErrNone)
   233 			{
   239 			{
   234 			LOGPARSERR("ContextConfigParams::gsnAddress",ret,1,&aTag);
   240 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_2, "WARNING - CONFIGURATION FILE PARSING - Reading element CONTEXTCONFIGPARAMS::GSNADDRESS returned %d (element no. %d) from tag %s.",ret,1,aTag);
   235 			continue;
   241 			continue;
   236 			}
   242 			}
   237 		else
   243 		else
   238 			{
   244 			{
   239 			configParam.iGsnAddress.Set(gsnAddress);
   245 			configParam.iGsnAddress.Set(gsnAddress);
   242 			
   248 			
   243 		//Get the ProtocolAddress from the config file
   249 		//Get the ProtocolAddress from the config file
   244 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,protocolAddress);
   250 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,protocolAddress);
   245 		if(ret!=KErrNone)
   251 		if(ret!=KErrNone)
   246 			{
   252 			{
   247 			LOGPARSERR("ContextConfigParams::protocolAddress",ret,2,&aTag);
   253 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_3, "WARNING - CONFIGURATION FILE PARSING - Reading element CONTEXTCONFIGPARAMS::PROTOCOLADDRESS returned %d (element no. %d) from tag %s.",ret,2,aTag);
   248 			continue;
   254 			continue;
   249 			}
   255 			}
   250 		else
   256 		else
   251 			{
   257 			{
   252 			configParam.iProtocolAddress.Set(protocolAddress);
   258 			configParam.iProtocolAddress.Set(protocolAddress);
   258 		if(aTag == KSetContextConfigGPRS)
   264 		if(aTag == KSetContextConfigGPRS)
   259 			{
   265 			{
   260 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,3,pdpCompression);
   266 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,3,pdpCompression);
   261 			if(ret!=KErrNone)
   267 			if(ret!=KErrNone)
   262 				{
   268 				{
   263 				LOGPARSERR("ContextConfigParams::pdpCompression",ret,3,&aTag);
   269 				OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_4, "WARNING - CONFIGURATION FILE PARSING - Reading element CONTEXTCONFIGPARAMS::PDPCOMPRESSION returned %d (element no. %d) from tag %s.",ret,3,aTag);
   264 				continue;
   270 				continue;
   265 				}
   271 				}
   266 			else
   272 			else
   267 				{
   273 				{
   268 				//Set the GPRS PDP compression Config params
   274 				//Set the GPRS PDP compression Config params
   293 			{
   299 			{
   294 			//Get the PDP Header Compression params
   300 			//Get the PDP Header Compression params
   295 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,12,pdpHeaderCompression);
   301 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,12,pdpHeaderCompression);
   296 			if(ret!=KErrNone)
   302 			if(ret!=KErrNone)
   297 				{
   303 				{
   298 				LOGPARSERR("ContextConfigParams::pdpHeaderCompression",ret,12,&aTag);
   304 				OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_5, "WARNING - CONFIGURATION FILE PARSING - Reading element CONTEXTCONFIGPARAMS::PDPHEADERCOMPRESSION returned %d (element no. %d) from tag %s.",ret,12,aTag);
   299 				continue;
   305 				continue;
   300 				}
   306 				}
   301 			else
   307 			else
   302 				{
   308 				{
   303 				configParam.iPdpHeaderCompression = pdpHeaderCompression;
   309 				configParam.iPdpHeaderCompression = pdpHeaderCompression;
   305 			
   311 			
   306 			//Get the PDP Data compression params
   312 			//Get the PDP Data compression params
   307 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,13,pdpDataCompression);
   313 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,13,pdpDataCompression);
   308 			if(ret!=KErrNone)
   314 			if(ret!=KErrNone)
   309 				{
   315 				{
   310 				LOGPARSERR("ContextConfigParams::pdpDataCompression",ret,13,&aTag);
   316 				OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_6, "WARNING - CONFIGURATION FILE PARSING - Reading element CONTEXTCONFIGPARAMS::PDPDATACOMPRESSION returned %d (element no. %d) from tag %s.",ret,13,aTag);
   311 				continue;
   317 				continue;
   312 				}
   318 				}
   313 			else
   319 			else
   314 				{
   320 				{
   315 				configParam.iPdpDataCompression = pdpDataCompression;
   321 				configParam.iPdpDataCompression = pdpDataCompression;
   326 		if(aTag == KSetContextConfigGPRS)
   332 		if(aTag == KSetContextConfigGPRS)
   327 			{
   333 			{
   328 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,4,anonymousAccess);
   334 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,4,anonymousAccess);
   329 			if(ret!=KErrNone)
   335 			if(ret!=KErrNone)
   330 				{
   336 				{
   331 				LOGPARSERR("ContextConfigParams::anonymousAccess",ret,4,&aTag);
   337 				OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_7, "WARNING - CONFIGURATION FILE PARSING - Reading element CONTEXTCONFIGPARAMS::ANONYMOUSACCESS returned %d (element no. %d) from tag %s.",ret,4,aTag);
   332 				continue;
   338 				continue;
   333 				}
   339 				}
   334 			else
   340 			else
   335 				{
   341 				{
   336 				configParam.iAnonymousAccess = anonymousAccess;
   342 				configParam.iAnonymousAccess = anonymousAccess;
   353 			}
   359 			}
   354 			
   360 			
   355 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,useEdge);
   361 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,useEdge);
   356 		if(ret!=KErrNone)
   362 		if(ret!=KErrNone)
   357 			{
   363 			{
   358 			LOGPARSERR("ContextConfigParams::useEdge",ret,delimiterField,&aTag);
   364 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_8, "WARNING - CONFIGURATION FILE PARSING - Reading element CONTEXTCONFIGPARAMS::USEEDGE returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   359 			continue;
   365 			continue;
   360 			}
   366 			}
   361 		else
   367 		else
   362 			{
   368 			{
   363 			configParam.iUseEdge = useEdge;	
   369 			configParam.iUseEdge = useEdge;	
   375 			}
   381 			}
   376 			
   382 			
   377 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,protocol);
   383 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,protocol);
   378 		if(ret!=KErrNone)
   384 		if(ret!=KErrNone)
   379 			{
   385 			{
   380 			LOGPARSERR("ProtocolConfigOption::protocol",ret,delimiterField,&aTag);
   386 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_9, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::PROTOCOL returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   381 			}
   387 			}
   382 		else
   388 		else
   383 			{
   389 			{
   384 			configParam.iProtocolConfigOption.iAuthProtocol = protocol;	
   390 			configParam.iProtocolConfigOption.iAuthProtocol = protocol;	
   385 			}
   391 			}
   396 			}
   402 			}
   397 			
   403 			
   398 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,username);
   404 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,username);
   399 		if(ret!=KErrNone)
   405 		if(ret!=KErrNone)
   400 			{
   406 			{
   401 			LOGPARSERR("ProtocolConfigOption::username",ret,delimiterField,&aTag);
   407 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_10, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::USERNAME returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   402 			}
   408 			}
   403 		else
   409 		else
   404 			{
   410 			{
   405 			configParam.iProtocolConfigOption.iUsername.Set(username);	
   411 			configParam.iProtocolConfigOption.iUsername.Set(username);	
   406 			}
   412 			}
   417 			}
   423 			}
   418 
   424 
   419 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,password);
   425 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,password);
   420 		if(ret!=KErrNone)
   426 		if(ret!=KErrNone)
   421 			{
   427 			{
   422 			LOGPARSERR("ProtocolConfigOption::password",ret,delimiterField,&aTag);
   428 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_11, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::PASSWORD returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   423 			}
   429 			}
   424 		else
   430 		else
   425 			{
   431 			{
   426 			configParam.iProtocolConfigOption.iPassword.Set(password);	
   432 			configParam.iProtocolConfigOption.iPassword.Set(password);	
   427 			}
   433 			}
   438 			}
   444 			}
   439 			
   445 			
   440 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,challenge);
   446 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,challenge);
   441 		if(ret!=KErrNone)
   447 		if(ret!=KErrNone)
   442 			{
   448 			{
   443 			LOGPARSERR("ProtocolConfigOption::challenge",ret,delimiterField,&aTag);
   449 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_12, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::CHALLENGE returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   444 			}
   450 			}
   445 		else
   451 		else
   446 			{
   452 			{
   447 			configParam.iProtocolConfigOption.iChallenge.Set(challenge);	
   453 			configParam.iProtocolConfigOption.iChallenge.Set(challenge);	
   448 			}
   454 			}
   459 			}
   465 			}
   460 			
   466 			
   461 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,response);
   467 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,response);
   462 		if(ret!=KErrNone)
   468 		if(ret!=KErrNone)
   463 			{
   469 			{
   464 			LOGPARSERR("ProtocolConfigOption::response",ret,delimiterField,&aTag);
   470 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_13, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::RESPONSE returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   465 			}
   471 			}
   466 		else
   472 		else
   467 			{
   473 			{
   468 			configParam.iProtocolConfigOption.iResponse.Set(response);	
   474 			configParam.iProtocolConfigOption.iResponse.Set(response);	
   469 			}
   475 			}
   480 			}
   486 			}
   481 			
   487 			
   482 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,primaryDNS);
   488 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,primaryDNS);
   483 		if(ret!=KErrNone)
   489 		if(ret!=KErrNone)
   484 			{
   490 			{
   485 			LOGPARSERR("ProtocolConfigOption::primaryDNS",ret,delimiterField,&aTag);
   491 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_14, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::PRIMARYDNS returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   486 			}
   492 			}
   487 		else
   493 		else
   488 			{
   494 			{
   489 			configParam.iProtocolConfigOption.iPrimaryDNS.Set(primaryDNS);	
   495 			configParam.iProtocolConfigOption.iPrimaryDNS.Set(primaryDNS);	
   490 			}
   496 			}
   501 			}
   507 			}
   502 		
   508 		
   503 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,secondaryDNS);
   509 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,secondaryDNS);
   504 		if(ret!=KErrNone)
   510 		if(ret!=KErrNone)
   505 			{
   511 			{
   506 			LOGPARSERR("ProtocolConfigOption::secondaryDNS",ret,delimiterField,&aTag);
   512 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_15, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::SECONDARYDNS returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   507 			}
   513 			}
   508 		else
   514 		else
   509 			{
   515 			{
   510 			configParam.iProtocolConfigOption.iSecondaryDNS.Set(secondaryDNS);	
   516 			configParam.iProtocolConfigOption.iSecondaryDNS.Set(secondaryDNS);	
   511 			}
   517 			}
   522 			}
   528 			}
   523 			
   529 			
   524 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,id);
   530 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,id);
   525 		if(ret!=KErrNone)
   531 		if(ret!=KErrNone)
   526 			{
   532 			{
   527 			LOGPARSERR("ProtocolConfigOption::id",ret,delimiterField,&aTag);
   533 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_16, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::ID returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   528 			}
   534 			}
   529 		else
   535 		else
   530 			{
   536 			{
   531 			configParam.iProtocolConfigOption.iId = id;	
   537 			configParam.iProtocolConfigOption.iId = id;	
   532 			}
   538 			}
   551 
   557 
   552 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,numAdditionalParams);
   558 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,numAdditionalParams);
   553 	
   559 	
   554 		if(ret!=KErrNone)
   560 		if(ret!=KErrNone)
   555 			{
   561 			{
   556 			LOGPARSERR("ProtocolConfigOption::numAdditionalParams",ret,delimiterField,&aTag);
   562 			OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_17, "WARNING - CONFIGURATION FILE PARSING - Reading element PROTOCOLCONFIGOPTION::NUMADDITIONALPARAMS returned %d (element no. %d) from tag %s.",ret,delimiterField,aTag);
   557 			}
   563 			}
   558 		else
   564 		else
   559 			{
   565 			{
   560 			TInt nestedItemNumber;
   566 			TInt nestedItemNumber;
   561 			TUint16 digit, format;
   567 			TUint16 digit, format;
   596 				
   602 				
   597 				// Get TPcoProtocolId
   603 				// Get TPcoProtocolId
   598 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,0,additionalParamId);
   604 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,0,additionalParamId);
   599 				if(ret!=KErrNone)
   605 				if(ret!=KErrNone)
   600 					{
   606 					{
   601 					LOGPARSERR("AdditionalParamItem::additionalParamId",ret,0,&aTag);
   607 					OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_18, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONALPARAMITEM::ADDITIONALPARAMID returned %d (element no. %d) from tag %s.",ret,0,aTag);
   602 					continue;
   608 					continue;
   603 					}
   609 					}
   604 				else
   610 				else
   605 					{
   611 					{
   606 					if(AsciiToNum(additionalParamId, digit) == KErrNone)
   612 					if(AsciiToNum(additionalParamId, digit) == KErrNone)
   607 						{
   613 						{
   608 						pcoId.SetId(digit);
   614 						pcoId.SetId(digit);
   609 						}
   615 						}
   610 					else
   616 					else
   611 						{
   617 						{
   612 						LOGPARSERR("AdditionalParamItem::additionalParamId",KErrArgument,0,&aTag);
   618 						OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_19, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONALPARAMITEM::ADDITIONALPARAMID returned %d (element no. %d) from tag %s.",KErrArgument,0,aTag);
   613 						continue;
   619 						continue;
   614 						}
   620 						}
   615 					}
   621 					}
   616 
   622 
   617 				// Read AdditionalParamDataFormat field to find out how 
   623 				// Read AdditionalParamDataFormat field to find out how 
   619 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,2,additionalParamDataFormat);
   625 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,2,additionalParamDataFormat);
   620 				if (ret != KErrNone)
   626 				if (ret != KErrNone)
   621 					{
   627 					{
   622 					// AdditionalParamDataFormat not been specified,
   628 					// AdditionalParamDataFormat not been specified,
   623 					// default to plain ASCII
   629 					// default to plain ASCII
   624 					LOGPARSERR("AdditionalParamItem::additionalParamDataFormat",ret,2,&aTag);
   630 					OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_20, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONALPARAMITEM::ADDITIONALPARAMDATAFORMAT returned %d (element no. %d) from tag %s.",ret,2,aTag);
   625 					format = EConfigDataFormatAscii;
   631 					format = EConfigDataFormatAscii;
   626 					}
   632 					}
   627 				else
   633 				else
   628 					{
   634 					{
   629 					if (AsciiToNum(additionalParamDataFormat, format) != KErrNone)
   635 					if (AsciiToNum(additionalParamDataFormat, format) != KErrNone)
   630 						{
   636 						{
   631 						LOGPARSERR("AdditionalParamItem::additionalParamDataFormat",KErrArgument,2,&aTag);
   637 						OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_21, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONALPARAMITEM::ADDITIONALPARAMDATAFORMAT returned %d (element no. %d) from tag %s.",KErrArgument,2,aTag);
   632 						format = EConfigDataFormatAscii;
   638 						format = EConfigDataFormatAscii;
   633 						}
   639 						}
   634 						
   640 						
   635 					// Check that the AdditionalParamDataFormat value
   641 					// Check that the AdditionalParamDataFormat value
   636 					// specified in the config file is a valid one,
   642 					// specified in the config file is a valid one,
   637 					// default to ASCII if not.
   643 					// default to ASCII if not.
   638 					if (format >= EMaxConfigDataFormat)
   644 					if (format >= EMaxConfigDataFormat)
   639 						{
   645 						{
   640 						LOGPARSERR("AdditionalParamItem::additionalParamDataFormat",KErrArgument,2,&aTag);
   646 						OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_22, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONALPARAMITEM::ADDITIONALPARAMDATAFORMAT returned %d (element no. %d) from tag %s.",KErrArgument,2,aTag);
   641 						format = EConfigDataFormatAscii;
   647 						format = EConfigDataFormatAscii;
   642 						}
   648 						}
   643 					}
   649 					}
   644 
   650 
   645 				// Read AdditionalParamData
   651 				// Read AdditionalParamData
   646 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,1,additionalParamData);
   652 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,1,additionalParamData);
   647 				if(ret!=KErrNone)
   653 				if(ret!=KErrNone)
   648 					{
   654 					{
   649 					LOGPARSERR("AdditionalParamItem::additionalParamContent",ret,1,&aTag);
   655 					OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_23, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONALPARAMITEM::ADDITIONALPARAMCONTENT returned %d (element no. %d) from tag %s.",ret,1,aTag);
   650 					continue;
   656 					continue;
   651 					}
   657 					}
   652 				else
   658 				else
   653 					{
   659 					{
   654 					// Add AdditionalParamData to PCO buffer depending on format
   660 					// Add AdditionalParamData to PCO buffer depending on format
   661 						TBuf8<RPacketContext::KMiscProtocolBufferLength> additionalParamDataBuffer;
   667 						TBuf8<RPacketContext::KMiscProtocolBufferLength> additionalParamDataBuffer;
   662 						additionalParamDataBuffer.Copy (additionalParamData);
   668 						additionalParamDataBuffer.Copy (additionalParamData);
   663 
   669 
   664 						if (ParseMixedBinaryAsciiDataL(additionalParamDataBuffer) != KErrNone)
   670 						if (ParseMixedBinaryAsciiDataL(additionalParamDataBuffer) != KErrNone)
   665 							{
   671 							{
   666 							LOGPARSERR("AdditionalParamItem::additionalParamContent",KErrArgument,1,&aTag);
   672 							OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMCONTEXTHELPER_GETCONTEXTCONFIGPARAMSETTINGSL_24, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONALPARAMITEM::ADDITIONALPARAMCONTENT returned %d (element no. %d) from tag %s.",KErrArgument,1,aTag);
   667 							SimPanic(EInvalidParameterFormatInConfigFile);							
   673 							SimPanic(EInvalidParameterFormatInConfigFile);							
   668 							}
   674 							}
   669 						TPtr8 additionalParamDataPtr(const_cast<TUint8*>(additionalParamDataBuffer.Ptr()),
   675 						TPtr8 additionalParamDataPtr(const_cast<TUint8*>(additionalParamDataBuffer.Ptr()),
   670 							additionalParamDataBuffer.Length(), additionalParamDataBuffer.Length());
   676 							additionalParamDataBuffer.Length(), additionalParamDataBuffer.Length());
   671 						theTLV.AppendItemL(pcoId,additionalParamDataPtr);
   677 						theTLV.AppendItemL(pcoId,additionalParamDataPtr);