Kea 3.0.0
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.
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 DnsServerListgetServerList () const
 Get the DNS server list.
const DnsServerRevMapgetServerRevMap () 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 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 302 of file gss_tsig_cfg.cc.

◆ ~GssTsigCfg()

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

Destructor.

Definition at line 307 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
serverA 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_configD2 configuration.

Definition at line 330 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
paramsA map element with parameters.
Exceptions
BadValueand similar exceptions on error.

Definition at line 346 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_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.

◆ 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_infoThe server info to find.
Returns
the DNS server or null if not found.

Definition at line 311 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
idThe server ID.
Returns
the DNS server or null if not found.

Definition at line 320 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_keytabA 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_cacheA new credentials cache specification.

Definition at line 511 of file gss_tsig_cfg.h.

Referenced by configure().

◆ setMaxKeyLifetime()

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

Set the maximum TKEY lifetime.

Parameters
max_tkey_lifetimeA 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 },
{ "servers", Element::list },
{ "user-context", Element::map },
{ "comment", Element::string }
}
@ map
Definition data.h:147
@ integer
Definition data.h:140
@ boolean
Definition data.h:142
@ list
Definition data.h:146
@ string
Definition data.h:144

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: