telephonyserverplugins/simtsy/src/CSimContextHelper.cpp
branchRCL_3
changeset 66 07a122eea281
parent 65 630d2f34d719
equal deleted inserted replaced
65:630d2f34d719 66:07a122eea281
    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 
       
    24 #include "CSimContextHelper.h"
    17 #include "CSimContextHelper.h"
    25 
    18 
    26 #include "CSimPacketContext.h"
    19 #include "CSimPacketContext.h"
       
    20 #include "Simlog.h"
    27 
    21 
    28                                                                                                                    //const RPacketContext::TContextConfigGPRS&  aContextConfigV1        
    22                                                                                                                    //const RPacketContext::TContextConfigGPRS&  aContextConfigV1        
    29 void CSimContextHelper::SetTContextConfigParamFromTContextConfigGPRS( TContextConfigParam& aContextConfigToSet, const RPacketContext::TContextConfigGPRS&  aContextConfigV1 )
    23 void CSimContextHelper::SetTContextConfigParamFromTContextConfigGPRS( TContextConfigParam& aContextConfigToSet, const RPacketContext::TContextConfigGPRS&  aContextConfigV1 )
    30 	{		
    24 	{		
    31 	aContextConfigToSet.iProtocolType = aContextConfigV1.iPdpType;
    25 	aContextConfigToSet.iProtocolType = aContextConfigV1.iPdpType;
   230 		
   224 		
   231 		//Get the Protocol Type from the config file
   225 		//Get the Protocol Type from the config file
   232 		TInt ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,protocolType);
   226 		TInt ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,protocolType);
   233 		if(ret!=KErrNone)
   227 		if(ret!=KErrNone)
   234 			{
   228 			{
   235 			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);
   229 			LOGPARSERR("ContextConfigParams::protocolType",ret,0,&aTag);
   236 			continue;
   230 			continue;
   237 			}
   231 			}
   238 		else
   232 		else
   239 			{
   233 			{
   240 			configParam.iProtocolType = protocolType;	
   234 			configParam.iProtocolType = protocolType;	
   243 		
   237 		
   244 		//Get the GGSN Address from the config file
   238 		//Get the GGSN Address from the config file
   245 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,gsnAddress);
   239 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,gsnAddress);
   246 		if(ret!=KErrNone)
   240 		if(ret!=KErrNone)
   247 			{
   241 			{
   248 			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);
   242 			LOGPARSERR("ContextConfigParams::gsnAddress",ret,1,&aTag);
   249 			continue;
   243 			continue;
   250 			}
   244 			}
   251 		else
   245 		else
   252 			{
   246 			{
   253 			configParam.iGsnAddress.Set(gsnAddress);
   247 			configParam.iGsnAddress.Set(gsnAddress);
   256 			
   250 			
   257 		//Get the ProtocolAddress from the config file
   251 		//Get the ProtocolAddress from the config file
   258 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,protocolAddress);
   252 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,protocolAddress);
   259 		if(ret!=KErrNone)
   253 		if(ret!=KErrNone)
   260 			{
   254 			{
   261 			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);
   255 			LOGPARSERR("ContextConfigParams::protocolAddress",ret,2,&aTag);
   262 			continue;
   256 			continue;
   263 			}
   257 			}
   264 		else
   258 		else
   265 			{
   259 			{
   266 			configParam.iProtocolAddress.Set(protocolAddress);
   260 			configParam.iProtocolAddress.Set(protocolAddress);
   272 		if(aTag == KSetContextConfigGPRS)
   266 		if(aTag == KSetContextConfigGPRS)
   273 			{
   267 			{
   274 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,3,pdpCompression);
   268 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,3,pdpCompression);
   275 			if(ret!=KErrNone)
   269 			if(ret!=KErrNone)
   276 				{
   270 				{
   277 				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);
   271 				LOGPARSERR("ContextConfigParams::pdpCompression",ret,3,&aTag);
   278 				continue;
   272 				continue;
   279 				}
   273 				}
   280 			else
   274 			else
   281 				{
   275 				{
   282 				//Set the GPRS PDP compression Config params
   276 				//Set the GPRS PDP compression Config params
   307 			{
   301 			{
   308 			//Get the PDP Header Compression params
   302 			//Get the PDP Header Compression params
   309 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,12,pdpHeaderCompression);
   303 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,12,pdpHeaderCompression);
   310 			if(ret!=KErrNone)
   304 			if(ret!=KErrNone)
   311 				{
   305 				{
   312 				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);
   306 				LOGPARSERR("ContextConfigParams::pdpHeaderCompression",ret,12,&aTag);
   313 				continue;
   307 				continue;
   314 				}
   308 				}
   315 			else
   309 			else
   316 				{
   310 				{
   317 				configParam.iPdpHeaderCompression = pdpHeaderCompression;
   311 				configParam.iPdpHeaderCompression = pdpHeaderCompression;
   319 			
   313 			
   320 			//Get the PDP Data compression params
   314 			//Get the PDP Data compression params
   321 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,13,pdpDataCompression);
   315 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,13,pdpDataCompression);
   322 			if(ret!=KErrNone)
   316 			if(ret!=KErrNone)
   323 				{
   317 				{
   324 				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);
   318 				LOGPARSERR("ContextConfigParams::pdpDataCompression",ret,13,&aTag);
   325 				continue;
   319 				continue;
   326 				}
   320 				}
   327 			else
   321 			else
   328 				{
   322 				{
   329 				configParam.iPdpDataCompression = pdpDataCompression;
   323 				configParam.iPdpDataCompression = pdpDataCompression;
   340 		if(aTag == KSetContextConfigGPRS)
   334 		if(aTag == KSetContextConfigGPRS)
   341 			{
   335 			{
   342 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,4,anonymousAccess);
   336 			ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,4,anonymousAccess);
   343 			if(ret!=KErrNone)
   337 			if(ret!=KErrNone)
   344 				{
   338 				{
   345 				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);
   339 				LOGPARSERR("ContextConfigParams::anonymousAccess",ret,4,&aTag);
   346 				continue;
   340 				continue;
   347 				}
   341 				}
   348 			else
   342 			else
   349 				{
   343 				{
   350 				configParam.iAnonymousAccess = anonymousAccess;
   344 				configParam.iAnonymousAccess = anonymousAccess;
   367 			}
   361 			}
   368 			
   362 			
   369 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,useEdge);
   363 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,useEdge);
   370 		if(ret!=KErrNone)
   364 		if(ret!=KErrNone)
   371 			{
   365 			{
   372 			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);
   366 			LOGPARSERR("ContextConfigParams::useEdge",ret,delimiterField,&aTag);
   373 			continue;
   367 			continue;
   374 			}
   368 			}
   375 		else
   369 		else
   376 			{
   370 			{
   377 			configParam.iUseEdge = useEdge;	
   371 			configParam.iUseEdge = useEdge;	
   389 			}
   383 			}
   390 			
   384 			
   391 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,protocol);
   385 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,protocol);
   392 		if(ret!=KErrNone)
   386 		if(ret!=KErrNone)
   393 			{
   387 			{
   394 			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);
   388 			LOGPARSERR("ProtocolConfigOption::protocol",ret,delimiterField,&aTag);
   395 			}
   389 			}
   396 		else
   390 		else
   397 			{
   391 			{
   398 			configParam.iProtocolConfigOption.iAuthProtocol = protocol;	
   392 			configParam.iProtocolConfigOption.iAuthProtocol = protocol;	
   399 			}
   393 			}
   410 			}
   404 			}
   411 			
   405 			
   412 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,username);
   406 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,username);
   413 		if(ret!=KErrNone)
   407 		if(ret!=KErrNone)
   414 			{
   408 			{
   415 			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);
   409 			LOGPARSERR("ProtocolConfigOption::username",ret,delimiterField,&aTag);
   416 			}
   410 			}
   417 		else
   411 		else
   418 			{
   412 			{
   419 			configParam.iProtocolConfigOption.iUsername.Set(username);	
   413 			configParam.iProtocolConfigOption.iUsername.Set(username);	
   420 			}
   414 			}
   431 			}
   425 			}
   432 
   426 
   433 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,password);
   427 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,password);
   434 		if(ret!=KErrNone)
   428 		if(ret!=KErrNone)
   435 			{
   429 			{
   436 			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);
   430 			LOGPARSERR("ProtocolConfigOption::password",ret,delimiterField,&aTag);
   437 			}
   431 			}
   438 		else
   432 		else
   439 			{
   433 			{
   440 			configParam.iProtocolConfigOption.iPassword.Set(password);	
   434 			configParam.iProtocolConfigOption.iPassword.Set(password);	
   441 			}
   435 			}
   452 			}
   446 			}
   453 			
   447 			
   454 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,challenge);
   448 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,challenge);
   455 		if(ret!=KErrNone)
   449 		if(ret!=KErrNone)
   456 			{
   450 			{
   457 			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);
   451 			LOGPARSERR("ProtocolConfigOption::challenge",ret,delimiterField,&aTag);
   458 			}
   452 			}
   459 		else
   453 		else
   460 			{
   454 			{
   461 			configParam.iProtocolConfigOption.iChallenge.Set(challenge);	
   455 			configParam.iProtocolConfigOption.iChallenge.Set(challenge);	
   462 			}
   456 			}
   473 			}
   467 			}
   474 			
   468 			
   475 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,response);
   469 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,response);
   476 		if(ret!=KErrNone)
   470 		if(ret!=KErrNone)
   477 			{
   471 			{
   478 			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);
   472 			LOGPARSERR("ProtocolConfigOption::response",ret,delimiterField,&aTag);
   479 			}
   473 			}
   480 		else
   474 		else
   481 			{
   475 			{
   482 			configParam.iProtocolConfigOption.iResponse.Set(response);	
   476 			configParam.iProtocolConfigOption.iResponse.Set(response);	
   483 			}
   477 			}
   494 			}
   488 			}
   495 			
   489 			
   496 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,primaryDNS);
   490 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,primaryDNS);
   497 		if(ret!=KErrNone)
   491 		if(ret!=KErrNone)
   498 			{
   492 			{
   499 			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);
   493 			LOGPARSERR("ProtocolConfigOption::primaryDNS",ret,delimiterField,&aTag);
   500 			}
   494 			}
   501 		else
   495 		else
   502 			{
   496 			{
   503 			configParam.iProtocolConfigOption.iPrimaryDNS.Set(primaryDNS);	
   497 			configParam.iProtocolConfigOption.iPrimaryDNS.Set(primaryDNS);	
   504 			}
   498 			}
   515 			}
   509 			}
   516 		
   510 		
   517 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,secondaryDNS);
   511 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,secondaryDNS);
   518 		if(ret!=KErrNone)
   512 		if(ret!=KErrNone)
   519 			{
   513 			{
   520 			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);
   514 			LOGPARSERR("ProtocolConfigOption::secondaryDNS",ret,delimiterField,&aTag);
   521 			}
   515 			}
   522 		else
   516 		else
   523 			{
   517 			{
   524 			configParam.iProtocolConfigOption.iSecondaryDNS.Set(secondaryDNS);	
   518 			configParam.iProtocolConfigOption.iSecondaryDNS.Set(secondaryDNS);	
   525 			}
   519 			}
   536 			}
   530 			}
   537 			
   531 			
   538 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,id);
   532 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,id);
   539 		if(ret!=KErrNone)
   533 		if(ret!=KErrNone)
   540 			{
   534 			{
   541 			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);
   535 			LOGPARSERR("ProtocolConfigOption::id",ret,delimiterField,&aTag);
   542 			}
   536 			}
   543 		else
   537 		else
   544 			{
   538 			{
   545 			configParam.iProtocolConfigOption.iId = id;	
   539 			configParam.iProtocolConfigOption.iId = id;	
   546 			}
   540 			}
   565 
   559 
   566 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,numAdditionalParams);
   560 		ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,delimiterField,numAdditionalParams);
   567 	
   561 	
   568 		if(ret!=KErrNone)
   562 		if(ret!=KErrNone)
   569 			{
   563 			{
   570 			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);
   564 			LOGPARSERR("ProtocolConfigOption::numAdditionalParams",ret,delimiterField,&aTag);
   571 			}
   565 			}
   572 		else
   566 		else
   573 			{
   567 			{
   574 			TInt nestedItemNumber;
   568 			TInt nestedItemNumber;
   575 			TUint16 digit, format;
   569 			TUint16 digit, format;
   610 				
   604 				
   611 				// Get TPcoProtocolId
   605 				// Get TPcoProtocolId
   612 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,0,additionalParamId);
   606 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,0,additionalParamId);
   613 				if(ret!=KErrNone)
   607 				if(ret!=KErrNone)
   614 					{
   608 					{
   615 					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);
   609 					LOGPARSERR("AdditionalParamItem::additionalParamId",ret,0,&aTag);
   616 					continue;
   610 					continue;
   617 					}
   611 					}
   618 				else
   612 				else
   619 					{
   613 					{
   620 					if(AsciiToNum(additionalParamId, digit) == KErrNone)
   614 					if(AsciiToNum(additionalParamId, digit) == KErrNone)
   621 						{
   615 						{
   622 						pcoId.SetId(digit);
   616 						pcoId.SetId(digit);
   623 						}
   617 						}
   624 					else
   618 					else
   625 						{
   619 						{
   626 						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);
   620 						LOGPARSERR("AdditionalParamItem::additionalParamId",KErrArgument,0,&aTag);
   627 						continue;
   621 						continue;
   628 						}
   622 						}
   629 					}
   623 					}
   630 
   624 
   631 				// Read AdditionalParamDataFormat field to find out how 
   625 				// Read AdditionalParamDataFormat field to find out how 
   633 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,2,additionalParamDataFormat);
   627 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,2,additionalParamDataFormat);
   634 				if (ret != KErrNone)
   628 				if (ret != KErrNone)
   635 					{
   629 					{
   636 					// AdditionalParamDataFormat not been specified,
   630 					// AdditionalParamDataFormat not been specified,
   637 					// default to plain ASCII
   631 					// default to plain ASCII
   638 					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);
   632 					LOGPARSERR("AdditionalParamItem::additionalParamDataFormat",ret,2,&aTag);
   639 					format = EConfigDataFormatAscii;
   633 					format = EConfigDataFormatAscii;
   640 					}
   634 					}
   641 				else
   635 				else
   642 					{
   636 					{
   643 					if (AsciiToNum(additionalParamDataFormat, format) != KErrNone)
   637 					if (AsciiToNum(additionalParamDataFormat, format) != KErrNone)
   644 						{
   638 						{
   645 						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);
   639 						LOGPARSERR("AdditionalParamItem::additionalParamDataFormat",KErrArgument,2,&aTag);
   646 						format = EConfigDataFormatAscii;
   640 						format = EConfigDataFormatAscii;
   647 						}
   641 						}
   648 						
   642 						
   649 					// Check that the AdditionalParamDataFormat value
   643 					// Check that the AdditionalParamDataFormat value
   650 					// specified in the config file is a valid one,
   644 					// specified in the config file is a valid one,
   651 					// default to ASCII if not.
   645 					// default to ASCII if not.
   652 					if (format >= EMaxConfigDataFormat)
   646 					if (format >= EMaxConfigDataFormat)
   653 						{
   647 						{
   654 						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);
   648 						LOGPARSERR("AdditionalParamItem::additionalParamDataFormat",KErrArgument,2,&aTag);
   655 						format = EConfigDataFormatAscii;
   649 						format = EConfigDataFormatAscii;
   656 						}
   650 						}
   657 					}
   651 					}
   658 
   652 
   659 				// Read AdditionalParamData
   653 				// Read AdditionalParamData
   660 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,1,additionalParamData);
   654 				ret=CTestConfig::GetElement(item2->Value(),KStdDelimiter,1,additionalParamData);
   661 				if(ret!=KErrNone)
   655 				if(ret!=KErrNone)
   662 					{
   656 					{
   663 					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);
   657 					LOGPARSERR("AdditionalParamItem::additionalParamContent",ret,1,&aTag);
   664 					continue;
   658 					continue;
   665 					}
   659 					}
   666 				else
   660 				else
   667 					{
   661 					{
   668 					// Add AdditionalParamData to PCO buffer depending on format
   662 					// Add AdditionalParamData to PCO buffer depending on format
   675 						TBuf8<RPacketContext::KMiscProtocolBufferLength> additionalParamDataBuffer;
   669 						TBuf8<RPacketContext::KMiscProtocolBufferLength> additionalParamDataBuffer;
   676 						additionalParamDataBuffer.Copy (additionalParamData);
   670 						additionalParamDataBuffer.Copy (additionalParamData);
   677 
   671 
   678 						if (ParseMixedBinaryAsciiDataL(additionalParamDataBuffer) != KErrNone)
   672 						if (ParseMixedBinaryAsciiDataL(additionalParamDataBuffer) != KErrNone)
   679 							{
   673 							{
   680 							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);
   674 							LOGPARSERR("AdditionalParamItem::additionalParamContent",KErrArgument,1,&aTag);
   681 							SimPanic(EInvalidParameterFormatInConfigFile);							
   675 							SimPanic(EInvalidParameterFormatInConfigFile);							
   682 							}
   676 							}
   683 						TPtr8 additionalParamDataPtr(const_cast<TUint8*>(additionalParamDataBuffer.Ptr()),
   677 						TPtr8 additionalParamDataPtr(const_cast<TUint8*>(additionalParamDataBuffer.Ptr()),
   684 							additionalParamDataBuffer.Length(), additionalParamDataBuffer.Length());
   678 							additionalParamDataBuffer.Length(), additionalParamDataBuffer.Length());
   685 						theTLV.AppendItemL(pcoId,additionalParamDataPtr);
   679 						theTLV.AppendItemL(pcoId,additionalParamDataPtr);