#include <tlsbase.h>
Inherited by GnuTLSBase, OpenSSL, SChannel, and TLSDefault.
Inheritance diagram for TLSBase:

Public Member Functions | |
| TLSBase (TLSHandler *th, const std::string server) | |
| virtual | ~TLSBase () |
| virtual bool | init ()=0 |
| void | setInitLib (bool init) |
| virtual bool | encrypt (const std::string &data)=0 |
| virtual int | decrypt (const std::string &data)=0 |
| virtual void | cleanup ()=0 |
| virtual bool | handshake ()=0 |
| virtual bool | isSecure () const |
| virtual void | setCACerts (const StringList &cacerts)=0 |
| virtual const CertInfo & | fetchTLSInfo () const |
| virtual void | setClientCert (const std::string &clientKey, const std::string &clientCerts)=0 |
Definition at line 30 of file tlsbase.h.
|
||||||||||||
|
Constructor.
|
|
|
Virtual destructor. |
|
|
This function performs internal cleanup and will be called after a failed handshake attempt. Implemented in TLSDefault, GnuTLSBase, GnuTLSClient, GnuTLSClientAnon, GnuTLSServerAnon, OpenSSL, and SChannel. |
|
|
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.
Implemented in TLSDefault, GnuTLSBase, OpenSSL, and SChannel. |
|
|
Use this function to feed unencrypted data to the encryption implementation. The encrypted result will be pushed to the TLSHandler's handleEncryptedData() function.
Implemented in TLSDefault, GnuTLSBase, OpenSSL, and SChannel. |
|
|
This function is used to retrieve certificate and connection info of a encrypted connection.
Reimplemented in TLSDefault. |
|
|
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().
Implemented in TLSDefault, GnuTLSBase, OpenSSL, and SChannel. |
|
|
Initializes the TLS module. This function must be called (and execute successfully) before the module can be used.
Implemented in TLSDefault, GnuTLSClient, GnuTLSClientAnon, GnuTLSServerAnon, OpenSSL, and SChannel. |
|
|
Returns the state of the encryption.
Reimplemented in TLSDefault. |
|
|
Use this function to set a number of trusted root CA certificates which shall be used to verify a servers certificate.
Implemented in TLSDefault, GnuTLSBase, GnuTLSClient, OpenSSL, and SChannel. |
|
||||||||||||
|
Use this function to set the user's certificate and private key. The certificate will be presented to the server upon request and can be used for SASL EXTERNAL authentication. The user's certificate file should be a bundle of more than one certificate in PEM format. The first one in the file should be the user's certificate, each cert following that one should have signed the previous one.
Implemented in TLSDefault, GnuTLSBase, GnuTLSClient, OpenSSL, and SChannel. |
|
|
Enables/disables initialization of the underlying TLS library. By default, initialization is performed. You may want to switch it off if the TLS library is used elsewhere in your applicationas well and you have no control over the initialization.
|
1.4.1