cryptoservices/certificateandkeymgmt/tcertcommon/tcertutils.h
changeset 8 35751d3474b7
parent 0 2c201484c85f
--- a/cryptoservices/certificateandkeymgmt/tcertcommon/tcertutils.h	Tue Jul 21 01:04:32 2009 +0100
+++ b/cryptoservices/certificateandkeymgmt/tcertcommon/tcertutils.h	Thu Sep 10 14:01:51 2009 +0300
@@ -1,245 +1,243 @@
-/*
-* Copyright (c) 2005-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: 
-* tcertuils.h
-*
-*/
-
-
-
-
-/**
- @file 
- @internalTechnology
-*/
-
-
-#ifndef __TCERTUTILS_H__
-#define __TCERTUTILS_H__
-
-#include <e32base.h>
-#include <x509cert.h>
-#include <unifiedcertstore.h>
-#include <pkixcertchain.h>
-#include "t_output.h"
-
-/**
-CCertUtils provides various functions often used in tests.
-This class has changed because the functions are asynchronous now. 
-The function are no longer static as we need an instance to serve as
-an active object.
-*/
-class CCertUtils : public CActive
-	{
-public:
-	/**
-	 * This enumeration enumerates all the states used for the
-	 * RunL function.
-	 */
-	enum TState
-		{
-		EAddCACerts,
-
-		EAddCert,
-		EAddCACertGetCAEntry,
-		EAddCACertSetApplications,
-		EAddCACertSetTrust,
-		EAddCACertFinished,
-
-		ERemoveCertsGetCACerts,
-		ERemoveCertsCACertsRetrieved,
-		ERemoveCertsRemoveCACerts,
-		ERemoveCertsGetUserCerts,
-		ERemoveCertsUserCertsRetrieved,
-		ERemoveCertsRemoveUserCerts,
-		ERemoveCertsFinished
-		};	
-	
-public:
-	IMPORT_C static CCertUtils* NewL(RFs& aFs);
-	IMPORT_C static CCertUtils* NewLC(RFs& aFs);
-	/**
-	The destructor destroys all the members of CCertUtils but only destroys
-	iStoreManager if the CCertStoreManager instance was created by this CCertUtils
-	instance. It doesn't destroy it if it was passed as an argument in the 
-	constructor.
-	*/
-	IMPORT_C virtual ~CCertUtils();
-
-
-	/**
-	Certificate handling functions
-	*/
-	IMPORT_C void AddCertL(const TDesC& aLabel, 
-							TCertificateFormat aFormat,
-							TCertificateOwnerType aCertificateOwnerType, 
-							TInt aTrustedUsage, 
-							const TDesC& aCertificatePath, 
-							const TDesC& aCertificateFileName, 
-							TRequestStatus& aStatus);
-							
-	IMPORT_C void AddCert(const TDesC& aLabel, 
-							TCertificateFormat aFormat,
-							TCertificateOwnerType aCertificateOwnerType, 
-							TInt aTrustedUsage, 
-							const TDesC& aCertificatePath, 
-							const TDesC& aCertificateFileName, 
-							CUnifiedCertStore& aUnifiedCertStore, 
-							TRequestStatus& aStatus);
-						
-	IMPORT_C void AddCACertsL(const CDesCArray& aRoots, 
-							const CDesCArray& aLabels,
-							TCertificateFormat aFormat, 
-							TInt aTrustedUsage, 
-							const TDesC& aPath, 
-							TRequestStatus& aStatus);
-							
-	IMPORT_C void AddCACertsL(const CDesCArray& aRoots, 
-							const CDesCArray& aLabels,
-							TCertificateFormat aFormat, 
-							TInt aTrustedUsage, 
-							const TDesC& aPath, 
-							CUnifiedCertStore& aUnifiedCertStore, 
-							TRequestStatus& aStatus);
-							
-	IMPORT_C void RemoveCertsL(TRequestStatus& aStatus);
-	IMPORT_C void RemoveCertsL(CUnifiedCertStore& aUnifiedCertStore, 
-							TRequestStatus& aStatus);
-
-	IMPORT_C static CCertificate* CertFromFileLC(const TDesC& aFilename, 
-							const TDesC& aPathname, 
-							RFs& aFs, 
-							TCertificateFormat aFormat);
-							
-	IMPORT_C static CCertificate* CertFromFileL(const TDesC& aFilename,
-							const TDesC& aPathname, 
-							RFs& aFs, 
-							TCertificateFormat aFormat);
-							
-	IMPORT_C static void WriteError(TValidationError aError, Output& aOut);
-	IMPORT_C static TPtrC MapError(TValidationError aError);
-	IMPORT_C static TValidationError MapError(const TDesC& aError);
-	IMPORT_C static TPtrC ParseElement(const TDesC& aBuf, const TDesC& aStart, const TDesC& aEnd, TInt& aPos, TInt& aError);
-
-	IMPORT_C HBufC* DiagnosticLC() const;
-	IMPORT_C void AddApplicationL(const TDesC& aName, TUid aUid) const;
-	IMPORT_C void RemoveApplicationL(TUid aUid) const;
-
-private:
-	/**
-	This constructor constructs a CCertUtils instance without initializing
-	iStoreManager. A store manager will be created if one is needed and
-	will be destroyed by the destructor.
-	@param aFs A file server session. The file server session must have opened.
-	*/
-	CCertUtils(RFs& aFs);
-	void ConstructL();
-
-	//Virtual from CActive
-	void RunL();
-	void DoCancel();
-    TInt RunError(TInt aError);
-
-
-private:
-	// The following functions handle the different RunL states
-	void HandleEAddCACertsL();
-
-	void HandleEAddCACertL();
-	void HandleEAddCACertGetCAEntry();
-	void HandleEAddCACertSetApplicationsL();
-	void HandleEAddCACertSetTrust();
-	void HandleEAddCACertFinishedL();
-	
-	void HandleERemoveCertsGetCACerts();
-	void HandleERemoveCertsCACertsRetrieved();
-	void HandleERemoveCertsRemoveCACerts();
-	void HandleERemoveCertsGetUserCerts();
-	void HandleERemoveCertsUserCertsRetrieved();
-	void HandleERemoveCertsRemoveUserCerts();
-	void HandleERemoveCertsFinished();
-
-
-private:
-	/**
-	File Server Sessioin
-	*/
-	RFs& iFs;
-
-	/**
-	The state used to know what RunL should do
-	*/
-	TState iState;
-	
-	/**
-	The store managers will be used for certificate store operations,
-	*/
-	CUnifiedCertStore* iUnifiedCertStore;
-	CUnifiedCertStore* iCreatedUnifiedCertStore;
-	
-	/**
-	These members are used to store the arguments of the functions
-	because most of the things are handled in a RunL.
-	*/
-	const CDesCArray* iRoots;					// Used by AddCertsL
-	const CDesCArray* iLabels;					// Used by AddCertsL
-	TCertificateFormat iFormat;
-	TInt iTrustedUsage;							// Used by AddCertsL, AddCert
-	RArray<TUid> iTrusters;						// Used by AddCertsL, AddCert
-	const TDesC* iPath;							// Used by AddCertsL, AddCert
-	TRequestStatus* iOriginalRequestStatus;		// Used by AddCertsL, AddCert
-	TInt iIndex;								// Used by AddCertsL to know 
-												// which certificate to add next
-												// Used by RemoveCerts
-	CCertUtils* iSecondCertUtils;				// Used by AddCertsL to add each individual
-												// certificate
-	const TDesC* iLabel;						// Used by AddCert
-	TCertificateOwnerType iCertificateOwnerType;
-	const TDesC* iCertificateFileName;			// Used by AddCert 
-	CCertificate* iCertificate;					// Used by AddCACert
-	MCTWritableCertStore *iStore;				// Used by AddCACert
-	TPtrC8 iEncoding;							// Used by AddCACert
-
-	HBufC* iCertData;
-	HBufC* iLabelData;
-
-	/**
-	This is a filter used by the GetCACerts function. We use the filter constructed
-	by the constructor with no argument, the filter doesn't filter anything.
-	*/
-	CCertAttributeFilter* iCAFilter;				// Used by RemoveCerts
-	RMPointerArray<CCTCertInfo> iCACertStoreEntries;	// Used by RemoveCerts
-	
-	/**
-	This is a filter used by the GetUserCerts function. We use the filter constructed
-	by the constructot with no argument, the filter doesn't filter anything.
-	*/
-	CCertAttributeFilter* iUserFilter;			// Used by RemoveCerts
-	RMPointerArray<CCTCertInfo> iUserCertStoreEntries; // Used by RemoveCerts
-
-public:
-	/**
-	A diagnostic variable for when an error occurs. It stores the state at which
-	the error occurred.
-	*/
-	TState iDiagnosticState;
-	
-	/** 
-	A diagnostic variable for when an error occurs. It is an info message set
-	to whatever is relevant for the error.
-	*/
-	TBuf<400> iDiagnosticMessage;
-	};
-
-#endif
+/*
+* Copyright (c) 2005-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: 
+* tcertuils.h
+*
+*/
+
+
+/**
+ @file 
+ @internalTechnology
+*/
+
+
+#ifndef __TCERTUTILS_H__
+#define __TCERTUTILS_H__
+
+#include <e32base.h>
+#include <x509cert.h>
+#include <unifiedcertstore.h>
+#include <pkixcertchain.h>
+#include "t_output.h"
+
+/**
+CCertUtils provides various functions often used in tests.
+This class has changed because the functions are asynchronous now. 
+The function are no longer static as we need an instance to serve as
+an active object.
+*/
+class CCertUtils : public CActive
+	{
+public:
+	/**
+	 * This enumeration enumerates all the states used for the
+	 * RunL function.
+	 */
+	enum TState
+		{
+		EAddCACerts,
+
+		EAddCert,
+		EAddCACertGetCAEntry,
+		EAddCACertSetApplications,
+		EAddCACertSetTrust,
+		EAddCACertFinished,
+
+		ERemoveCertsGetCACerts,
+		ERemoveCertsCACertsRetrieved,
+		ERemoveCertsRemoveCACerts,
+		ERemoveCertsGetUserCerts,
+		ERemoveCertsUserCertsRetrieved,
+		ERemoveCertsRemoveUserCerts,
+		ERemoveCertsFinished
+		};	
+	
+public:
+	IMPORT_C static CCertUtils* NewL(RFs& aFs);
+	IMPORT_C static CCertUtils* NewLC(RFs& aFs);
+	/**
+	The destructor destroys all the members of CCertUtils but only destroys
+	iStoreManager if the CCertStoreManager instance was created by this CCertUtils
+	instance. It doesn't destroy it if it was passed as an argument in the 
+	constructor.
+	*/
+	IMPORT_C virtual ~CCertUtils();
+
+
+	/**
+	Certificate handling functions
+	*/
+	IMPORT_C void AddCertL(const TDesC& aLabel, 
+							TCertificateFormat aFormat,
+							TCertificateOwnerType aCertificateOwnerType, 
+							TInt aTrustedUsage, 
+							const TDesC& aCertificatePath, 
+							const TDesC& aCertificateFileName, 
+							TRequestStatus& aStatus);
+							
+	IMPORT_C void AddCert(const TDesC& aLabel, 
+							TCertificateFormat aFormat,
+							TCertificateOwnerType aCertificateOwnerType, 
+							TInt aTrustedUsage, 
+							const TDesC& aCertificatePath, 
+							const TDesC& aCertificateFileName, 
+							CUnifiedCertStore& aUnifiedCertStore, 
+							TRequestStatus& aStatus);
+						
+	IMPORT_C void AddCACertsL(const CDesCArray& aRoots, 
+							const CDesCArray& aLabels,
+							TCertificateFormat aFormat, 
+							TInt aTrustedUsage, 
+							const TDesC& aPath, 
+							TRequestStatus& aStatus);
+							
+	IMPORT_C void AddCACertsL(const CDesCArray& aRoots, 
+							const CDesCArray& aLabels,
+							TCertificateFormat aFormat, 
+							TInt aTrustedUsage, 
+							const TDesC& aPath, 
+							CUnifiedCertStore& aUnifiedCertStore, 
+							TRequestStatus& aStatus);
+							
+	IMPORT_C void RemoveCertsL(TRequestStatus& aStatus);
+	IMPORT_C void RemoveCertsL(CUnifiedCertStore& aUnifiedCertStore, 
+							TRequestStatus& aStatus);
+
+	IMPORT_C static CCertificate* CertFromFileLC(const TDesC& aFilename, 
+							const TDesC& aPathname, 
+							RFs& aFs, 
+							TCertificateFormat aFormat);
+							
+	IMPORT_C static CCertificate* CertFromFileL(const TDesC& aFilename,
+							const TDesC& aPathname, 
+							RFs& aFs, 
+							TCertificateFormat aFormat);
+							
+	IMPORT_C static void WriteError(TValidationError aError, Output& aOut);
+	IMPORT_C static TPtrC MapError(TValidationError aError);
+	IMPORT_C static TValidationError MapError(const TDesC& aError);
+	IMPORT_C static TPtrC ParseElement(const TDesC& aBuf, const TDesC& aStart, const TDesC& aEnd, TInt& aPos, TInt& aError);
+
+	IMPORT_C HBufC* DiagnosticLC() const;
+	IMPORT_C void AddApplicationL(const TDesC& aName, TUid aUid) const;
+	IMPORT_C void RemoveApplicationL(TUid aUid) const;
+
+private:
+	/**
+	This constructor constructs a CCertUtils instance without initializing
+	iStoreManager. A store manager will be created if one is needed and
+	will be destroyed by the destructor.
+	@param aFs A file server session. The file server session must have opened.
+	*/
+	CCertUtils(RFs& aFs);
+	void ConstructL();
+
+	//Virtual from CActive
+	void RunL();
+	void DoCancel();
+    TInt RunError(TInt aError);
+
+
+private:
+	// The following functions handle the different RunL states
+	void HandleEAddCACertsL();
+
+	void HandleEAddCACertL();
+	void HandleEAddCACertGetCAEntry();
+	void HandleEAddCACertSetApplicationsL();
+	void HandleEAddCACertSetTrust();
+	void HandleEAddCACertFinishedL();
+	
+	void HandleERemoveCertsGetCACerts();
+	void HandleERemoveCertsCACertsRetrieved();
+	void HandleERemoveCertsRemoveCACerts();
+	void HandleERemoveCertsGetUserCerts();
+	void HandleERemoveCertsUserCertsRetrieved();
+	void HandleERemoveCertsRemoveUserCerts();
+	void HandleERemoveCertsFinished();
+
+
+private:
+	/**
+	File Server Sessioin
+	*/
+	RFs& iFs;
+
+	/**
+	The state used to know what RunL should do
+	*/
+	TState iState;
+	
+	/**
+	The store managers will be used for certificate store operations,
+	*/
+	CUnifiedCertStore* iUnifiedCertStore;
+	CUnifiedCertStore* iCreatedUnifiedCertStore;
+	
+	/**
+	These members are used to store the arguments of the functions
+	because most of the things are handled in a RunL.
+	*/
+	const CDesCArray* iRoots;					// Used by AddCertsL
+	const CDesCArray* iLabels;					// Used by AddCertsL
+	TCertificateFormat iFormat;
+	TInt iTrustedUsage;							// Used by AddCertsL, AddCert
+	RArray<TUid> iTrusters;						// Used by AddCertsL, AddCert
+	const TDesC* iPath;							// Used by AddCertsL, AddCert
+	TRequestStatus* iOriginalRequestStatus;		// Used by AddCertsL, AddCert
+	TInt iIndex;								// Used by AddCertsL to know 
+												// which certificate to add next
+												// Used by RemoveCerts
+	CCertUtils* iSecondCertUtils;				// Used by AddCertsL to add each individual
+												// certificate
+	const TDesC* iLabel;						// Used by AddCert
+	TCertificateOwnerType iCertificateOwnerType;
+	const TDesC* iCertificateFileName;			// Used by AddCert 
+	CCertificate* iCertificate;					// Used by AddCACert
+	MCTWritableCertStore *iStore;				// Used by AddCACert
+	TPtrC8 iEncoding;							// Used by AddCACert
+
+	HBufC* iCertData;
+	HBufC* iLabelData;
+
+	/**
+	This is a filter used by the GetCACerts function. We use the filter constructed
+	by the constructor with no argument, the filter doesn't filter anything.
+	*/
+	CCertAttributeFilter* iCAFilter;				// Used by RemoveCerts
+	RMPointerArray<CCTCertInfo> iCACertStoreEntries;	// Used by RemoveCerts
+	
+	/**
+	This is a filter used by the GetUserCerts function. We use the filter constructed
+	by the constructot with no argument, the filter doesn't filter anything.
+	*/
+	CCertAttributeFilter* iUserFilter;			// Used by RemoveCerts
+	RMPointerArray<CCTCertInfo> iUserCertStoreEntries; // Used by RemoveCerts
+
+public:
+	/**
+	A diagnostic variable for when an error occurs. It stores the state at which
+	the error occurred.
+	*/
+	TState iDiagnosticState;
+	
+	/** 
+	A diagnostic variable for when an error occurs. It is an info message set
+	to whatever is relevant for the error.
+	*/
+	TBuf<400> iDiagnosticMessage;
+	};
+
+#endif