Kea: isc::gss_tsig::GssTsigCfg Class Reference

| Kea 3.2.0-git

isc::gss_tsig::GssTsigCfg Class Reference

GSS-TSIG hook configuration. More...

`#include <gss_tsig_cfg.h>`

## Public Member Functions
| GssTsigCfg ()
| Constructor.
virtual | ~GssTsigCfg ()
| Destructor.
void | addServer (DnsServerPtr server)
| Add a DNS server to the list.
void | buildServerRevMap (isc::d2::D2CfgContextPtr d2_config)
| Build the reverse map.
void | clearServers ()
| Clear the DNS server list and reverse map.
void | configure (isc::data::ConstElementPtr params)
| Configure.
const std::string & | getClientKeyTab () const
| Get the client key table specification.
const std::string & | getCredsCache () const
| Get the credentials cache specification.
bool | getIgnoreBadDirection () const
| Get the ignore bad direction flag.
uint32_t | getMaxKeyLifetime () const
| Get the maximum TKEY lifetime.
DnsServerPtr | getServer (const isc::d2::DnsServerInfoPtr &server_info) const
| Get the DNS server from a server info.
DnsServerPtr | getServer (const std::string &id) const
| Get the DNS server from its ID.
const DnsServerList & | getServerList () const
| Get the DNS server list.
const DnsServerRevMap & | getServerRevMap () const
| Get the DNS server reverse map.
void | setClientKeyTab (const std::string &client_keytab)
| Set the client key table specification.
void | setCredsCache (const std::string &creds_cache)
| Set the credentials cache specification.
void | setIgnoreBadDirection (bool ignore_bad_direction)
| Set the ignore bad direction flag.
void | setMaxKeyLifetime (uint32_t max_tkey_lifetime)
| Set the maximum TKEY lifetime.

## Static Public Attributes
static const isc::data::SimpleKeywords | GLOBAL_PARAMETERS
| This table defines all global parameters.

## Detailed Description

GSS-TSIG hook configuration.

Definition at line 430 of file gss_tsig_cfg.h.

## Constructor & Destructor Documentation

## ◆ GssTsigCfg()

isc::gss_tsig::GssTsigCfg::GssTsigCfg | ( |  | ) |

Constructor.

Definition at line 307 of file gss_tsig_cfg.cc.

## ◆ ~GssTsigCfg()

isc::gss_tsig::GssTsigCfg::~GssTsigCfg | ( |  | ) |
| virtual

Destructor.

Definition at line 312 of file gss_tsig_cfg.cc.

## Member Function Documentation

## ◆ addServer()

void isc::gss_tsig::GssTsigCfg::addServer | ( | DnsServerPtr | server | ) |
| inline

Add a DNS server to the list.

Note
  : the caller must check if the server ID is already used.

Parameters

  server | A new DNS server to add to the list.

Definition at line 453 of file gss_tsig_cfg.h.

Referenced by configure().

## ◆ buildServerRevMap()

void isc::gss_tsig::GssTsigCfg::buildServerRevMap | ( | isc::d2::D2CfgContextPtr | d2_config | ) |

Build the reverse map.

Parameters

  d2_config | D2 configuration.

Definition at line 335 of file gss_tsig_cfg.cc.

References getServerList(), isc::db::info, and isc_throw.

Here is the call graph for this function:

## ◆ clearServers()

void isc::gss_tsig::GssTsigCfg::clearServers | ( |  | ) |
| inline

Clear the DNS server list and reverse map.

Definition at line 477 of file gss_tsig_cfg.h.

## ◆ configure()

void isc::gss_tsig::GssTsigCfg::configure | ( | isc::data::ConstElementPtr | params | ) |

Configure.

Parameters

  params | A map element with parameters.

Exceptions

  BadValue | and similar exceptions on error.

Definition at line 351 of file gss_tsig_cfg.cc.

References addServer(), isc::data::SimpleParser::checkKeywords(), isc::gss_tsig::DnsServer::DEFAULT_KEY_LIFETIME, isc::gss_tsig::DnsServer::DEFAULT_REKEY_INTERVAL, isc::gss_tsig::DnsServer::DEFAULT_RETRY_INTERVAL, isc::data::SimpleParser::getInteger(), getServer(), GLOBAL_PARAMETERS, isc::gss_tsig::GssApiSecCtx::ignore_bad_direction_, isc_throw, Element::map, isc::gss_tsig::DnsServer::SERVER_PARAMETERS, setClientKeyTab(), setCredsCache(), setMaxKeyLifetime(), Element::string, isc::asiodns::IOFetch::TCP, isc::asiodns::IOFetch::UDP, and isc::Exception::what().

Here is the call graph for this function:

## ◆ getClientKeyTab()

const std::string & isc::gss_tsig::GssTsigCfg::getClientKeyTab | ( |  | ) | const
| inline

Get the client key table specification.

Returns
  the client key table specification.

Definition at line 490 of file gss_tsig_cfg.h.

## ◆ getCredsCache()

const std::string & isc::gss_tsig::GssTsigCfg::getCredsCache | ( |  | ) | const
| inline

Get the credentials cache specification.

Returns
  the credentials cache specification.

Definition at line 504 of file gss_tsig_cfg.h.

## ◆ getIgnoreBadDirection()

bool isc::gss_tsig::GssTsigCfg::getIgnoreBadDirection | ( |  | ) | const
| inline

Get the ignore bad direction flag.

Returns
  the ignore bad direction flag.

Definition at line 538 of file gss_tsig_cfg.h.

## ◆ getMaxKeyLifetime()

uint32_t isc::gss_tsig::GssTsigCfg::getMaxKeyLifetime | ( |  | ) | const
| inline

Get the maximum TKEY lifetime.

Returns
  the maximum TKEY lifetime.

Definition at line 524 of file gss_tsig_cfg.h.

## ◆ getServer() [1/2]

DnsServerPtr isc::gss_tsig::GssTsigCfg::getServer | ( | const isc::d2::DnsServerInfoPtr & | server_info | ) | const

Get the DNS server from a server info.

Parameters

  server_info | The server info to find.

Returns
  the DNS server or null if not found.

Definition at line 316 of file gss_tsig_cfg.cc.

Referenced by configure().

## ◆ getServer() [2/2]

DnsServerPtr isc::gss_tsig::GssTsigCfg::getServer | ( | const std::string & | id | ) | const

Get the DNS server from its ID.

Parameters

  id | The server ID.

Returns
  the DNS server or null if not found.

Definition at line 325 of file gss_tsig_cfg.cc.

References get().

Here is the call graph for this function:

## ◆ getServerList()

const DnsServerList & isc::gss_tsig::GssTsigCfg::getServerList | ( |  | ) | const
| inline

Get the DNS server list.

Returns
  the DNS server list.

Definition at line 444 of file gss_tsig_cfg.h.

Referenced by buildServerRevMap().

## ◆ getServerRevMap()

const DnsServerRevMap & isc::gss_tsig::GssTsigCfg::getServerRevMap | ( |  | ) | const
| inline

Get the DNS server reverse map.

Returns
  the DNS server reverse map.

Definition at line 460 of file gss_tsig_cfg.h.

## ◆ setClientKeyTab()

void isc::gss_tsig::GssTsigCfg::setClientKeyTab | ( | const std::string & | client_keytab | ) |
| inline

Set the client key table specification.

Parameters

  client_keytab | A new client key table specification.

Definition at line 497 of file gss_tsig_cfg.h.

Referenced by configure().

## ◆ setCredsCache()

void isc::gss_tsig::GssTsigCfg::setCredsCache | ( | const std::string & | creds_cache | ) |
| inline

Set the credentials cache specification.

Parameters

  creds_cache | A new credentials cache specification.

Definition at line 511 of file gss_tsig_cfg.h.

Referenced by configure().

## ◆ setIgnoreBadDirection()

void isc::gss_tsig::GssTsigCfg::setIgnoreBadDirection | ( | bool | ignore_bad_direction | ) |
| inline

Set the ignore bad direction flag.

Parameters

  ignore_bad_direction | A new ignore bad direction.

Definition at line 545 of file gss_tsig_cfg.h.

## ◆ setMaxKeyLifetime()

void isc::gss_tsig::GssTsigCfg::setMaxKeyLifetime | ( | uint32_t | max_tkey_lifetime | ) |
| inline

Set the maximum TKEY lifetime.

Parameters

  max_tkey_lifetime | A new maximum TKEY lifetime.

Definition at line 531 of file gss_tsig_cfg.h.

Referenced by configure().

## Member Data Documentation

## ◆ GLOBAL_PARAMETERS

const SimpleKeywords isc::gss_tsig::GssTsigCfg::GLOBAL_PARAMETERS
| static

Initial value:
= {
{ "server-principal", Element::string },
{ "client-principal", Element::string },
{ "client-keytab", Element::string },
{ "credentials-cache", Element::string },
{ "gss-replay-flag", Element::boolean },
{ "gss-sequence-flag", Element::boolean },
{ "tkey-lifetime", Element::integer },
{ "rekey-interval", Element::integer },
{ "retry-interval", Element::integer },
{ "tkey-protocol", Element::string },
{ "fallback", Element::boolean },
{ "exchange-timeout", Element::integer },
{ "ignore-bad-direction", Element::boolean },
{ "servers", Element::list },
{ "user-context", Element::map },
{ "comment", Element::string }
}
Element::map
@ map
Definition data.h:160
Element::integer
@ integer
Definition data.h:153
Element::boolean
@ boolean
Definition data.h:155
Element::list
@ list
Definition data.h:159
Element::string
@ string
Definition data.h:157

This table defines all global parameters.

Definition at line 433 of file gss_tsig_cfg.h.

Referenced by configure().

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

- gss_tsig_cfg.h
- gss_tsig_cfg.cc