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;
200 #endif // CONNECTIONTLS_H__
An abstract base class for a connection.
virtual TLSBase * getTLSBase(TLSHandler *th, const std::string server)
void registerTLSHandler(TLSHandler *th)
std::list< std::string > StringList
This is an abstract base class to receive events from a ConnectionBase-derived object.
void setCACerts(const StringList &cacerts)
This is an abstraction of the various TLS backends.
The namespace for the gloox library.
An abstract base class for TLS implementations.
const CertInfo & fetchTLSInfo() const
An implementation of log sink and source.
An interface that allows for interacting with TLS implementations derived from TLSBase.
This is an implementation of a TLS/SSL connection.
void setClientCert(const std::string &clientKey, const std::string &clientCerts)