diff -r 000000000000 -r bde4ae8d615e os/security/crypto/weakcryptospi/test/tcryptospi/src/plugincharschecker.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/os/security/crypto/weakcryptospi/test/tcryptospi/src/plugincharschecker.h Fri Jun 15 03:10:57 2012 +0200 @@ -0,0 +1,109 @@ +/* +* Copyright (c) 2007-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: +* +*/ + + + + +/** + @file + @internalTechnology +*/ +#if (!defined __PLUGINCHARSCHECKER_H__) +#define __PLUGINCHARSCHECKER_H__ + +#include +#include +#include "te_cryptospiconversion.h" + +class CPluginCharsChecker : public CBase + { +public: + + static CPluginCharsChecker* NewL(); + static CPluginCharsChecker* NewLC(); + + ~CPluginCharsChecker(); + + TBool checkCommonCharacteristics(const CryptoSpi::TCommonCharacteristics* aCharacteristics, + TVariantPtrC aInterfaceUid, + TVariantPtrC aAlgorithmUid, + TVariantPtrC aImplementationUid, + TVariantPtrC aCreatorName, + TBool aFIPSApproved, + TBool aHardwareSupported, + TInt aMaxConcurrencySupported, + TVariantPtrC aAlgorithmName, + TInt aLatency, + TInt aThroughput, + TPtrC& aErrorMessage); + + TBool checkSymmetricCharacteristics(const CryptoSpi::TSymmetricCipherCharacteristics* aCharacteristics, + TInt aSymmetricMaxKeyLength, + TInt aSymmetricBlockSize, + TVariantPtrC aSymmetricPaddingModes, + TInt aSymmetricPaddingModeNum, + TVariantPtrC aSymmetricOperationModes, + TInt aSymmetricOperationModeNum, + TInt aSymmetricKeySupportMode, + TPtrC& aErrorMessage); + + TBool checkAsymmetricCharacteristics(const CryptoSpi::TAsymmetricCipherCharacteristics* aCharacteristics, + TInt aAsymmetricMaxKeyLength, + TVariantPtrC aAsymmetricPaddingModes, + TInt aAsymmetricPaddingModeNum, + TInt aAsymmetricKeySupportMode, + TPtrC& aErrorMessage); + + TBool checkHashCharacteristics(const CryptoSpi::THashCharacteristics* aCharacteristics, + TInt aBlockSize, + TInt aOutputSize, + TVariantPtrC aHashOperationModes, + TInt aHashOperationModeNum, + TPtrC& aErrorMessage); +#ifdef SYMBIAN_SDP_IPSEC_VOIP_SUPPORT + TBool checkMacCharacteristics(const CryptoSpi::TMacCharacteristics* aCharacteristics, + TVariantPtrC aMacMode, + TPtrC& aErrorMessage); +#endif + + TBool checkRandomCharacteristics(const CryptoSpi::TRandomCharacteristics* aCharacteristics, + TInt aRandomBlockingMode, + TPtrC& aErrorMessage); + + TBool checkAsymSignatureCharacteristics(const CryptoSpi::TAsymmetricSignatureCharacteristics* aCharacteristics, + TInt aAsymSignMaxKeyLength, + TVariantPtrC aAsymSignPaddingModes, + TInt aAsymSignPaddingModeNum, + TInt aAsymSignKeySupportMode, + TPtrC& aErrorMessage); + + TBool checkAsymKeypairGenCharacteristics(const CryptoSpi::TAsymmetricKeypairGeneratorCharacteristics* aCharacteristics, + TInt aAsymKeypairGenMaxKeyLength, + TPtrC& aErrorMessage); + + TBool checkSelectedPlugin(const CryptoSpi::TCharacteristics* aCharacteristics, + TVariantPtrC aAlgorithmUid, + TVariantPtrC aImplementationUid, + TPtrC& aErrorMessage); + +private: + + CPluginCharsChecker(); + }; + + +#endif