/*
   +----------------------------------------------------------------------+
   | Copyright (c) 2002-2005 J Smith <dark_panda@hushmail.com>            |
   | Crypto++ sources (not included) copyright (c) 1995-2003 Wei Dai      |
   +----------------------------------------------------------------------+
   | Check out COPYING for the exact license.                             |
   +----------------------------------------------------------------------+

$Id: jseal.h,v 1.9 2005/01/06 18:16:43 jay Exp $
*/

#ifndef __JSEAL_H__
#define __JSEAL_H__

#include "jconfig.h"

#if ENABLED_SEAL_LITTLE_ENDIAN || ENABLED_SEAL_BIG_ENDIAN

#include "jstream_t.h"

// Crypto++ headers...

#include "seal.h"

using namespace CryptoPP;

#if ENABLED_SEAL_LITTLE_ENDIAN
class JSEAL_LE : public JStream_Template<SEAL_Info<LittleEndian>, SEAL_LITTLE_ENDIAN_STREAM>
{
	protected:
		SymmetricCipher* getEncryptionObject();
		SymmetricCipher* getDecryptionObject();
};
#endif

#if ENABLED_SEAL_BIG_ENDIAN
class JSEAL_BE : public JStream_Template<SEAL_Info<BigEndian>, SEAL_BIG_ENDIAN_STREAM>
{
	protected:
		SymmetricCipher* getEncryptionObject();
		SymmetricCipher* getDecryptionObject();
};
#endif

#endif
#endif
