PSSLDiffieHellman Class Reference

Diffie-Hellman parameters for SSL. More...

`#include <pssl.h>`

Inheritance diagram for PSSLDiffieHellman:

## Public Member Functions

| PSSLDiffieHellman ()
| Create an empty set of Diffie-Hellman parameters. More...
| PSSLDiffieHellman (const PFilePath &dhFile, PSSLFileTypes fileType=PSSLFileTypeDEFAULT)
| Create a new set of Diffie-Hellman parameters given the file. More...
| PSSLDiffieHellman (const BYTE *pData, PINDEX pSize, const BYTE *gData, PINDEX gSize)
| Create a set of Diffie-Hellman parameters. More...
| PSSLDiffieHellman (const PSSLDiffieHellman &dh)
| Create a copy of the Diffie-Hellman parameters. More...
PSSLDiffieHellman & | operator= (const PSSLDiffieHellman &dh)
| Create a copy of the Diffie-Hellman parameters. More...
| ~PSSLDiffieHellman ()
| Destroy and release storage for Diffie-Hellman parameters. More...
| operator dh_st * () const
| Get internal OpenSSL DH structure. More...
PBoolean | Load (const PFilePath &dhFile, PSSLFileTypes fileType=PSSLFileTypeDEFAULT)
| Load Diffie-Hellman parameters from file. More...
Public Member Functions inherited from PObject
virtual | ~PObject ()
virtual PObject * | Clone () const
| Create a copy of the class on the heap. More...
virtual PINDEX | HashFunction () const
| This function yields a hash value required by the `PDictionary` class. More...
virtual const char * | GetClass (unsigned ancestor=0) const
| Get the current dynamic type of the object instance. More...
PBoolean | IsClass (const char *cls) const
virtual PBoolean | InternalIsDescendant (const char *clsName) const
| Determine if the dynamic type of the current instance is a descendent of the specified class. More...
virtual Comparison | Compare (const PObject &obj) const
| Compare the two objects and return their relative rank. More...
virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const
| Determine the byte wise comparison of two objects. More...
bool | operator== (const PObject &obj) const
| Compare the two objects. More...
bool | operator!= (const PObject &obj) const
| Compare the two objects. More...
bool | operator< (const PObject &obj) const
| Compare the two objects. More...
bool | operator> (const PObject &obj) const
| Compare the two objects. More...
bool | operator<= (const PObject &obj) const
| Compare the two objects. More...
bool | operator>= (const PObject &obj) const
| Compare the two objects. More...
virtual void | PrintOn (ostream &strm) const
| Output the contents of the object to the stream. More...
virtual void | ReadFrom (istream &strm)
| Input the contents of the object from the stream. More...

## Protected Attributes

dh_st * | dh

## Additional Inherited Members

Public Types inherited from PObject
enum | Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }
| Result of the comparison operation performed by the `Compare()` function. More...
Static Public Member Functions inherited from PObject
static const char * | Class ()
| Get the name of the class as a C string. More...
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
| Internal function caled from CompareObjectMemoryDirect() More...
Protected Member Functions inherited from PObject
| PObject ()
| Constructor for PObject, made protected so cannot ever create one on its own. More...

## Detailed Description

Diffie-Hellman parameters for SSL.

This class embodies a set of Diffie Helman parameters as used by PSSLContext and PSSLChannel classes.

## Constructor & Destructor Documentation

PSSLDiffieHellman::PSSLDiffieHellman | ( |  | ) |

Create an empty set of Diffie-Hellman parameters.

PSSLDiffieHellman::PSSLDiffieHellman | ( | const PFilePath & | dhFile,
|  | PSSLFileTypes | fileType = `PSSLFileTypeDEFAULT`
| ) |  |

Create a new set of Diffie-Hellman parameters given the file.

The type of the file 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

  dhFile | Diffie-Hellman parameters file
  fileType | Type of file to read

PSSLDiffieHellman::PSSLDiffieHellman | ( | const BYTE * | pData,
|  | PINDEX | pSize,
|  | const BYTE * | gData,
|  | PINDEX | gSize
| ) |  |

Create a set of Diffie-Hellman parameters.

Parameters

  pData | P data
  pSize | Size of P data
  gData | G data
  gSize | Size of G data

PSSLDiffieHellman::PSSLDiffieHellman | ( | const PSSLDiffieHellman & | dh | ) |

Create a copy of the Diffie-Hellman parameters.

PSSLDiffieHellman::~PSSLDiffieHellman | ( |  | ) |

Destroy and release storage for Diffie-Hellman parameters.

## Member Function Documentation

PBoolean PSSLDiffieHellman::Load | ( | const PFilePath & | dhFile,
|  | PSSLFileTypes | fileType = `PSSLFileTypeDEFAULT`
| ) |  |

Load Diffie-Hellman parameters from file.

The type of the file 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

  dhFile | Diffie-Hellman parameters file
  fileType | Type of file to read

PSSLDiffieHellman::operator dh_st * | ( |  | ) | const

inline

Get internal OpenSSL DH structure.

References dh.

PSSLDiffieHellman& PSSLDiffieHellman::operator= | ( | const PSSLDiffieHellman & | dh | ) |

Create a copy of the Diffie-Hellman parameters.

## Member Data Documentation

dh_st* PSSLDiffieHellman::dh

protected

Referenced by operator dh_st *().

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

- pssl.h