vpnengine/pkiserviceapi/src/pkiserviceapi.cpp
branchRCL_3
changeset 44 735de8341ce4
parent 41 e06095241a65
equal deleted inserted replaced
41:e06095241a65 44:735de8341ce4
   413 
   413 
   414 	TPtr8 ptrList = list->Ptr(0);
   414 	TPtr8 ptrList = list->Ptr(0);
   415 
   415 
   416 	User::LeaveIfError(SendReceive (PkiService::EGetCertList, TIpcArgs(&ptrList)));
   416 	User::LeaveIfError(SendReceive (PkiService::EGetCertList, TIpcArgs(&ptrList)));
   417 
   417 
   418 	TCertificateListEntry certInfo;
   418 	TCertificateListEntry* certInfo = new (ELeave) TCertificateListEntry();
       
   419 	CleanupStack::PushL( certInfo );
       
   420 	
   419 	for (TInt i = 0; i < certCount; i++)
   421 	for (TInt i = 0; i < certCount; i++)
   420 		{
   422 		{
   421 		list->Read(i * sizeof(TCertificateListEntry), (TAny*)&certInfo, sizeof(TCertificateListEntry));
   423 		list->Read(i * sizeof(TCertificateListEntry), (TAny*)certInfo, sizeof(TCertificateListEntry));
   422 		certList->AppendL(certInfo);
   424 		certList->AppendL(*certInfo);
   423 		}
   425 		}
   424 
   426 
   425 	CleanupStack::PopAndDestroy(1);     // list
   427 	CleanupStack::PopAndDestroy(2);     // list, certInfo
   426 	CleanupStack::Pop();                // certList
   428 	CleanupStack::Pop();                // certList
   427 
   429 
   428 	aCertList = certList;
   430 	aCertList = certList;
   429 }
   431 }
   430 
   432 
   479 
   481 
   480 	TPtr8 ptrList2 = list->Ptr(0);
   482 	TPtr8 ptrList2 = list->Ptr(0);
   481 
   483 
   482 	User::LeaveIfError(SendReceive (PkiService::EGetApplicableCertList, TIpcArgs(&ptrList2)));
   484 	User::LeaveIfError(SendReceive (PkiService::EGetApplicableCertList, TIpcArgs(&ptrList2)));
   483 
   485 
   484 	TCertificateListEntry certInfo;
   486 	TCertificateListEntry* certInfo = new (ELeave) TCertificateListEntry();
       
   487 	CleanupStack::PushL(certInfo);
       
   488 	
   485 	for (i = 0; i < certCount; i++)
   489 	for (i = 0; i < certCount; i++)
   486 		{
   490 		{
   487 		list->Read(i * sizeof(TCertificateListEntry), (TAny*)&certInfo, sizeof(TCertificateListEntry));
   491 		list->Read(i * sizeof(TCertificateListEntry), (TAny*)certInfo, sizeof(TCertificateListEntry));
   488 		certList->AppendL(certInfo);
   492 		certList->AppendL(*certInfo);
   489 		}
   493 		}
   490 
   494 
   491 	CleanupStack::PopAndDestroy(1);     // list
   495 	CleanupStack::PopAndDestroy(2);     // list, certInfo
   492 	CleanupStack::Pop();                // certList
   496 	CleanupStack::Pop();                // certList
   493 
   497 
   494 	aCertList = certList;
   498 	aCertList = certList;
   495 }
   499 }
   496 
   500 
   972                                                 const TDesC8& aSerialNumber,
   976                                                 const TDesC8& aSerialNumber,
   973                                                 const RArray<TUid>& aApplications) const
   977                                                 const RArray<TUid>& aApplications) const
   974 {
   978 {
   975     TSecurityObjectDescriptor *certDesc = new (ELeave) TSecurityObjectDescriptor;
   979     TSecurityObjectDescriptor *certDesc = new (ELeave) TSecurityObjectDescriptor;
   976     CleanupStack::PushL(certDesc);
   980     CleanupStack::PushL(certDesc);
       
   981     
   977     certDesc->SetTrustedAuthority(aTrustedAuthority);
   982     certDesc->SetTrustedAuthority(aTrustedAuthority);
   978     certDesc->SetSerialNumber(aSerialNumber);
   983     certDesc->SetSerialNumber(aSerialNumber);
       
   984     
       
   985     if( EFalse == certDesc->iTrustedAuthorityUsed ||
       
   986         EFalse == certDesc->iSerialNumberUsed )
       
   987         {
       
   988         User::Leave( KErrArgument );
       
   989         }
       
   990 
   979     TPckg<TSecurityObjectDescriptor> pckgTSecurityObjectDescriptor(*certDesc);
   991     TPckg<TSecurityObjectDescriptor> pckgTSecurityObjectDescriptor(*certDesc);
   980 
   992 
   981 
   993 
   982     TPckgC<TInt> applCount(aApplications.Count());
   994     TPckgC<TInt> applCount(aApplications.Count());
   983     // Allocate a buffer for the application uid list
   995     // Allocate a buffer for the application uid list