diff -r 000000000000 -r af10295192d8 networksecurity/ipsec/ipseccrypto/inc/ipseccrypto.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/networksecurity/ipsec/ipseccrypto/inc/ipseccrypto.h Tue Jan 26 15:23:49 2010 +0200 @@ -0,0 +1,60 @@ +// Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "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: +// + + + +/** + @internalComponent +*/ +#ifndef __IPSECCRYPTO_H__ +#define __IPSECCRYPTO_H__ + +#include +#ifdef SYMBIAN_IPSEC_VOIP_SUPPORT +#include "cryptosymmetriccipherapi.h" +#include "cryptomacapi.h" +#endif // SYMBIAN_IPSEC_VOIP_SUPPORT + +typedef enum + { + EAlgorithm_Descbc, + EAlgorithm_3Descbc, + EAlgorithm_Sha1, + EAlgorithm_Md5, + EAlgorithm_Aescbc, + EAlgorithm_Aesctr, +#ifdef SYMBIAN_IPSEC_VOIP_SUPPORT + EAlgorithm_AesXcbcMac96, +#endif // SYMBIAN_IPSEC_VOIP_SUPPORT + EAlgorithm_Max, // Must be the last entry!! + } TEayAlgorithm; + +class CProtocolEay : public CProtocolCrypto + { +public: + CProtocolEay(); + ~CProtocolEay() {} // Nothing to cleanup + virtual void Identify(TServerProtocolDesc *) const; + virtual TUint AlgorithmList(TAlgorithmDesc *&aList); + virtual CryptoSpi::CSymmetricCipher* SymmetricCipherL(TUint anAlg, const TDesC8 &aKey); + virtual CMessageDigestCrypto* MessageDigest(TUint anAlg); +#ifdef SYMBIAN_IPSEC_VOIP_SUPPORT + virtual CryptoSpi::CMac* GetMacImplementationL(const TDesC8& aKey); + HBufC8* CProtocolEay::RetrieveMacValueL(CryptoSpi::CMac *aMac,const TDesC8& aSourceData ); +#endif //SYMBIAN_IPSEC_VOIP_SUPPORT + + }; + +#endif