--- a/cryptoservices/certificateandkeymgmt/tpkixcert_tef/src/apiteststeps.cpp Tue Jul 21 01:04:32 2009 +0100
+++ b/cryptoservices/certificateandkeymgmt/tpkixcert_tef/src/apiteststeps.cpp Thu Sep 10 14:01:51 2009 +0300
@@ -1,375 +1,375 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-
-#include "apiteststeps.h"
-#include "cleanuputils.h"
-
-
-CPkixCertAddSupportedOidsStep::CPkixCertAddSupportedOidsStep()
- {
- SetTestStepName(KAddSupportedOidsTestStep);
- }
-
-//1. make a copy(A) of the supported oids at the start
-//2. add in the oids from the config file(B), make a copy of these and add to A
-//3. get the supported oids now(C)
-//4. iterate over C, for each oid find copies in A and remove them. if it is not found we error
-//5. if A is non empty we error
-void CPkixCertAddSupportedOidsStep::PerformTestL()
- {
- CPkixCertStepBase::PerformTestL();
-
- //1. make a copy(A) of the supported oids at the start
-
- const RPointerArray<TDesC>& suppOids = iCertChain->SupportedCriticalExtensions();
- //CleanupClosePushL(suppOids); //don't need to do this as a ref and done in stepbase destructor
- RPointerArray<HBufC> startSuppOids;
- CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(startSuppOids);
-
- HBufC* des;
- TInt i;
- for (i=0; i < suppOids.Count(); ++i)
- {
- des = (suppOids[i])->AllocLC();
- startSuppOids.AppendL(des);
- CleanupStack::Pop(des);
- }
-
-
-
- //2. add in the oids from the config file(B)
- iCertChain->AddSupportedCriticalExtensionsL(iProcessedOids);
-
- //make a copy of these and add to A
- for (i=0; i < iProcessedOids.Count(); ++i)
- {
- des = (iProcessedOids[i])->AllocLC();
- startSuppOids.AppendL(des);
- CleanupStack::Pop(des);
- }
-
- //3. get the supported oids now(C)
- const RPointerArray<TDesC>& suppOids2 = iCertChain->SupportedCriticalExtensions();
-
-
- //4. iterate over C, for each oid find copies in A and remove them. if it is not found we error
- TBool found;
- for (i=0; i < suppOids2.Count(); ++i)
- {
- found = EFalse;
- for (TInt j=0; j < startSuppOids.Count(); ++j)
- {
- if ((*startSuppOids[j]) == (*suppOids2[i]))
- {
- found = ETrue;
- delete (startSuppOids[j]);
- startSuppOids.Remove(j);
- --j;
- }
- } //startSuppOids loop
- if (!found)
- {
- ERR_PRINTF2(_L("Extra ERROR: OID in result: %S"), suppOids2[i]);
- User::Leave(KErrGeneral);
- }
- } //suppOids2 loop
-
-
- //5. if A is non empty we error
- if (startSuppOids.Count() != 0)
- {
- for (TInt j=0; j < startSuppOids.Count(); ++j)
- {
- ERR_PRINTF2(_L("ERROR: OID missing from result: %S"), startSuppOids[j]);
- }
- User::Leave(KErrGeneral);
- }
-
- CleanupStack::PopAndDestroy(2, iCertChain);
- }
-
-
-///////////////////////////////////////////////////////////////////
-
-
-
-CPkixCertRemoveSupportedOidsStep::CPkixCertRemoveSupportedOidsStep()
- {
- SetTestStepName(KRemoveSupportedOidsTestStep);
- }
-
-
-//1. make a copy(A) of the supported oids at the start
-//2. remove the oids read from the config file(B)
-//3. make a copy(C) of the supported oids now
-//4. add B to C
-//5. iterate over A, for each oid find and remove first occurence only in C. if not found we error
-//6. iterate over B removing each from C
-//7. if C is non empty we error
-void CPkixCertRemoveSupportedOidsStep::PerformTestL()
- {
- CPkixCertStepBase::PerformTestL();
-
- //1. make a copy(A) of the supported oids at the start
-
-
-
- const RPointerArray<TDesC>& suppOids = iCertChain->SupportedCriticalExtensions();
- //CleanupClosePushL(suppOids); //don't need to do this as a ref and done in stepbase destructor
- RPointerArray<HBufC> startSuppOids;
- CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(startSuppOids);
-
- HBufC* des;
- TInt i;
- for (i=0; i < suppOids.Count(); ++i)
- {
- des = (suppOids[i])->AllocLC();
- startSuppOids.AppendL(des);
- CleanupStack::Pop(des);
- }
-
-
- //2. remove the oids read from the config file(B)
- iCertChain->RemoveSupportedCriticalExtensions(iProcessedOids);
-
- //3. make a copy(C) of the supported oids now
- const RPointerArray<TDesC>& suppOids2 = iCertChain->SupportedCriticalExtensions();
-
- RPointerArray<HBufC> endSuppOids;
- CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(endSuppOids);
-
- for (i=0; i < suppOids2.Count(); ++i)
- {
- des = (suppOids2[i])->AllocLC();
- endSuppOids.AppendL(des);
- CleanupStack::Pop(des);
- }
-
-
- ////////////
- //4. add B to C
- for (i=0; i < iProcessedOids.Count(); ++i)
- {
- des = (iProcessedOids[i])->AllocLC();
- endSuppOids.AppendL(des);
- CleanupStack::Pop(des);
- }
-
-
- ///////////
- //5. iterate over A, for each oid find and remove first occurence only in C. if not found we error
- TBool found;
- for (i=0; i < startSuppOids.Count(); ++i)
- {
- found = EFalse;
- for (TInt j=0; j < endSuppOids.Count(); ++j)
- {
- if ((*endSuppOids[j]) == (*startSuppOids[i]))
- {
- found = ETrue;
- delete (endSuppOids[j]);
- endSuppOids.Remove(j);
- break;
- }
- }
- if (!found)
- {
- ERR_PRINTF2(_L("ERROR: Extra OID removed from result: %S"), startSuppOids[i]);
- User::Leave(KErrGeneral);
- }
- }
-
- //6. iterate over B removing each from C
- for (i=0; i < iProcessedOids.Count(); ++i)
- {
- for (TInt j=0; j < endSuppOids.Count(); ++j)
- {
- if ((*endSuppOids[j]) == (*iProcessedOids[i]))
- {
- delete (endSuppOids[j]);
- endSuppOids.Remove(j);
- break;
- }
- }
- }
-
- //7. if C is non empty we error
- if (endSuppOids.Count() != 0)
- {
- for (TInt j=0; j < endSuppOids.Count(); ++j)
- {
- ERR_PRINTF2(_L("ERROR: Extra/duplicate OID found in result: %S"), endSuppOids[j]);
- }
- User::Leave(KErrGeneral);
- }
-
- CleanupStack::PopAndDestroy(3, iCertChain);
- }
-
-/////////////////////////////////////////////////////////////////////
-
-CPkixCertSetSupportedOidsStep::CPkixCertSetSupportedOidsStep()
- {
- SetTestStepName(KSetSupportedOidsTestStep);
- }
-
-
-//1. set the supported oids to the ones from the config(A)
-//2. make a copy(B) of supported oids
-//3. iterate over B, remove every match found in copy(C) taken from A. if not found in C we error
-//4. if C not empty we error
-void CPkixCertSetSupportedOidsStep::PerformTestL()
- {
- CPkixCertStepBase::PerformTestL();
-
- //1. set the supported oids to the ones from the config(A)
- iCertChain->SetSupportedCriticalExtensionsL(iProcessedOids);
-
- //2. make a copy(B) of supported oids
- const RPointerArray<TDesC>& suppOids = iCertChain->SupportedCriticalExtensions();
-
- RPointerArray<HBufC> endSuppOids;
- CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(endSuppOids);
-
- HBufC* des;
- TInt i;
- for (i=0; i < suppOids.Count(); ++i)
- {
- des = (suppOids[i])->AllocLC();
- endSuppOids.AppendL(des);
- CleanupStack::Pop(des);
- }
-
- //3. iterate over B, remove every match found in copy(C) taken from A. if not found in C we error
-
- RPointerArray<TDesC> oidsCopy;
- CleanupClosePushL(oidsCopy);
-
- for (i=0; i < iOids.Count(); ++i)
- {
- oidsCopy.AppendL(&(iOids[i]));
- }
-
- TBool found;
- for (i=0; i < endSuppOids.Count(); ++i)
- {
- found = EFalse;
- for (TInt j=(oidsCopy.Count() - 1); j >= 0; --j)
- {
- if ((*oidsCopy[j]) == (*endSuppOids[i]))
- {
- found = ETrue;
- oidsCopy.Remove(j);
- }
- }
- if (!found)
- {
- ERR_PRINTF2(_L("ERROR: Extra OID found in result: %S"), endSuppOids[i]);
- User::Leave(KErrGeneral);
- }
- }
-
- //4. if C not empty we error
- if (oidsCopy.Count() != 0)
- {
- for (TInt j=0; j < oidsCopy.Count(); ++j)
- {
- ERR_PRINTF2(_L("ERROR: OID missing from result: %S"), oidsCopy[j]);
- }
- User::Leave(KErrGeneral);
- }
-
- CleanupStack::PopAndDestroy(3, iCertChain);
- }
-
-
-////////////////////////////////////////////////
-
-CPkixCertResetSupportedOidsStep::CPkixCertResetSupportedOidsStep()
- {
- SetTestStepName(KResetSupportedOidsTestStep);
- }
-
-//1. make a copy(A) of supported oids
-//2. set supported oids to list from config
-//3. reset supported oids
-//4. get supported oids(B)
-//5. iterate over B, find and remove first match in A. if not found we error
-//6. if A is not empty we error
-void CPkixCertResetSupportedOidsStep::PerformTestL()
- {
- CPkixCertStepBase::PerformTestL();
-
- //1. make a copy(A) of supported oids
- const RPointerArray<TDesC>& suppOids = iCertChain->SupportedCriticalExtensions();
- //CleanupClosePushL(suppOids); //don't need to do this as a ref and done in stepbase destructor
- RPointerArray<HBufC> startSuppOids;
- CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(startSuppOids);
-
- HBufC* des;
- TInt i;
- for (i=0; i < suppOids.Count(); ++i)
- {
- des = (suppOids[i])->AllocLC();
- startSuppOids.AppendL(des);
- CleanupStack::Pop(des);
- }
-
- //2. set supported oids to list from config
- iCertChain->SetSupportedCriticalExtensionsL(iProcessedOids);
- //3. reset supported oids
- iCertChain->ResetSupportedCriticalExtsToDefaultL();
- //4. get supported oids(B)
- const RPointerArray<TDesC>& suppOids2 = iCertChain->SupportedCriticalExtensions();
-
- //5. iterate over B, find and remove first match in A. if not found we error
- TBool found;
- for (i=0; i < suppOids2.Count(); ++i)
- {
- found = EFalse;
- for (TInt j=0; j < startSuppOids.Count(); ++j)
- {
- if ((*suppOids2[i]) == (*startSuppOids[j]))
- {
- found = ETrue;
- delete (startSuppOids[j]);
- startSuppOids.Remove(j);
- break;
- }
- }
- if (!found)
- {
- ERR_PRINTF2(_L("ERROR: Extra OID found in result: %S"), suppOids2[i]);
- User::Leave(KErrGeneral);
- }
- }
-
- //6. if A is not empty we error
- if (startSuppOids.Count() != 0)
- {
- for (TInt j=0; j < startSuppOids.Count(); ++j)
- {
- ERR_PRINTF2(_L("ERROR: OID missing from result: %S"), startSuppOids[j]);
- }
- User::Leave(KErrGeneral);
- }
-
- CleanupStack::PopAndDestroy(2, iCertChain);
- }
-
-
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+
+#include "apiteststeps.h"
+#include "cleanuputils.h"
+
+
+CPkixCertAddSupportedOidsStep::CPkixCertAddSupportedOidsStep()
+ {
+ SetTestStepName(KAddSupportedOidsTestStep);
+ }
+
+//1. make a copy(A) of the supported oids at the start
+//2. add in the oids from the config file(B), make a copy of these and add to A
+//3. get the supported oids now(C)
+//4. iterate over C, for each oid find copies in A and remove them. if it is not found we error
+//5. if A is non empty we error
+void CPkixCertAddSupportedOidsStep::PerformTestL()
+ {
+ CPkixCertStepBase::PerformTestL();
+
+ //1. make a copy(A) of the supported oids at the start
+
+ const RPointerArray<TDesC>& suppOids = iCertChain->SupportedCriticalExtensions();
+ //CleanupClosePushL(suppOids); //don't need to do this as a ref and done in stepbase destructor
+ RPointerArray<HBufC> startSuppOids;
+ CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(startSuppOids);
+
+ HBufC* des;
+ TInt i;
+ for (i=0; i < suppOids.Count(); ++i)
+ {
+ des = (suppOids[i])->AllocLC();
+ startSuppOids.AppendL(des);
+ CleanupStack::Pop(des);
+ }
+
+
+
+ //2. add in the oids from the config file(B)
+ iCertChain->AddSupportedCriticalExtensionsL(iProcessedOids);
+
+ //make a copy of these and add to A
+ for (i=0; i < iProcessedOids.Count(); ++i)
+ {
+ des = (iProcessedOids[i])->AllocLC();
+ startSuppOids.AppendL(des);
+ CleanupStack::Pop(des);
+ }
+
+ //3. get the supported oids now(C)
+ const RPointerArray<TDesC>& suppOids2 = iCertChain->SupportedCriticalExtensions();
+
+
+ //4. iterate over C, for each oid find copies in A and remove them. if it is not found we error
+ TBool found;
+ for (i=0; i < suppOids2.Count(); ++i)
+ {
+ found = EFalse;
+ for (TInt j=0; j < startSuppOids.Count(); ++j)
+ {
+ if ((*startSuppOids[j]) == (*suppOids2[i]))
+ {
+ found = ETrue;
+ delete (startSuppOids[j]);
+ startSuppOids.Remove(j);
+ --j;
+ }
+ } //startSuppOids loop
+ if (!found)
+ {
+ ERR_PRINTF2(_L("Extra ERROR: OID in result: %S"), suppOids2[i]);
+ User::Leave(KErrGeneral);
+ }
+ } //suppOids2 loop
+
+
+ //5. if A is non empty we error
+ if (startSuppOids.Count() != 0)
+ {
+ for (TInt j=0; j < startSuppOids.Count(); ++j)
+ {
+ ERR_PRINTF2(_L("ERROR: OID missing from result: %S"), startSuppOids[j]);
+ }
+ User::Leave(KErrGeneral);
+ }
+
+ CleanupStack::PopAndDestroy(2, iCertChain);
+ }
+
+
+///////////////////////////////////////////////////////////////////
+
+
+
+CPkixCertRemoveSupportedOidsStep::CPkixCertRemoveSupportedOidsStep()
+ {
+ SetTestStepName(KRemoveSupportedOidsTestStep);
+ }
+
+
+//1. make a copy(A) of the supported oids at the start
+//2. remove the oids read from the config file(B)
+//3. make a copy(C) of the supported oids now
+//4. add B to C
+//5. iterate over A, for each oid find and remove first occurence only in C. if not found we error
+//6. iterate over B removing each from C
+//7. if C is non empty we error
+void CPkixCertRemoveSupportedOidsStep::PerformTestL()
+ {
+ CPkixCertStepBase::PerformTestL();
+
+ //1. make a copy(A) of the supported oids at the start
+
+
+
+ const RPointerArray<TDesC>& suppOids = iCertChain->SupportedCriticalExtensions();
+ //CleanupClosePushL(suppOids); //don't need to do this as a ref and done in stepbase destructor
+ RPointerArray<HBufC> startSuppOids;
+ CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(startSuppOids);
+
+ HBufC* des;
+ TInt i;
+ for (i=0; i < suppOids.Count(); ++i)
+ {
+ des = (suppOids[i])->AllocLC();
+ startSuppOids.AppendL(des);
+ CleanupStack::Pop(des);
+ }
+
+
+ //2. remove the oids read from the config file(B)
+ iCertChain->RemoveSupportedCriticalExtensions(iProcessedOids);
+
+ //3. make a copy(C) of the supported oids now
+ const RPointerArray<TDesC>& suppOids2 = iCertChain->SupportedCriticalExtensions();
+
+ RPointerArray<HBufC> endSuppOids;
+ CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(endSuppOids);
+
+ for (i=0; i < suppOids2.Count(); ++i)
+ {
+ des = (suppOids2[i])->AllocLC();
+ endSuppOids.AppendL(des);
+ CleanupStack::Pop(des);
+ }
+
+
+ ////////////
+ //4. add B to C
+ for (i=0; i < iProcessedOids.Count(); ++i)
+ {
+ des = (iProcessedOids[i])->AllocLC();
+ endSuppOids.AppendL(des);
+ CleanupStack::Pop(des);
+ }
+
+
+ ///////////
+ //5. iterate over A, for each oid find and remove first occurence only in C. if not found we error
+ TBool found;
+ for (i=0; i < startSuppOids.Count(); ++i)
+ {
+ found = EFalse;
+ for (TInt j=0; j < endSuppOids.Count(); ++j)
+ {
+ if ((*endSuppOids[j]) == (*startSuppOids[i]))
+ {
+ found = ETrue;
+ delete (endSuppOids[j]);
+ endSuppOids.Remove(j);
+ break;
+ }
+ }
+ if (!found)
+ {
+ ERR_PRINTF2(_L("ERROR: Extra OID removed from result: %S"), startSuppOids[i]);
+ User::Leave(KErrGeneral);
+ }
+ }
+
+ //6. iterate over B removing each from C
+ for (i=0; i < iProcessedOids.Count(); ++i)
+ {
+ for (TInt j=0; j < endSuppOids.Count(); ++j)
+ {
+ if ((*endSuppOids[j]) == (*iProcessedOids[i]))
+ {
+ delete (endSuppOids[j]);
+ endSuppOids.Remove(j);
+ break;
+ }
+ }
+ }
+
+ //7. if C is non empty we error
+ if (endSuppOids.Count() != 0)
+ {
+ for (TInt j=0; j < endSuppOids.Count(); ++j)
+ {
+ ERR_PRINTF2(_L("ERROR: Extra/duplicate OID found in result: %S"), endSuppOids[j]);
+ }
+ User::Leave(KErrGeneral);
+ }
+
+ CleanupStack::PopAndDestroy(3, iCertChain);
+ }
+
+/////////////////////////////////////////////////////////////////////
+
+CPkixCertSetSupportedOidsStep::CPkixCertSetSupportedOidsStep()
+ {
+ SetTestStepName(KSetSupportedOidsTestStep);
+ }
+
+
+//1. set the supported oids to the ones from the config(A)
+//2. make a copy(B) of supported oids
+//3. iterate over B, remove every match found in copy(C) taken from A. if not found in C we error
+//4. if C not empty we error
+void CPkixCertSetSupportedOidsStep::PerformTestL()
+ {
+ CPkixCertStepBase::PerformTestL();
+
+ //1. set the supported oids to the ones from the config(A)
+ iCertChain->SetSupportedCriticalExtensionsL(iProcessedOids);
+
+ //2. make a copy(B) of supported oids
+ const RPointerArray<TDesC>& suppOids = iCertChain->SupportedCriticalExtensions();
+
+ RPointerArray<HBufC> endSuppOids;
+ CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(endSuppOids);
+
+ HBufC* des;
+ TInt i;
+ for (i=0; i < suppOids.Count(); ++i)
+ {
+ des = (suppOids[i])->AllocLC();
+ endSuppOids.AppendL(des);
+ CleanupStack::Pop(des);
+ }
+
+ //3. iterate over B, remove every match found in copy(C) taken from A. if not found in C we error
+
+ RPointerArray<TDesC> oidsCopy;
+ CleanupClosePushL(oidsCopy);
+
+ for (i=0; i < iOids.Count(); ++i)
+ {
+ oidsCopy.AppendL(&(iOids[i]));
+ }
+
+ TBool found;
+ for (i=0; i < endSuppOids.Count(); ++i)
+ {
+ found = EFalse;
+ for (TInt j=(oidsCopy.Count() - 1); j >= 0; --j)
+ {
+ if ((*oidsCopy[j]) == (*endSuppOids[i]))
+ {
+ found = ETrue;
+ oidsCopy.Remove(j);
+ }
+ }
+ if (!found)
+ {
+ ERR_PRINTF2(_L("ERROR: Extra OID found in result: %S"), endSuppOids[i]);
+ User::Leave(KErrGeneral);
+ }
+ }
+
+ //4. if C not empty we error
+ if (oidsCopy.Count() != 0)
+ {
+ for (TInt j=0; j < oidsCopy.Count(); ++j)
+ {
+ ERR_PRINTF2(_L("ERROR: OID missing from result: %S"), oidsCopy[j]);
+ }
+ User::Leave(KErrGeneral);
+ }
+
+ CleanupStack::PopAndDestroy(3, iCertChain);
+ }
+
+
+////////////////////////////////////////////////
+
+CPkixCertResetSupportedOidsStep::CPkixCertResetSupportedOidsStep()
+ {
+ SetTestStepName(KResetSupportedOidsTestStep);
+ }
+
+//1. make a copy(A) of supported oids
+//2. set supported oids to list from config
+//3. reset supported oids
+//4. get supported oids(B)
+//5. iterate over B, find and remove first match in A. if not found we error
+//6. if A is not empty we error
+void CPkixCertResetSupportedOidsStep::PerformTestL()
+ {
+ CPkixCertStepBase::PerformTestL();
+
+ //1. make a copy(A) of supported oids
+ const RPointerArray<TDesC>& suppOids = iCertChain->SupportedCriticalExtensions();
+ //CleanupClosePushL(suppOids); //don't need to do this as a ref and done in stepbase destructor
+ RPointerArray<HBufC> startSuppOids;
+ CleanupResetAndDestroy<RPointerArray<HBufC> >::PushL(startSuppOids);
+
+ HBufC* des;
+ TInt i;
+ for (i=0; i < suppOids.Count(); ++i)
+ {
+ des = (suppOids[i])->AllocLC();
+ startSuppOids.AppendL(des);
+ CleanupStack::Pop(des);
+ }
+
+ //2. set supported oids to list from config
+ iCertChain->SetSupportedCriticalExtensionsL(iProcessedOids);
+ //3. reset supported oids
+ iCertChain->ResetSupportedCriticalExtsToDefaultL();
+ //4. get supported oids(B)
+ const RPointerArray<TDesC>& suppOids2 = iCertChain->SupportedCriticalExtensions();
+
+ //5. iterate over B, find and remove first match in A. if not found we error
+ TBool found;
+ for (i=0; i < suppOids2.Count(); ++i)
+ {
+ found = EFalse;
+ for (TInt j=0; j < startSuppOids.Count(); ++j)
+ {
+ if ((*suppOids2[i]) == (*startSuppOids[j]))
+ {
+ found = ETrue;
+ delete (startSuppOids[j]);
+ startSuppOids.Remove(j);
+ break;
+ }
+ }
+ if (!found)
+ {
+ ERR_PRINTF2(_L("ERROR: Extra OID found in result: %S"), suppOids2[i]);
+ User::Leave(KErrGeneral);
+ }
+ }
+
+ //6. if A is not empty we error
+ if (startSuppOids.Count() != 0)
+ {
+ for (TInt j=0; j < startSuppOids.Count(); ++j)
+ {
+ ERR_PRINTF2(_L("ERROR: OID missing from result: %S"), startSuppOids[j]);
+ }
+ User::Leave(KErrGeneral);
+ }
+
+ CleanupStack::PopAndDestroy(2, iCertChain);
+ }
+
+