/* File automatically generated by SOAdvancedDissector.py More information at http://indefero.soutade.fr/p/soadvanceddissector */ #ifndef _COSSL_H #define _COSSL_H #include #include namespace cossl { class AESStreamCryptorImpl; class AES128StreamCryptorImpl; class AES256StreamCryptorImpl; class CertificateImpl; class CryptProviderImpl; class CryptorImpl; class IdentityImpl; class RSAKeyImpl; class SHA1HashImpl; class SymKeyImpl; class AESStreamCryptorImpl: public dpcrypt::StreamCryptor { public: virtual ~AESStreamCryptorImpl(); virtual void addRef(); virtual void release(); virtual void initDecrypt(dp::ref const&, dp::Data const&); virtual void decrypt(unsigned char const*, unsigned int, unsigned int*, unsigned char*, unsigned int); virtual void finalize(unsigned char*, unsigned int); virtual void setKeyLength() = 0; }; class AES128StreamCryptorImpl: public cossl::AESStreamCryptorImpl { public: AES128StreamCryptorImpl(); virtual ~AES128StreamCryptorImpl(); virtual void addRef(); virtual void release(); virtual void initDecrypt(dp::ref const&, dp::Data const&); virtual void decrypt(unsigned char const*, unsigned int, unsigned int*, unsigned char*, unsigned int); virtual void finalize(unsigned char*, unsigned int); virtual void setKeyLength(); }; class AES256StreamCryptorImpl: public cossl::AESStreamCryptorImpl { public: AES256StreamCryptorImpl(); virtual ~AES256StreamCryptorImpl(); virtual void addRef(); virtual void release(); virtual void initDecrypt(dp::ref const&, dp::Data const&); virtual void decrypt(unsigned char const*, unsigned int, unsigned int*, unsigned char*, unsigned int); virtual void finalize(unsigned char*, unsigned int); virtual void setKeyLength(); }; class CertificateImpl: public dpcrypt::Certificate { public: CertificateImpl(dp::Data const&); CertificateImpl(x509_st*); virtual ~CertificateImpl(); virtual void addRef(); virtual void release(); virtual void getCommonName(); virtual void getPublicKey(); virtual void serialize(); virtual void isValidForRole(int); }; class CryptProviderImpl: public dpcrypt::CryptProvider { public: CryptProviderImpl(); virtual ~CryptProviderImpl(); virtual void getRandomBytes(unsigned int); virtual void createHash(int); virtual void createKey(int, int, dp::Data const&); virtual void generateKey(int); virtual void generateKeyPair(int, dpcrypt::KeyPair*); virtual void createCryptor(int); virtual void createStreamCryptor(int); virtual void createCertificate(dp::Data const&); virtual void createIdentity(dp::Data const&, dp::String const&); virtual void changePKCS12Password(dp::Data const&, dp::String const&, dp::String const&); void getInstance(); }; class CryptorImpl: public dpcrypt::Cryptor { public: CryptorImpl(); virtual ~CryptorImpl(); virtual void addRef(); virtual void release(); virtual void encrypt(dp::ref const&, dp::Data const&); virtual void encrypt(dp::ref const&, dp::Data const&, dp::Data const&, bool); virtual void decrypt(dp::ref const&, dp::Data const&); virtual void decrypt(dp::ref const&, dp::Data const&, dp::Data const&); }; class IdentityImpl: public dpcrypt::Identity { public: IdentityImpl(dp::Data const&, dp::String const&); virtual ~IdentityImpl(); virtual void addRef(); virtual void release(); virtual void getEECert(); virtual void getPrivateKey(); void changePKCS12Password(dp::Data const&, dp::String const&, dp::String const&); }; class RSAKeyImpl: public dpcrypt::Key { public: RSAKeyImpl(int, dp::Data const&); RSAKeyImpl(int, rsa_st*); virtual ~RSAKeyImpl(); virtual void addRef(); virtual void release(); virtual void getKeyBitSize(); virtual void getKeyType(); virtual void serialize(); }; class SHA1HashImpl: public dpcrypt::Hash { public: SHA1HashImpl(); virtual ~SHA1HashImpl(); virtual void addRef(); virtual void release(); virtual void update(dp::Data const&); virtual void finalize(); }; class SymKeyImpl: public dpcrypt::Key { public: SymKeyImpl(dp::Data const&); virtual ~SymKeyImpl(); virtual void addRef(); virtual void release(); virtual void getKeyBitSize(); virtual void getKeyType(); virtual void serialize(); }; } #endif // _COSSL_H