policymanagement/policyengine/policyengineserver/src/TrustedSession.cpp
branchRCL_3
changeset 21 504e41245867
parent 0 b497e44ab2fc
child 34 696f5dd11939
equal deleted inserted replaced
19:86979fe66c4c 21:504e41245867
    26 #include "DataTypes.h"
    26 #include "DataTypes.h"
    27 #include "debug.h"
    27 #include "debug.h"
    28 #include "ErrorCodes.h"
    28 #include "ErrorCodes.h"
    29 
    29 
    30 #include <x509cert.h>
    30 #include <x509cert.h>
    31 #include <imcvcodc.h>
    31 #include <tconvbase64.h>
    32 
    32 
    33 
    33 
    34 
    34 
    35 const TChar KCASNDelimeter = '-';
    35 const TChar KCASNDelimeter = '-';
    36 _LIT( KSecureIdString, "SECUREID");
    36 _LIT( KSecureIdString, "SECUREID");
   242 			CleanupStack::PushL( tempInfo );
   242 			CleanupStack::PushL( tempInfo );
   243 
   243 
   244 			TCertInfo certInfo;
   244 			TCertInfo certInfo;
   245 			TPckg<TCertInfo> pck( certInfo );
   245 			TPckg<TCertInfo> pck( certInfo );
   246 	
   246 	
   247 			TImCodecB64 base64;
   247 			TBase64 base64;
   248 			User::LeaveIfError( base64.Decode( value, pck ) );	
   248 			User::LeaveIfError( base64.Decode( value, pck ) );	
   249 				
   249 				
   250 			//create suject info for it
   250 			//create suject info for it
   251 			CCertificateMaps::CreateSubjectInfoL( tempInfo, certInfo );
   251 			CCertificateMaps::CreateSubjectInfoL( tempInfo, certInfo );
   252 
   252 
   470 	designator->AddAttributeL( 0, AttributeDesignators::AttributeId, AutoCertificate);
   470 	designator->AddAttributeL( 0, AttributeDesignators::AttributeId, AutoCertificate);
   471 	designator->AddAttributeL( 0, AttributeDesignators::DataType, PolicyLanguage::NativeLanguage::AttributeValues::StringDataType);
   471 	designator->AddAttributeL( 0, AttributeDesignators::DataType, PolicyLanguage::NativeLanguage::AttributeValues::StringDataType);
   472 	
   472 	
   473 	//serialize TCertInfo and decode it to base64 format
   473 	//serialize TCertInfo and decode it to base64 format
   474 	TPckg<TCertInfo> pck( iSessionCertInfo);
   474 	TPckg<TCertInfo> pck( iSessionCertInfo);
   475 	TImCodecB64 base64;
   475 	TBase64 base64;
   476 	HBufC8 * base64coded = HBufC8::NewLC( pck.Length() * 3);
   476 	HBufC8 * base64coded = HBufC8::NewLC( pck.Length() * 3);
   477 	TPtr8 base64Ptr = base64coded->Des();
   477 	TPtr8 base64Ptr = base64coded->Des();
   478 	User::LeaveIfError( base64.Encode( pck, base64Ptr));	
   478 	User::LeaveIfError( base64.Encode( pck, base64Ptr));	
   479 
   479 
   480 	CAttributeValue * aliasValue = CAttributeValue::NewL( base64Ptr, PolicyLanguage::NativeLanguage::AttributeValues::StringDataType);
   480 	CAttributeValue * aliasValue = CAttributeValue::NewL( base64Ptr, PolicyLanguage::NativeLanguage::AttributeValues::StringDataType);
   997 				TDesC8& binaryCert = subject1->AttributeValue()->Data()->Value();
   997 				TDesC8& binaryCert = subject1->AttributeValue()->Data()->Value();
   998 				
   998 				
   999 				TCertInfo certInfo;
   999 				TCertInfo certInfo;
  1000 				TPckg<TCertInfo> pck( certInfo);
  1000 				TPckg<TCertInfo> pck( certInfo);
  1001 	
  1001 	
  1002 				TImCodecB64 base64;
  1002 				TBase64 base64;
  1003 				User::LeaveIfError( base64.Decode( binaryCert, pck));	
  1003 				User::LeaveIfError( base64.Decode( binaryCert, pck));	
  1004 				
  1004 				
  1005 				//create suject info for it
  1005 				//create suject info for it
  1006 				CreateSubjectInfoL( info, certInfo);
  1006 				CreateSubjectInfoL( info, certInfo);
  1007 					
  1007 					
  1455 				debugPtr.Set( debugPtr.Mid( size));
  1455 				debugPtr.Set( debugPtr.Mid( size));
  1456 				RDEBUG_2("%S", &temp);
  1456 				RDEBUG_2("%S", &temp);
  1457 			}
  1457 			}
  1458 #endif	//#ifdef __DEBUG
  1458 #endif	//#ifdef __DEBUG
  1459 			//convert base64 coding to binary format
  1459 			//convert base64 coding to binary format
  1460 			TImCodecB64 base64;
  1460 			TBase64 base64;
  1461 			
  1461 			
  1462 			HBufC8 * base64Cert = HBufC8::NewLC( certPtr.Length());
  1462 			HBufC8 * base64Cert = HBufC8::NewLC( certPtr.Length());
  1463 			TPtr8 base64Ptr = base64Cert->Des();
  1463 			TPtr8 base64Ptr = base64Cert->Des();
  1464 			User::LeaveIfError( base64.Decode( certPtr, base64Ptr));
  1464 			User::LeaveIfError( base64.Decode( certPtr, base64Ptr));
  1465 					
  1465