--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/cryptoservices/certificateandkeymgmt/certstore/unifiedcertstoreworkingvars.h Wed Jul 08 11:25:26 2009 +0100
@@ -0,0 +1,116 @@
+/*
+* Copyright (c) 1998-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:
+* CUnifiedCertStoreWorkingVars class implementation
+*
+*/
+
+
+
+
+/**
+ @file
+ @internalComponent
+*/
+
+#include <e32base.h>
+#include <mctwritablecertstore.h>
+class CSHA1;
+class CCertificate;
+class CX500DistinguishedName;
+
+NONSHARABLE_CLASS(CUnifiedCertStoreWorkingVars) : public CBase
+ {
+public:
+ CUnifiedCertStoreWorkingVars();
+ virtual ~CUnifiedCertStoreWorkingVars();
+
+public:
+ /**
+ * This stores the list of Token Types that support the
+ * writable cert store interface.
+ * Used while initializing the store.
+ */
+ RCPointerArray<CCTTokenTypeInfo> iWritableTokenTypes;
+ /**
+ * This stores the list of Token Types that support the
+ * readable cert store interface.
+ * Used while initializing the store.
+ */
+ RCPointerArray<CCTTokenTypeInfo> iReadOnlyTokenTypes;
+
+ /**
+ * Used to point to the array given as argument when listing certificates.
+ */
+ RMPointerArray<CCTCertInfo>* iCertInfos;
+ /**
+ * Used to point to the filter given as argument when listing certificates.
+ */
+ const CCertAttributeFilter* iFilter;
+
+ /**
+ * Used to point to the array of applications given as argument when doing
+ * the following operations :
+ * - Applications
+ * - SetApplicability
+ */
+ RArray<TUid>* iApplications;
+
+ /**
+ * Used to point to the certificate info given as argument when doing the following
+ * operations :
+ * - Applications
+ * - IsApplicable
+ * - Trusted
+ * - Retrieve
+ * - Remove
+ * - SetApplicability
+ * - SetTrust
+ */
+ const CCTCertInfo* iCertInfo;
+
+ /**
+ * This is used as an index for
+ * - the iWritableTokenTypes array when we are initializing the store.
+ * - the iReadOnlyTokenTypes array when we are initializing the store.
+ */
+ TInt iIndex;
+
+ /** The first returned certificate to be added to the array during
+ * a list, or the cert whose issuer DN is currently being compared. */
+ TInt iCertIndex;
+
+ /** The required issuer name for a list. */
+ RPointerArray<TDesC8> iIssuerNames;
+ /** The issuer names in parsed format */
+ RPointerArray<CX500DistinguishedName> iParsedIssuerNames;
+ /** Hashes of issuer names */
+ RPointerArray<HBufC8> iHashedIssuerNames;
+
+ /** A hash of the issuer DN. Used for comparing DNs in URL certificates */
+ CSHA1* iIssuerHash;
+
+ /** A descriptor used for storing certs while returning them as
+ CCertificate objects */
+ HBufC8* iCertDesC;
+ /** A pointer to the modifiable descriptor for returning the
+ CCertificate objects - normally points to to iCertDesC */
+ TPtr8 iCertDes;
+
+ /** Pointer to returned certificate pointer */
+ CCertificate** iReturnedCert;
+
+ /** Type of the certificate being retrieved */
+ TCertificateFormat iCertType;
+ };