blob: c0501a7da46f7c3639fd11597dae85dadbe0c3df [file] [log] [blame]
// 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 <java/lang/Object.h>
#include <gcj/array.h>
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__