// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- #ifndef __gnu_javax_net_ssl_provider_AbstractHandshake__ #define __gnu_javax_net_ssl_provider_AbstractHandshake__ #pragma interface #include #include extern "Java" { namespace gnu { namespace classpath { namespace debug { class SystemLogger; } } namespace javax { namespace net { namespace ssl { namespace provider { class AbstractHandshake; class CompressionMethod; class InputSecurityParameters; class OutputSecurityParameters; class Random; class SSLEngineImpl; class SessionImpl; } } } } } namespace java { namespace nio { class ByteBuffer; } namespace security { class MessageDigest; class SecureRandom; } } namespace javax { namespace crypto { class KeyAgreement; namespace interfaces { class DHPrivateKey; } } namespace net { namespace ssl { class SSLEngineResult$HandshakeStatus; } } } } class gnu::javax::net::ssl::provider::AbstractHandshake : public ::java::lang::Object { public: // actually protected AbstractHandshake(::gnu::javax::net::ssl::provider::SSLEngineImpl *); public: virtual ::javax::net::ssl::SSLEngineResult$HandshakeStatus * handleInput(::java::nio::ByteBuffer *); public: // actually protected virtual ::javax::net::ssl::SSLEngineResult$HandshakeStatus * implHandleInput() = 0; public: virtual ::javax::net::ssl::SSLEngineResult$HandshakeStatus * handleOutput(::java::nio::ByteBuffer *); public: // actually protected virtual ::javax::net::ssl::SSLEngineResult$HandshakeStatus * implHandleOutput(::java::nio::ByteBuffer *) = 0; public: // actually package-private virtual ::gnu::javax::net::ssl::provider::InputSecurityParameters * getInputParams(); virtual ::gnu::javax::net::ssl::provider::OutputSecurityParameters * getOutputParams(); virtual ::java::lang::Runnable * getTask(); virtual ::javax::net::ssl::SSLEngineResult$HandshakeStatus * status() = 0; virtual void checkKeyExchange() = 0; virtual void handleV2Hello(::java::nio::ByteBuffer *) = 0; public: // actually protected virtual jboolean pollHandshake(::java::nio::ByteBuffer *); virtual jboolean doHash(); virtual jboolean hasMessage(); private: void reallocateBuffer(jint); public: // actually protected virtual JArray< jbyte > * genV3CertificateVerify(::java::security::MessageDigest *, ::java::security::MessageDigest *, ::gnu::javax::net::ssl::provider::SessionImpl *); virtual JArray< JArray< jbyte > * > * generateKeys(::gnu::javax::net::ssl::provider::Random *, ::gnu::javax::net::ssl::provider::Random *, ::gnu::javax::net::ssl::provider::SessionImpl *); virtual ::java::nio::ByteBuffer * generateFinished(::java::security::MessageDigest *, ::java::security::MessageDigest *, jboolean, ::gnu::javax::net::ssl::provider::SessionImpl *); virtual void initDiffieHellman(::javax::crypto::interfaces::DHPrivateKey *, ::java::security::SecureRandom *); virtual void generateMasterSecret(::gnu::javax::net::ssl::provider::Random *, ::gnu::javax::net::ssl::provider::Random *, ::gnu::javax::net::ssl::provider::SessionImpl *); virtual void setupSecurityParameters(JArray< JArray< jbyte > * > *, jboolean, ::gnu::javax::net::ssl::provider::SSLEngineImpl *, ::gnu::javax::net::ssl::provider::CompressionMethod *); virtual void generatePSKSecret(::java::lang::String *, JArray< jbyte > *, jboolean); static ::gnu::classpath::debug::SystemLogger * logger; static JArray< jbyte > * SERVER_FINISHED; static JArray< jbyte > * CLIENT_FINISHED; private: static JArray< jbyte > * KEY_EXPANSION; static JArray< jbyte > * MASTER_SECRET; static JArray< jbyte > * CLIENT_WRITE_KEY; static JArray< jbyte > * SERVER_WRITE_KEY; static JArray< jbyte > * IV_BLOCK; static JArray< jbyte > * SENDER_CLIENT; static JArray< jbyte > * SENDER_SERVER; public: // actually protected static JArray< jbyte > * PAD1; static JArray< jbyte > * PAD2; ::java::nio::ByteBuffer * __attribute__((aligned(__alignof__( ::java::lang::Object)))) handshakeBuffer; jint handshakeOffset; ::java::security::MessageDigest * sha; ::java::security::MessageDigest * md5; ::gnu::javax::net::ssl::provider::SSLEngineImpl * engine; ::javax::crypto::KeyAgreement * keyAgreement; JArray< jbyte > * preMasterSecret; ::gnu::javax::net::ssl::provider::InputSecurityParameters * inParams; ::gnu::javax::net::ssl::provider::OutputSecurityParameters * outParams; ::java::util::LinkedList * tasks; ::gnu::javax::net::ssl::provider::Random * serverRandom; ::gnu::javax::net::ssl::provider::Random * clientRandom; ::gnu::javax::net::ssl::provider::CompressionMethod * compression; public: // actually package-private static jboolean $assertionsDisabled; public: static ::java::lang::Class class$; }; #endif // __gnu_javax_net_ssl_provider_AbstractHandshake__