13 #ifndef CONNECTIONTLS_H__
14 #define CONNECTIONTLS_H__
18 #include "connectionbase.h"
19 #include "tlsdefault.h"
20 #include "connectiondatahandler.h"
108 void setClientCert(
const std::string& clientKey,
const std::string& clientCerts )
110 m_clientKey = clientKey;
111 m_clientCerts = clientCerts;
138 virtual bool send(
const std::string& data );
144 virtual void disconnect();
147 virtual void cleanup();
150 virtual void getStatistics(
long int& totalIn,
long int& totalOut );
153 virtual void handleReceivedData(
const ConnectionBase* connection,
const std::string& data );
165 virtual void handleEncryptedData(
const TLSBase*,
const std::string& data );
168 virtual void handleDecryptedData(
const TLSBase*,
const std::string& data );
171 virtual void handleHandshakeResult(
const TLSBase* base,
bool success,
CertInfo& certinfo );
190 std::string m_clientCerts;
191 std::string m_clientKey;
An abstract base class for a connection.
This is an abstract base class to receive events from a ConnectionBase-derived object.
This is an implementation of a TLS/SSL connection.
void setCACerts(const StringList &cacerts)
void setClientCert(const std::string &clientKey, const std::string &clientCerts)
void registerTLSHandler(TLSHandler *th)
const CertInfo & fetchTLSInfo() const
virtual TLSBase * getTLSBase(TLSHandler *th, const std::string server)
An implementation of log sink and source.
An abstract base class for TLS implementations.
This is an abstraction of the various TLS backends.
An interface that allows for interacting with TLS implementations derived from TLSBase.
The namespace for the gloox library.
std::list< std::string > StringList