cryptoservices/certificateandkeymgmt/tpkcs12intgrtn/src/tpkcs12data.cpp
changeset 8 35751d3474b7
parent 0 2c201484c85f
--- a/cryptoservices/certificateandkeymgmt/tpkcs12intgrtn/src/tpkcs12data.cpp	Tue Jul 21 01:04:32 2009 +0100
+++ b/cryptoservices/certificateandkeymgmt/tpkcs12intgrtn/src/tpkcs12data.cpp	Thu Sep 10 14:01:51 2009 +0300
@@ -1,244 +1,242 @@
-/*
-* 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: 
-* This file contains the implementation of the CPfxHeader,CSafeBagAttribute,
-* CSafeContentBag,CSafeBagData.
-*
-*/
-
-
-
-
-/**
- @file 
- @internalTechnology
-*/
-//User Include 
-#include "tpkcs12data.h"
-
-// Implementation of CPfxHeader
-
-/**
-Description:constructor
-@internalTechnology:
-@test
-*/
-CPfxHeader::CPfxHeader()
-	{
-	}
-/**
-Description:Function is intended to create the  CPfxHeader object
-@internalTechnology:
-@test
-*/
- CPfxHeader* CPfxHeader::NewL(const CDecPkcs12& aDecPkcs12 , TInt aError)
-	{
-	CPfxHeader* self = NewLC(aDecPkcs12 , aError);
-	CleanupStack::Pop(self);
-	return self;
-	}
-/**
-Description:Function is intended to pcreate the  CPfxHeader object and push it to cleanupstack
-@internalTechnology:
-@test
-*/
- CPfxHeader* CPfxHeader::NewLC(const CDecPkcs12& aDecPkcs12 , TInt aError)
-	{
-	CPfxHeader* self = new (ELeave) CPfxHeader();
-	CleanupStack::PushL(self);
-	self->ConstructL(aDecPkcs12 , aError);
-	return self;
-	}
-
-/**
-Description:Function is intended to construct the CPfxHeader object
-@param-CDecPkcs12&: reference to the CDecPkcs12 object
-@param-aError: Error to be set in case, the CDecPkcs12 object creation fails
-@internalTechnology:
-@test
-*/	
-void CPfxHeader::ConstructL(const CDecPkcs12& aDecPkcs12 , TInt aError)
-	{	
-	if(aError != KErrNone)
-		{
-		iPkcs12ActualError = aError;
-		return;
-		}
-	//get the version
-	iVersion = 	aDecPkcs12.Version();
-	// put the integrity mode in the Header
-	iIntegrityMode =  aDecPkcs12.IntegrityMode();
-	
-	// Get the macData 
-	const CDecPkcs12MacData* macData = aDecPkcs12.MacData();
-	
-	// set the macData member in the Header
-
-	iIsMacDataPresent = ( macData != NULL) ;
-	
-	if (macData  && iIntegrityMode ==  CDecPkcs12::EPasswordIntegrityMode)
-		{
-		// MacL method returns the DigestInfo structure.
-		const CPKCS7DigestInfo& digestInfo = macData->DigestInfo();		
-		iMac = digestInfo.Digest().AllocL();
-		// MacSaltL method returns the macSalt
-		iMacSalt = macData->MacSalt().AllocL();
-		// IterationCountL method returns the iteration Count.
-		iIterationCount= macData->IterationCount();
-		}
-	}
-/**
-Description:destructor
-@internalTechnology:
-@test
-*/
-CPfxHeader::~CPfxHeader()
-	{
-	delete iMac;
-	delete iMacSalt;		
-	}
-		
-// Implementation of CSafeBagAttribute
-/**
-Description:constructor
-@internalTechnology:
-@test
-*/
-CSafeBagAttribute::CSafeBagAttribute()
-	{
-	}
-/**
-Description:destructor
-@internalTechnology:
-@test
-*/
-CSafeBagAttribute::~CSafeBagAttribute()
-	{
-	delete iAttrId;
-	}
-/**
-Description:Function is intended create CSafeBagAttribute object
-@param-aAttribute: constant reference to the CDecPkcs12Attribute
-@internalTechnology:
-@test
-*/
- CSafeBagAttribute* CSafeBagAttribute::NewL(const CDecPkcs12Attribute& aAttribute)
-	{
-	CSafeBagAttribute* self = NewLC(aAttribute);
-	CleanupStack::Pop(self);
-	return self;
-	}
-/**
-Description:Function is intended to construct CSafeBagAttribute object, push it to cleanupstack
-@param-aAttribute: constant reference to the CDecPkcs12Attribute
-@internalTechnology:
-@test
-*/
- CSafeBagAttribute* CSafeBagAttribute::NewLC(const CDecPkcs12Attribute& aAttribute)
-	{
-	CSafeBagAttribute* self = new (ELeave) CSafeBagAttribute();
-	CleanupStack::PushL(self);
-	self->ConstructL(aAttribute);
-	return self;
-	}
-/**
-Description:Function is intended to construct the CSafeBagAttribute object
-@param-CDecPkcs12Attribute: pointer to the CDecPkcs12ShroudedKeyBag
-@internalTechnology:
-@test
-*/
-void CSafeBagAttribute::ConstructL(const CDecPkcs12Attribute& aAttribute)	
-	{
-	iAttrId = aAttribute.AttributeId().AllocL();
-	iAttrValCount = aAttribute.AttributeValue().Count();
-	}
-	
-//Implementation of CSafeContentBag
-
-/**
-Description:Function is intended to create the  CSafeContentBag
-@internalTechnology:
-@test
-*/
- CSafeContentBag* CSafeContentBag::NewL()
-	{
-	CSafeContentBag* self = NewLC();
-	CleanupStack::Pop(self);
-	return self;	
-	}
-/**
-Description:Function is intended to create the  CSafeContentBag, push it to cleanupstack
-@internalTechnology:
-@test
-*/
- CSafeContentBag* CSafeContentBag::NewLC()
-	{
-	CSafeContentBag* self = new (ELeave) CSafeContentBag();
-	CleanupStack::PushL(self);
-	return self;	
-	}
-/**
-Description:constructor
-@internalTechnology:
-@test
-*/
-CSafeContentBag::CSafeContentBag()
-	{	
-	}
-	
-// Implementation of CSafeBagData
-
-/**
-Description:destructor
-@internalTechnology:
-@test
-*/
-CSafeBagData::~CSafeBagData()
-	{
-	delete iBagValue;
-	delete iAlgorithmID;
-	delete iCertificateID;	
-	iAttributeIDs.ResetAndDestroy();
-	iAttributeValues.ResetAndDestroy();
-	}	
-/**
-Description:Function is intended to create  the  CSafeBagData object
-@internalTechnology:
-@test
-*/
- CSafeBagData* CSafeBagData::NewL()
-	{
-	CSafeBagData* self = NewLC();
-	CleanupStack::Pop(self);
-	return self;	
-	}
-/**
-Description:Function is intended to create  the  CSafeBagData object, push it to cleanupstack
-@internalTechnology:
-@test
-*/
- CSafeBagData* CSafeBagData::NewLC()
-	{
-	CSafeBagData* self = new (ELeave) CSafeBagData;
-	CleanupStack::PushL(self);
-	return self;	
-	}
-/**
-Description:constructor
-@internalTechnology:
-@test
-*/		
-CSafeBagData::CSafeBagData()
-	{		
-	}
+/*
+* 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: 
+* This file contains the implementation of the CPfxHeader,CSafeBagAttribute,
+* CSafeContentBag,CSafeBagData.
+*
+*/
+
+
+/**
+ @file 
+ @internalTechnology
+*/
+//User Include 
+#include "tpkcs12data.h"
+
+// Implementation of CPfxHeader
+
+/**
+Description:constructor
+@internalTechnology:
+@test
+*/
+CPfxHeader::CPfxHeader()
+	{
+	}
+/**
+Description:Function is intended to create the  CPfxHeader object
+@internalTechnology:
+@test
+*/
+ CPfxHeader* CPfxHeader::NewL(const CDecPkcs12& aDecPkcs12 , TInt aError)
+	{
+	CPfxHeader* self = NewLC(aDecPkcs12 , aError);
+	CleanupStack::Pop(self);
+	return self;
+	}
+/**
+Description:Function is intended to pcreate the  CPfxHeader object and push it to cleanupstack
+@internalTechnology:
+@test
+*/
+ CPfxHeader* CPfxHeader::NewLC(const CDecPkcs12& aDecPkcs12 , TInt aError)
+	{
+	CPfxHeader* self = new (ELeave) CPfxHeader();
+	CleanupStack::PushL(self);
+	self->ConstructL(aDecPkcs12 , aError);
+	return self;
+	}
+
+/**
+Description:Function is intended to construct the CPfxHeader object
+@param-CDecPkcs12&: reference to the CDecPkcs12 object
+@param-aError: Error to be set in case, the CDecPkcs12 object creation fails
+@internalTechnology:
+@test
+*/	
+void CPfxHeader::ConstructL(const CDecPkcs12& aDecPkcs12 , TInt aError)
+	{	
+	if(aError != KErrNone)
+		{
+		iPkcs12ActualError = aError;
+		return;
+		}
+	//get the version
+	iVersion = 	aDecPkcs12.Version();
+	// put the integrity mode in the Header
+	iIntegrityMode =  aDecPkcs12.IntegrityMode();
+	
+	// Get the macData 
+	const CDecPkcs12MacData* macData = aDecPkcs12.MacData();
+	
+	// set the macData member in the Header
+
+	iIsMacDataPresent = ( macData != NULL) ;
+	
+	if (macData  && iIntegrityMode ==  CDecPkcs12::EPasswordIntegrityMode)
+		{
+		// MacL method returns the DigestInfo structure.
+		const CPKCS7DigestInfo& digestInfo = macData->DigestInfo();		
+		iMac = digestInfo.Digest().AllocL();
+		// MacSaltL method returns the macSalt
+		iMacSalt = macData->MacSalt().AllocL();
+		// IterationCountL method returns the iteration Count.
+		iIterationCount= macData->IterationCount();
+		}
+	}
+/**
+Description:destructor
+@internalTechnology:
+@test
+*/
+CPfxHeader::~CPfxHeader()
+	{
+	delete iMac;
+	delete iMacSalt;		
+	}
+		
+// Implementation of CSafeBagAttribute
+/**
+Description:constructor
+@internalTechnology:
+@test
+*/
+CSafeBagAttribute::CSafeBagAttribute()
+	{
+	}
+/**
+Description:destructor
+@internalTechnology:
+@test
+*/
+CSafeBagAttribute::~CSafeBagAttribute()
+	{
+	delete iAttrId;
+	}
+/**
+Description:Function is intended create CSafeBagAttribute object
+@param-aAttribute: constant reference to the CDecPkcs12Attribute
+@internalTechnology:
+@test
+*/
+ CSafeBagAttribute* CSafeBagAttribute::NewL(const CDecPkcs12Attribute& aAttribute)
+	{
+	CSafeBagAttribute* self = NewLC(aAttribute);
+	CleanupStack::Pop(self);
+	return self;
+	}
+/**
+Description:Function is intended to construct CSafeBagAttribute object, push it to cleanupstack
+@param-aAttribute: constant reference to the CDecPkcs12Attribute
+@internalTechnology:
+@test
+*/
+ CSafeBagAttribute* CSafeBagAttribute::NewLC(const CDecPkcs12Attribute& aAttribute)
+	{
+	CSafeBagAttribute* self = new (ELeave) CSafeBagAttribute();
+	CleanupStack::PushL(self);
+	self->ConstructL(aAttribute);
+	return self;
+	}
+/**
+Description:Function is intended to construct the CSafeBagAttribute object
+@param-CDecPkcs12Attribute: pointer to the CDecPkcs12ShroudedKeyBag
+@internalTechnology:
+@test
+*/
+void CSafeBagAttribute::ConstructL(const CDecPkcs12Attribute& aAttribute)	
+	{
+	iAttrId = aAttribute.AttributeId().AllocL();
+	iAttrValCount = aAttribute.AttributeValue().Count();
+	}
+	
+//Implementation of CSafeContentBag
+
+/**
+Description:Function is intended to create the  CSafeContentBag
+@internalTechnology:
+@test
+*/
+ CSafeContentBag* CSafeContentBag::NewL()
+	{
+	CSafeContentBag* self = NewLC();
+	CleanupStack::Pop(self);
+	return self;	
+	}
+/**
+Description:Function is intended to create the  CSafeContentBag, push it to cleanupstack
+@internalTechnology:
+@test
+*/
+ CSafeContentBag* CSafeContentBag::NewLC()
+	{
+	CSafeContentBag* self = new (ELeave) CSafeContentBag();
+	CleanupStack::PushL(self);
+	return self;	
+	}
+/**
+Description:constructor
+@internalTechnology:
+@test
+*/
+CSafeContentBag::CSafeContentBag()
+	{	
+	}
+	
+// Implementation of CSafeBagData
+
+/**
+Description:destructor
+@internalTechnology:
+@test
+*/
+CSafeBagData::~CSafeBagData()
+	{
+	delete iBagValue;
+	delete iAlgorithmID;
+	delete iCertificateID;	
+	iAttributeIDs.ResetAndDestroy();
+	iAttributeValues.ResetAndDestroy();
+	}	
+/**
+Description:Function is intended to create  the  CSafeBagData object
+@internalTechnology:
+@test
+*/
+ CSafeBagData* CSafeBagData::NewL()
+	{
+	CSafeBagData* self = NewLC();
+	CleanupStack::Pop(self);
+	return self;	
+	}
+/**
+Description:Function is intended to create  the  CSafeBagData object, push it to cleanupstack
+@internalTechnology:
+@test
+*/
+ CSafeBagData* CSafeBagData::NewLC()
+	{
+	CSafeBagData* self = new (ELeave) CSafeBagData;
+	CleanupStack::PushL(self);
+	return self;	
+	}
+/**
+Description:constructor
+@internalTechnology:
+@test
+*/		
+CSafeBagData::CSafeBagData()
+	{		
+	}