+++ /dev/null
-// Test that binfos aren't erroneously shared between instantiations.
-
-class PK_CryptoSystem
-{
-};
-class PK_Encryptor : public virtual PK_CryptoSystem
-{
-};
-class PK_FixedLengthCryptoSystem : public virtual PK_CryptoSystem
-{
-public:
- virtual unsigned int CipherTextLength() const =0;
-};
-class PK_FixedLengthEncryptor : public virtual PK_Encryptor, public virtual PK_FixedLengthCryptoSystem
-{
-};
-class PK_SignatureSystem
-{
-public:
- virtual ~PK_SignatureSystem() {};
-};
-class PK_Signer : public virtual PK_SignatureSystem
-{
-public:
- virtual void Sign() = 0;
-};
-class PK_Verifier : public virtual PK_SignatureSystem
-{
-};
-class PK_Precomputation
-{
-};
-template <class T> class
-PK_WithPrecomputation : public T, public virtual PK_Precomputation
-{
-};
-typedef PK_WithPrecomputation<PK_FixedLengthEncryptor> PKWPFLE;
-typedef PK_WithPrecomputation<PK_Signer> PKWPS;
-template <class EC> class
-ECPublicKey : public PKWPFLE
-{
-public:
- unsigned int CipherTextLength() const { return 1; }
- EC ec;
-};
-template <class EC>
-class ECPrivateKey : public ECPublicKey<EC>, public PKWPS
-{
- void Sign() {}
- int d;
-};
-template <class EC>
-class ECKEP : public ECPrivateKey<EC>
-{
-};
-class GF2NT : public PK_CryptoSystem
-{
- int t1;
-};
-class EC2N : public PK_CryptoSystem
-{
- GF2NT field;
- int a;
-};
-template class ECKEP<EC2N>;
-template class ECKEP<int>;
-
-int
-main ()
-{
- ECKEP<EC2N> foo;
-
- return 0;
-}
-