PSSLCertificate Class Reference

#include <pssl.h>

Inheritance diagram for PSSLCertificate:

PObject List of all members.

Public Member Functions

 PSSLCertificate ()
 PSSLCertificate (const PFilePath &certFile, PSSLFileTypes fileType=PSSLFileTypeDEFAULT)
 PSSLCertificate (const BYTE *certData, PINDEX certSize)
 PSSLCertificate (const PBYTEArray &certData)
 PSSLCertificate (const PString &certString)
 PSSLCertificate (const PSSLCertificate &cert)
PSSLCertificateoperator= (const PSSLCertificate &cert)
 ~PSSLCertificate ()
 operator x509_st * () const
PBoolean CreateRoot (const PString &subject, const PSSLPrivateKey &key)
PBYTEArray GetData () const
PString AsString () const
PBoolean Load (const PFilePath &certFile, PSSLFileTypes fileType=PSSLFileTypeDEFAULT)
PBoolean Save (const PFilePath &keyFile, PBoolean append=PFalse, PSSLFileTypes fileType=PSSLFileTypeDEFAULT)

Protected Attributes

x509_st * certificate

Detailed Description

Certificate for SSL. This class embodies a common environment for all certificates used by the PSSLContext and PSSLChannel classes.


Constructor & Destructor Documentation

PSSLCertificate::PSSLCertificate (  ) 

Create an empty certificate.

PSSLCertificate::PSSLCertificate ( const PFilePath certFile,
PSSLFileTypes  fileType = PSSLFileTypeDEFAULT 
)

Create a new certificate given the file. The type of the certificate key can be specified explicitly, or if PSSLFileTypeDEFAULT it will be determined from the file extension, ".pem" is a text file, anything else eg ".der" is a binary ASN1 file.

Parameters:
certFile  Certificate file
fileType  Type of file to read

PSSLCertificate::PSSLCertificate ( const BYTE *  certData,
PINDEX  certSize 
)

Create certificate from the binary ASN1 DER encoded data specified.

Parameters:
certData  Certificate data
certSize  Size of certificate data

PSSLCertificate::PSSLCertificate ( const PBYTEArray certData  ) 

Create certificate from the binary ASN1 DER encoded data specified.

Parameters:
certData  Certificate data

PSSLCertificate::PSSLCertificate ( const PString certString  ) 

Create certificate from the ASN1 DER base64 encoded data specified.

Parameters:
certString  Certificate data as string

PSSLCertificate::PSSLCertificate ( const PSSLCertificate cert  ) 

Create a copy of the certificate.

PSSLCertificate::~PSSLCertificate (  ) 

Destroy and release storage for certificate.


Member Function Documentation

PSSLCertificate& PSSLCertificate::operator= ( const PSSLCertificate cert  ) 

Create a copy of the certificate.

PSSLCertificate::operator x509_st * (  )  const [inline]

Get internal OpenSSL X509 structure.

PBoolean PSSLCertificate::CreateRoot ( const PString subject,
const PSSLPrivateKey key 
)

Create a new root certificate. The subject name is a string of the form "/name=value/name=value" where name is a short name for the field and value is a string value for the field for example: "/C=ZA/SP=Western Cape/L=Cape Town/O=Thawte Consulting cc" "/OU=Certification Services Division/CN=Thawte Server CA" "/Email=server-certs@thawte.com"

Parameters:
subject  Subject name for certificate
key  Key to sign certificate with

PBYTEArray PSSLCertificate::GetData (  )  const

Get the certificate as binary ASN1 DER encoded data.

PString PSSLCertificate::AsString (  )  const

Get the certificate as ASN1 DER base64 encoded data.

PBoolean PSSLCertificate::Load ( const PFilePath certFile,
PSSLFileTypes  fileType = PSSLFileTypeDEFAULT 
)

Load certificate from file. The type of the certificate key can be specified explicitly, or if PSSLFileTypeDEFAULT it will be determined from the file extension, ".pem" is a text file, anything else eg ".der" is a binary ASN1 file.

Parameters:
certFile  Certificate file
fileType  Type of file to read

PBoolean PSSLCertificate::Save ( const PFilePath keyFile,
PBoolean  append = PFalse,
PSSLFileTypes  fileType = PSSLFileTypeDEFAULT 
)

Save certificate to file. The type of the certificate key can be specified explicitly, or if PSSLFileTypeDEFAULT it will be determined from the file extension, ".pem" is a text file, anything else eg ".der" is a binary ASN1 file.

Parameters:
keyFile  Certificate key file
append  Append to file
fileType  Type of file to write


Member Data Documentation

x509_st* PSSLCertificate::certificate [protected]


The documentation for this class was generated from the following file:
Generated on Mon Feb 23 01:57:58 2009 for PTLib by  doxygen 1.5.1