vpnengine/pkiservice/src/pkisession.cpp
branchRCL_3
changeset 44 735de8341ce4
parent 41 e06095241a65
equal deleted inserted replaced
41:e06095241a65 44:735de8341ce4
   144     		aMessage.Complete(matchCount); 
   144     		aMessage.Complete(matchCount); 
   145     		}
   145     		}
   146     		break;
   146     		break;
   147        case PkiService::EGetCertDetails:
   147        case PkiService::EGetCertDetails:
   148             {
   148             {
   149             TPckgBuf<TSecurityObjectDescriptor> secDescPtr;
   149             TPckgBuf<TSecurityObjectDescriptor>* secDescPtr =
   150             aMessage.ReadL(1, secDescPtr);
   150                 new (ELeave) TPckgBuf<TSecurityObjectDescriptor>();
       
   151             CleanupStack::PushL(secDescPtr);
       
   152             aMessage.ReadL(1, *secDescPtr);
   151             TCertificateListEntry* resultCertInfo = new (ELeave) TCertificateListEntry;
   153             TCertificateListEntry* resultCertInfo = new (ELeave) TCertificateListEntry;
   152             CleanupStack::PushL(resultCertInfo);            
   154             CleanupStack::PushL(resultCertInfo);            
   153             Status = iMapper.GetCertDetailsL(secDescPtr(), 
   155             Status = iMapper.GetCertDetailsL((*secDescPtr)(), 
   154                                              iWrapper->CertStoreType(), 
   156                                              iWrapper->CertStoreType(), 
   155                                              iWrapper->Informational(),
   157                                              iWrapper->Informational(),
   156                                              *resultCertInfo);
   158                                              *resultCertInfo);
   157 		    if (Status == KErrNone)
   159 		    if (Status == KErrNone)
   158 		        {
   160 		        {
   159 		        TPckg<TCertificateListEntry> certDetailsPtr(*resultCertInfo);
   161 		        TPckg<TCertificateListEntry> certDetailsPtr(*resultCertInfo);
   160 	            aMessage.WriteL(0, certDetailsPtr);
   162 	            aMessage.WriteL(0, certDetailsPtr);
   161 		        }
   163 		        }
   162 		    aMessage.Complete(Status);
   164 		    aMessage.Complete(Status);
   163 		    CleanupStack::PopAndDestroy(resultCertInfo);            
   165 		    CleanupStack::PopAndDestroy(resultCertInfo);
       
   166 		    CleanupStack::PopAndDestroy(secDescPtr);       
   164             }
   167             }
   165 		    break;
   168 		    break;
   166         case PkiService::EGetCertList:
   169         case PkiService::EGetCertList:
   167 		    iMapper.GetCertListL(aMessage, iWrapper->Informational());
   170 		    iMapper.GetCertListL(aMessage, iWrapper->Informational());
   168 		    aMessage.Complete(KErrNone);
   171 		    aMessage.Complete(KErrNone);