// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- #ifndef __gnu_javax_crypto_jce_DiffieHellmanImpl__ #define __gnu_javax_crypto_jce_DiffieHellmanImpl__ #pragma interface #include #include extern "Java" { namespace gnu { namespace javax { namespace crypto { namespace jce { class DiffieHellmanImpl; } } } } namespace java { namespace security { class Key; class SecureRandom; namespace spec { class AlgorithmParameterSpec; } } } namespace javax { namespace crypto { class SecretKey; namespace interfaces { class DHPrivateKey; } } } } class gnu::javax::crypto::jce::DiffieHellmanImpl : public ::javax::crypto::KeyAgreementSpi { public: DiffieHellmanImpl(); public: // actually protected ::java::security::Key * engineDoPhase(::java::security::Key *, jboolean); JArray< jbyte > * engineGenerateSecret(); jint engineGenerateSecret(JArray< jbyte > *, jint); ::javax::crypto::SecretKey * engineGenerateSecret(::java::lang::String *); void engineInit(::java::security::Key *, ::java::security::SecureRandom *); void engineInit(::java::security::Key *, ::java::security::spec::AlgorithmParameterSpec *, ::java::security::SecureRandom *); private: void reset(); void checkState(); ::javax::crypto::interfaces::DHPrivateKey * __attribute__((aligned(__alignof__( ::javax::crypto::KeyAgreementSpi)))) key; JArray< jbyte > * result; jboolean last_phase_done; public: static ::java::lang::Class class$; }; #endif // __gnu_javax_crypto_jce_DiffieHellmanImpl__