diff -r 675a964f4eb5 -r 35751d3474b7 crypto/weakcryptospi/test/tsymmetric/tsymmetricmain.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/crypto/weakcryptospi/test/tsymmetric/tsymmetricmain.cpp Thu Sep 10 14:01:51 2009 +0300 @@ -0,0 +1,135 @@ +/* +* 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: +* +*/ + + +#include +#include "t_testhandler.h" +#include "t_testsetup.h" +#include "tscripttests.h" +#include "tactionvector.h" +#include "tperformancetest.h" +#include "tactionincremental.h" +#include "tactionmontecarlo.h" +#include "tactionincrementallegacy.h" + +LOCAL_D void callExampleL() // initialize and call example code under cleanup stack +{ + START_SCRIPT_LIST + SCRIPT_ITEM(CActionVector,_L8("Vector")), + SCRIPT_ITEM(CPerformanceTest,_L8("Performance")), + SCRIPT_ITEM(CActionIncremental,_L8("Incremental")), + SCRIPT_ITEM(CActionMonteCarlo, _L8("MonteCarlo")), + SCRIPT_ITEM(CActionIncrementalLegacy,_L8("IncrementalLegacy")) + END_SCRIPT_LIST + + TDriveUnit sysDrive (RFs::GetSystemDrive()); + TDriveName sysDriveName (sysDrive.Name()); + TBuf<64> scriptFile (sysDriveName); + scriptFile.Append(_L("\\tsymmetric\\tsymmetrictests.txt")); + + TBuf<64> logFile (sysDriveName); + logFile.Append(_L("\\tsymmetric\\tsymmetrictests.log")); + + +// RC2, RC4, DES, 3DES (ECB and CBC modes) +/* CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\symmetricOOMtests.txt"), + _L("c:\\tsymmetric\\symmetricOOMtests.log"));*/ + CTestSetup::CreateAndRunTestsL(theTestTypes, scriptFile, logFile); + +// CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\tsymmetricperformancetests.txt"), +// _L("c:\\tsymmetric\\tsymmetricperformancetests.log")); + +// There are so many other test scripts because it is impossible to put all the test +// data in one big script. The test framework just falls over with out of memory because +// it attempts to create all test objects at the start of the test. All these tests +// are (of course) necessary hence they've been split. Either run the top level build +// and test script or, if running this test specifically, uncomment the following and it'll run them +// all one after the other +// AES (ECB) using Rijndael vectors for all table values +/* CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESECBVectorsScript.txt"), + _L("c:\\tsymmetric\\aesecb_vectors.log")); + +// AES (ECB) KAT using variable text, known key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESECB_KAT_VT.txt"), + _L("c:\\tsymmetric\\aesecb_kat_vt.log")); + +// AES (ECB) KAT using variable key, known text + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESECB_KAT_VK.txt"), + _L("c:\\tsymmetric\\aesecb_kat_vk.log")); + +// AES Monte Carlo tests (ECB encrypt) with 128 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptECB128.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_encryptECB128.log")); + +// AES Monte Carlo tests (ECB encrypt) with 192 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptECB192.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_encryptECB192.log")); + +// AES Monte Carlo tests (ECB encrypt) with 256 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptECB256.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_encryptECB256.log")); + +// AES Monte Carlo tests (ECB decrypt) with 128 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptECB128.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_decryptECB128.log")); + +// AES Monte Carlo tests (ECB decrypt) with 192 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptECB192.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_decryptECB192.log")); + +// AES Monte Carlo tests (ECB decrypt) with 256 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptECB256.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_decryptECB256.log")); + +// AES Monte Carlo tests (CBC encrypt) with 128 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptCBC128.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_encryptCBC128.log")); + +// AES Monte Carlo tests (CBC encrypt) with 192 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptCBC192.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_encryptCBC192.log")); + +// AES Monte Carlo tests (CBC encrypt) with 256 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptCBC256.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_encryptCBC256.log")); + +// AES Monte Carlo tests (CBC decrypt) with 128 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptCBC128.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_decryptCBC128.log")); + +// AES Monte Carlo tests (CBC decrypt) with 192 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptCBC192.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_decryptCBC192.log")); + +// AES Monte Carlo tests (CBC decrypt) with 256 bit key + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptCBC256.txt"), + _L("c:\\tsymmetric\\aesmontecarlo_decryptCBC256.log")); + + CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\symmetricOOMtests.txt"), + _L("c:\\tsymmetric\\symmetricOOMtests.log")); +*/} + +GLDEF_C TInt E32Main() // main function called by E32 + { + __UHEAP_MARK; + CTrapCleanup* cleanup = CTrapCleanup::New(); // get clean-up stack + TRAPD(error, callExampleL()); + __ASSERT_ALWAYS(!error,User::Panic(_L("tsymmetric"),error)); + delete cleanup; // destroy clean-up stack + __UHEAP_MARKEND; + return 0; + }