--- a/cryptoservices/asnpkcs/test/tactiontestpkcs8.cpp Tue Jul 21 01:04:32 2009 +0100
+++ b/cryptoservices/asnpkcs/test/tactiontestpkcs8.cpp Thu Sep 10 14:01:51 2009 +0300
@@ -1,163 +1,163 @@
-/*
-* 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:
-* tactiondecodepkcs5.cpp
-*
-*/
-
-
-#include "tactiontestpkcs8.h"
-#include "t_input.h"
-#include "t_output.h"
-#include <asnpkcs.h>
-#include <pbedata.h>
-#include <pbe.h>
-#include <asn1enc.h>
-
-_LIT8(KFilenameStart, "<filename>");
-_LIT8(KMatchesStart, "<matches>");
-
-_LIT8(KOutcomeNoMatch, "noMatch");
-_LIT8(KOutcomeMatchesPKCS8, "pkcs8");
-_LIT8(KOutcomeMatchesEncryptedPKCS8, "encryptedPkcs8");
-
-_LIT(KFilenameBase, "\\tkeystore\\data\\");
-
-CTestAction* CActionTestPKCS8::NewL(RFs& aFs,
- CConsoleBase& aConsole,
- Output& aOut,
- const TTestActionSpec& aTestActionSpec)
- {
- CActionTestPKCS8* self = new(ELeave) CActionTestPKCS8(aFs, aConsole, aOut);
- CleanupStack::PushL(self);
- self->ConstructL(aTestActionSpec);
- CleanupStack::Pop();
- return self;
- }
-
-CActionTestPKCS8::~CActionTestPKCS8()
- {
- delete iInput;
- }
-
-CActionTestPKCS8::CActionTestPKCS8(RFs& aFs,
- CConsoleBase& aConsole,
- Output& aOut)
-
-: CTestAction(aConsole, aOut), iFs(aFs)
- {
- }
-
-void CActionTestPKCS8::ConstructL(const TTestActionSpec& aTestActionSpec)
- {
- CTestAction::ConstructL(aTestActionSpec);
- ReadInputFileL(Input::ParseElement(aTestActionSpec.iActionBody, KFilenameStart));
- SetExpectedOutcomeL(Input::ParseElement(aTestActionSpec.iActionBody, KMatchesStart));
- }
-
-void CActionTestPKCS8::ReadInputFileL(const TDesC8& aFilename)
- {
- if (aFilename == KNullDesC8)
- {
- User::Leave(KErrArgument);
- }
-
- TFileName tempFilename;
- tempFilename.Copy(aFilename); // convert from 8 -> 16 bit descriptor
-
- TDriveUnit sysDrive = RFs::GetSystemDrive();
- TDriveName sysDriveName (sysDrive.Name());
- tempFilename.Insert(0,sysDriveName);
- tempFilename.Insert(2,KFilenameBase);
-
- RFile file;
- User::LeaveIfError(file.Open(iFs, tempFilename, EFileRead));
- CleanupClosePushL(file);
- TInt size = 0;
- User::LeaveIfError(file.Size(size));
-
- iInput = HBufC8::NewMaxL(size);
- TPtr8 ptr = iInput->Des();
- User::LeaveIfError(file.Read(ptr));
-
- CleanupStack::PopAndDestroy(&file);
- }
-
-void CActionTestPKCS8::SetExpectedOutcomeL(const TDesC8& aOutcome)
- {
- if (aOutcome == KOutcomeNoMatch)
- {
- iExpectedOutcome = ENoMatch;
- }
- else if (aOutcome == KOutcomeMatchesPKCS8)
- {
- iExpectedOutcome = EMatchesPKCS8;
- }
- else if (aOutcome == KOutcomeMatchesEncryptedPKCS8)
- {
- iExpectedOutcome = EMatchesEncryptedPKCS8;
- }
- else
- {
- User::Leave(KErrArgument);
- }
- }
-
-void CActionTestPKCS8::DoReportAction(void)
- {
- }
-
-void CActionTestPKCS8::DoCheckResult(TInt)
- {
- }
-
-void CActionTestPKCS8::PerformAction(TRequestStatus& aStatus)
- {
- TRequestStatus* status = &aStatus;
- iResult = EFalse;
-
- TBool matchesPKCS8 = TASN1DecPKCS8::IsPKCS8Data(*iInput);
- TBool matchesEncryptedPKCS8 = TASN1DecPKCS8::IsEncryptedPKCS8Data(*iInput);
-
- if (matchesPKCS8 && matchesEncryptedPKCS8)
- {
- iOut.writeString(_L("!! Data matches both cleartext and encrypted pkcs8\n"));
- User::Leave(KErrGeneral);
- }
-
- TOutcome outcome = ENoMatch;
-
- if (matchesPKCS8)
- {
- iOut.writeString(_L("Data matches cleartext pkcs8\n"));
- outcome = EMatchesPKCS8;
- }
- else if (matchesEncryptedPKCS8)
- {
- iOut.writeString(_L("Data matches encrypted pkcs8\n"));
- outcome = EMatchesEncryptedPKCS8;
- }
- else
- {
- iOut.writeString(_L("Data doesn't match anything\n"));
- }
-
- if(outcome == iExpectedOutcome)
- {
- iResult = ETrue;
- }
-
- User::RequestComplete(status, KErrNone);
- iActionState = CTestAction::EPostrequisite;
- }
+/*
+* 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:
+* tactiondecodepkcs5.cpp
+*
+*/
+
+
+#include "tactiontestpkcs8.h"
+#include "t_input.h"
+#include "t_output.h"
+#include <asnpkcs.h>
+#include <pbedata.h>
+#include <pbe.h>
+#include <asn1enc.h>
+
+_LIT8(KFilenameStart, "<filename>");
+_LIT8(KMatchesStart, "<matches>");
+
+_LIT8(KOutcomeNoMatch, "noMatch");
+_LIT8(KOutcomeMatchesPKCS8, "pkcs8");
+_LIT8(KOutcomeMatchesEncryptedPKCS8, "encryptedPkcs8");
+
+_LIT(KFilenameBase, "\\tkeystore\\data\\");
+
+CTestAction* CActionTestPKCS8::NewL(RFs& aFs,
+ CConsoleBase& aConsole,
+ Output& aOut,
+ const TTestActionSpec& aTestActionSpec)
+ {
+ CActionTestPKCS8* self = new(ELeave) CActionTestPKCS8(aFs, aConsole, aOut);
+ CleanupStack::PushL(self);
+ self->ConstructL(aTestActionSpec);
+ CleanupStack::Pop();
+ return self;
+ }
+
+CActionTestPKCS8::~CActionTestPKCS8()
+ {
+ delete iInput;
+ }
+
+CActionTestPKCS8::CActionTestPKCS8(RFs& aFs,
+ CConsoleBase& aConsole,
+ Output& aOut)
+
+: CTestAction(aConsole, aOut), iFs(aFs)
+ {
+ }
+
+void CActionTestPKCS8::ConstructL(const TTestActionSpec& aTestActionSpec)
+ {
+ CTestAction::ConstructL(aTestActionSpec);
+ ReadInputFileL(Input::ParseElement(aTestActionSpec.iActionBody, KFilenameStart));
+ SetExpectedOutcomeL(Input::ParseElement(aTestActionSpec.iActionBody, KMatchesStart));
+ }
+
+void CActionTestPKCS8::ReadInputFileL(const TDesC8& aFilename)
+ {
+ if (aFilename == KNullDesC8)
+ {
+ User::Leave(KErrArgument);
+ }
+
+ TFileName tempFilename;
+ tempFilename.Copy(aFilename); // convert from 8 -> 16 bit descriptor
+
+ TDriveUnit sysDrive = RFs::GetSystemDrive();
+ TDriveName sysDriveName (sysDrive.Name());
+ tempFilename.Insert(0,sysDriveName);
+ tempFilename.Insert(2,KFilenameBase);
+
+ RFile file;
+ User::LeaveIfError(file.Open(iFs, tempFilename, EFileRead));
+ CleanupClosePushL(file);
+ TInt size = 0;
+ User::LeaveIfError(file.Size(size));
+
+ iInput = HBufC8::NewMaxL(size);
+ TPtr8 ptr = iInput->Des();
+ User::LeaveIfError(file.Read(ptr));
+
+ CleanupStack::PopAndDestroy(&file);
+ }
+
+void CActionTestPKCS8::SetExpectedOutcomeL(const TDesC8& aOutcome)
+ {
+ if (aOutcome == KOutcomeNoMatch)
+ {
+ iExpectedOutcome = ENoMatch;
+ }
+ else if (aOutcome == KOutcomeMatchesPKCS8)
+ {
+ iExpectedOutcome = EMatchesPKCS8;
+ }
+ else if (aOutcome == KOutcomeMatchesEncryptedPKCS8)
+ {
+ iExpectedOutcome = EMatchesEncryptedPKCS8;
+ }
+ else
+ {
+ User::Leave(KErrArgument);
+ }
+ }
+
+void CActionTestPKCS8::DoReportAction(void)
+ {
+ }
+
+void CActionTestPKCS8::DoCheckResult(TInt)
+ {
+ }
+
+void CActionTestPKCS8::PerformAction(TRequestStatus& aStatus)
+ {
+ TRequestStatus* status = &aStatus;
+ iResult = EFalse;
+
+ TBool matchesPKCS8 = TASN1DecPKCS8::IsPKCS8Data(*iInput);
+ TBool matchesEncryptedPKCS8 = TASN1DecPKCS8::IsEncryptedPKCS8Data(*iInput);
+
+ if (matchesPKCS8 && matchesEncryptedPKCS8)
+ {
+ iOut.writeString(_L("!! Data matches both cleartext and encrypted pkcs8\n"));
+ User::Leave(KErrGeneral);
+ }
+
+ TOutcome outcome = ENoMatch;
+
+ if (matchesPKCS8)
+ {
+ iOut.writeString(_L("Data matches cleartext pkcs8\n"));
+ outcome = EMatchesPKCS8;
+ }
+ else if (matchesEncryptedPKCS8)
+ {
+ iOut.writeString(_L("Data matches encrypted pkcs8\n"));
+ outcome = EMatchesEncryptedPKCS8;
+ }
+ else
+ {
+ iOut.writeString(_L("Data doesn't match anything\n"));
+ }
+
+ if(outcome == iExpectedOutcome)
+ {
+ iResult = ETrue;
+ }
+
+ User::RequestComplete(status, KErrNone);
+ iActionState = CTestAction::EPostrequisite;
+ }