OPAL Version 3.10.4

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Class Hierarchy
- Data Fields

Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
H235Authenticator Class Reference

`#include <h235auth.h>`

Inheritance diagram for H235Authenticator:

## Public Types

enum | ValidationResult { e_OK = 0, e_Absent, e_Error, e_InvalidTime, e_BadPassword, e_ReplyAttack, e_Disabled }

## Public Member Functions

| H235Authenticator ()
virtual void | PrintOn (ostream &strm) const
virtual const char * | GetName () const =0
virtual PBoolean | PrepareTokens (PASN_Array &clearTokens, PASN_Array &cryptoTokens)
virtual H235_ClearToken * | CreateClearToken ()
virtual H225_CryptoH323Token * | CreateCryptoToken (bool digits)
virtual PBoolean | Finalise (PBYTEArray &rawPDU)
virtual ValidationResult | ValidateTokens (const PASN_Array &clearTokens, const PASN_Array &cryptoTokens, const PBYTEArray &rawPDU)
virtual ValidationResult | ValidateClearToken (const H235_ClearToken &clearToken)
virtual ValidationResult | ValidateCryptoToken (const H225_CryptoH323Token &cryptoToken, const PBYTEArray &rawPDU)
virtual PBoolean | IsCapability (const H235_AuthenticationMechanism &mechansim, const PASN_ObjectId &algorithmOID)=0
virtual PBoolean | SetCapability (H225_ArrayOf_AuthenticationMechanism &mechansims, H225_ArrayOf_PASN_ObjectId &algorithmOIDs)=0
virtual PBoolean | UseGkAndEpIdentifiers () const
virtual PBoolean | IsSecuredPDU (unsigned rasPDU, PBoolean received) const
virtual PBoolean | IsActive () const
void | Enable (PBoolean enab=true)
void | Disable ()
const PString & | GetRemoteId () const
void | SetRemoteId (const PString &id)
const PString & | GetLocalId () const
void | SetLocalId (const PString &id)
const PString & | GetPassword () const
void | SetPassword (const PString &pw)

## Protected Member Functions

PBoolean | AddCapability (unsigned mechanism, const PString &oid, H225_ArrayOf_AuthenticationMechanism &mechansims, H225_ArrayOf_PASN_ObjectId &algorithmOIDs)

## Protected Attributes

PBoolean | enabled
PString | remoteId
PString | localId
PString | password
unsigned | sentRandomSequenceNumber
unsigned | lastRandomSequenceNumber
unsigned | lastTimestamp
int | timestampGracePeriod
PMutex | mutex

## Detailed Description

This abtract class embodies an H.235 authentication mechanism. NOTE: descendants must have a Clone() function for correct operation.

## Member Enumeration Documentation

enum H235Authenticator::ValidationResult

Enumerator:

  e_OK |
  e_Absent | Security parameters and Msg are ok, no security attacks.
  e_Error | Security parameters are expected but absent.
  e_InvalidTime | Security parameters are present but incorrect.
  e_BadPassword | Security parameters indicate peer has bad real time clock.
  e_ReplyAttack | Security parameters indicate bad password in token.
  e_Disabled | Security parameters indicate an attack was made. Security is disabled by local system

## Constructor & Destructor Documentation

H235Authenticator::H235Authenticator | ( |  | ) |

## Member Function Documentation

PBoolean H235Authenticator::AddCapability | ( | unsigned | mechanism,
|  | const PString & | oid,
|  | H225_ArrayOf_AuthenticationMechanism & | mechansims,
|  | H225_ArrayOf_PASN_ObjectId & | algorithmOIDs
| ) |  |

protected

virtual H235_ClearToken* H235Authenticator::CreateClearToken | ( |  | ) |

virtual

Reimplemented in H235AuthCAT.

virtual H225_CryptoH323Token* H235Authenticator::CreateCryptoToken | ( | bool | digits | ) |

virtual

Reimplemented in H235AuthSimpleMD5.

void H235Authenticator::Disable | ( |  | ) |

inline

References enabled.

void H235Authenticator::Enable | ( | PBoolean | enab = `true` | ) |

inline

References enabled.

virtual PBoolean H235Authenticator::Finalise | ( | PBYTEArray & | rawPDU | ) |

virtual

const PString& H235Authenticator::GetLocalId | ( |  | ) | const

inline

References localId.

virtual const char* H235Authenticator::GetName | ( |  | ) | const

pure virtual

Implemented in H235AuthCAT, and H235AuthSimpleMD5.

const PString& H235Authenticator::GetPassword | ( |  | ) | const

inline

References password.

const PString& H235Authenticator::GetRemoteId | ( |  | ) | const

inline

References remoteId.

virtual PBoolean H235Authenticator::IsActive | ( |  | ) | const

virtual

virtual PBoolean H235Authenticator::IsCapability | ( | const H235_AuthenticationMechanism & | mechansim,
|  | const PASN_ObjectId & | algorithmOID
| ) |  |

pure virtual

Implemented in H235AuthCAT, and H235AuthSimpleMD5.

virtual PBoolean H235Authenticator::IsSecuredPDU | ( | unsigned | rasPDU,
|  | PBoolean | received
| ) |  | const

virtual

Reimplemented in H235AuthCAT, and H235AuthSimpleMD5.

virtual PBoolean H235Authenticator::PrepareTokens | ( | PASN_Array & | clearTokens,
|  | PASN_Array & | cryptoTokens
| ) |  |

virtual

virtual void H235Authenticator::PrintOn | ( | ostream & | strm | ) | const

virtual

virtual PBoolean H235Authenticator::SetCapability | ( | H225_ArrayOf_AuthenticationMechanism & | mechansims,
|  | H225_ArrayOf_PASN_ObjectId & | algorithmOIDs
| ) |  |

pure virtual

Implemented in H235AuthCAT, and H235AuthSimpleMD5.

void H235Authenticator::SetLocalId | ( | const PString & | id | ) |

inline

References localId.

void H235Authenticator::SetPassword | ( | const PString & | pw | ) |

inline

References password.

void H235Authenticator::SetRemoteId | ( | const PString & | id | ) |

inline

References remoteId.

virtual PBoolean H235Authenticator::UseGkAndEpIdentifiers | ( |  | ) | const

virtual

virtual ValidationResult H235Authenticator::ValidateClearToken | ( | const H235_ClearToken & | clearToken | ) |

virtual

Reimplemented in H235AuthCAT.

virtual ValidationResult H235Authenticator::ValidateCryptoToken | ( | const H225_CryptoH323Token & | cryptoToken,
|  | const PBYTEArray & | rawPDU
| ) |  |

virtual

Reimplemented in H235AuthSimpleMD5.

virtual ValidationResult H235Authenticator::ValidateTokens | ( | const PASN_Array & | clearTokens,
|  | const PASN_Array & | cryptoTokens,
|  | const PBYTEArray & | rawPDU
| ) |  |

virtual

## Field Documentation

PBoolean H235Authenticator::enabled

protected

Referenced by Disable(), and Enable().

unsigned H235Authenticator::lastRandomSequenceNumber

protected

unsigned H235Authenticator::lastTimestamp

protected

PString H235Authenticator::localId

protected

Referenced by GetLocalId(), and SetLocalId().

PMutex H235Authenticator::mutex

protected

PString H235Authenticator::password

protected

Referenced by GetPassword(), and SetPassword().

PString H235Authenticator::remoteId

protected

Referenced by GetRemoteId(), and SetRemoteId().

unsigned H235Authenticator::sentRandomSequenceNumber

protected

int H235Authenticator::timestampGracePeriod

protected

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

- h235auth.h