gloox  1.1-svn
Public Member Functions | List of all members
GnuTLSBase Class Reference

#include <tlsgnutlsbase.h>

Inheritance diagram for GnuTLSBase:
Inheritance graph
[legend]

Public Member Functions

 GnuTLSBase (TLSHandler *th, const std::string &server=EmptyString)
virtual ~GnuTLSBase ()
virtual bool encrypt (const std::string &data)
virtual int decrypt (const std::string &data)
virtual void cleanup ()
virtual bool handshake ()
- Public Member Functions inherited from TLSBase
 TLSBase (TLSHandler *th, const std::string server)
virtual ~TLSBase ()
virtual bool init (const std::string &clientKey=EmptyString, const std::string &clientCerts=EmptyString, const StringList &cacerts=StringList())=0
void setInitLib (bool init)
virtual void setSubject (const std::string &subject)
virtual bool isSecure () const
virtual const CertInfofetchTLSInfo () const

Detailed Description

This is the common base class for (stream) encryption using GnuTLS.

You should not need to use this class directly.

Author
Jakob Schroeter js@ca.nosp@m.maya.nosp@m..net
Since
0.9

Definition at line 38 of file tlsgnutlsbase.h.

Constructor & Destructor Documentation

GnuTLSBase ( TLSHandler th,
const std::string &  server = EmptyString 
)

Constructor.

Parameters
thThe TLSHandler to handle TLS-related events.
serverThe server to use in certificate verification.

Definition at line 26 of file tlsgnutlsbase.cpp.

~GnuTLSBase ( )
virtual

Virtual destructor.

Definition at line 32 of file tlsgnutlsbase.cpp.

Member Function Documentation

void cleanup ( )
virtual

This function performs internal cleanup and will be called after a failed handshake attempt.

Implements TLSBase.

Reimplemented in GnuTLSClient, GnuTLSClientAnon, GnuTLSServer, and GnuTLSServerAnon.

Definition at line 90 of file tlsgnutlsbase.cpp.

int decrypt ( const std::string &  data)
virtual

Use this function to feed encrypted data or received handshake data to the encryption implementation. Handshake data will be eaten, unencrypted data will be pushed to the TLSHandler's handleDecryptedData() function.

Parameters
dataThe data to decrypt.
Returns
The number of bytes used from the input.

Implements TLSBase.

Definition at line 63 of file tlsgnutlsbase.cpp.

bool encrypt ( const std::string &  data)
virtual

Use this function to feed unencrypted data to the encryption implementation. The encrypted result will be pushed to the TLSHandler's handleEncryptedData() function.

Parameters
dataThe data to encrypt.
Returns
Whether or not the data was used successfully.

Implements TLSBase.

Definition at line 44 of file tlsgnutlsbase.cpp.

bool handshake ( )
virtual

This functiopn performs the TLS handshake. Handshake data from the server side should be fed in using decrypt(). Handshake data that is to be sent to the other side is pushed through TLSBase's handleEncryptedData().

Returns
True if the handshake was successful or if more input is needed, false if the handshake failed.

Implements TLSBase.

Definition at line 113 of file tlsgnutlsbase.cpp.


The documentation for this class was generated from the following files: