#include <pssl.h>
Public Types | |
SSLv23 | |
SSLv2 | |
SSLv3 | |
TLSv1 | |
enum | Method { SSLv23, SSLv2, SSLv3, TLSv1 } |
Public Member Functions | |
PSSLContext (const void *sessionId=NULL, PINDEX idSize=0) | |
Create a new context for SSL channels. | |
PSSLContext (Method method, const void *sessionId=NULL, PINDEX idSize=0) | |
~PSSLContext () | |
Clean up the SSL context. | |
operator ssl_ctx_st * () const | |
Get the internal SSL context structure. | |
PBoolean | SetCAPath (const PDirectory &caPath) |
Set the path to locate CA certificates. | |
PBoolean | SetCAFile (const PFilePath &caFile) |
Set the CA certificate file. | |
PBoolean | UseCertificate (const PSSLCertificate &certificate) |
Use the certificate specified. | |
PBoolean | UsePrivateKey (const PSSLPrivateKey &key) |
Use the private key specified. | |
PBoolean | UseDiffieHellman (const PSSLDiffieHellman &dh) |
Use the Diffie-Hellman parameters specified. | |
PBoolean | SetCipherList (const PString &ciphers) |
Set the available ciphers to those listed. | |
Protected Member Functions | |
void | Construct (Method method, const void *sessionId, PINDEX idSize) |
Protected Attributes | |
ssl_ctx_st * | context |
This class embodies a common environment for all connections made via SSL using the PSSLChannel class. It includes such things as the version of SSL and certificates, CA's etc.
enum PSSLContext::Method |
PSSLContext::PSSLContext | ( | const void * | sessionId = NULL , |
|
PINDEX | idSize = 0 | |||
) |
Create a new context for SSL channels.
An optional session ID may be provided in the context. This is used to identify sessions across multiple channels in this context. The session ID is a completely arbitrary block of data. If sessionId is non NULL and idSize is zero, then sessionId is assumed to be a pointer to a C string. The default SSL method is SSLv23
sessionId | Pointer to session ID |
idSize | Size of session ID |
PSSLContext::PSSLContext | ( | Method | method, | |
const void * | sessionId = NULL , |
|||
PINDEX | idSize = 0 | |||
) |
method | SSL connection method |
sessionId | Pointer to session ID |
idSize | Size of session ID |
PSSLContext::~PSSLContext | ( | ) |
Clean up the SSL context.
void PSSLContext::Construct | ( | Method | method, | |
const void * | sessionId, | |||
PINDEX | idSize | |||
) | [protected] |
PSSLContext::operator ssl_ctx_st * | ( | ) | const [inline] |
Get the internal SSL context structure.
Set the CA certificate file.
caFile | CA certificate file |
PBoolean PSSLContext::SetCAPath | ( | const PDirectory & | caPath | ) |
Set the path to locate CA certificates.
caPath | Directory for CA certificates |
Set the available ciphers to those listed.
ciphers | List of cipher names. |
PBoolean PSSLContext::UseCertificate | ( | const PSSLCertificate & | certificate | ) |
Use the certificate specified.
PBoolean PSSLContext::UseDiffieHellman | ( | const PSSLDiffieHellman & | dh | ) |
Use the Diffie-Hellman parameters specified.
PBoolean PSSLContext::UsePrivateKey | ( | const PSSLPrivateKey & | key | ) |
Use the private key specified.
ssl_ctx_st* PSSLContext::context [protected] |