Kea 3.1.8
isc::radius::RadiusService Class Reference

Radius service. More...

#include <radius_service.h>

Inheritance diagram for isc::radius::RadiusService:

Public Member Functions

 RadiusService (const std::string &name)
 Constructor.
virtual ~RadiusService ()
 Destructor.
data::ElementPtr toElement () const override
 Unparse service configuration.
Public Member Functions inherited from isc::data::CfgToElement
virtual ~CfgToElement ()
 Destructor.

Public Attributes

CfgAttributes attributes_
 Attribute configurations.
bool enabled_
 Enable flag.
asiolink::IntervalTimerPtr idle_timer_
 Idle timer.
long idle_timer_interval_
 Idle timer interval in seconds.
size_t max_pending_requests_
 Maximum number of pending requests.
std::string name_
 Name (access or accounting).
bool peer_updates_
 Peer updates flag.
Servers servers_
 Server list.

Protected Member Functions

void cancelIdleTimer ()
 Cancel idle timer.

Static Protected Attributes

static std::mutex idle_timer_mutex_
 Idle timer mutex.

Detailed Description

Radius service.

Radius offers two independent services: access/authorization and accounting.

Definition at line 27 of file radius_service.h.

Constructor & Destructor Documentation

◆ RadiusService()

isc::radius::RadiusService::RadiusService ( const std::string & name)
explicit

◆ ~RadiusService()

isc::radius::RadiusService::~RadiusService ( )
virtual

Destructor.

Definition at line 28 of file radius_service.cc.

References cancelIdleTimer(), and idle_timer_mutex_.

Here is the call graph for this function:

Member Function Documentation

◆ cancelIdleTimer()

void isc::radius::RadiusService::cancelIdleTimer ( )
protected

Cancel idle timer.

Note
: The caller must hold the idle timer mutex.

Definition at line 63 of file radius_service.cc.

References idle_timer_.

Referenced by ~RadiusService(), isc::radius::RadiusAccess::setIdleTimer(), isc::radius::RadiusAccounting::setIdleTimer(), and isc::radius::RadiusTls::setIdleTimer().

◆ toElement()

ElementPtr isc::radius::RadiusService::toElement ( ) const
overridevirtual

Unparse service configuration.

Returns
a pointer to unparsed configuration.

Implements isc::data::CfgToElement.

Definition at line 34 of file radius_service.cc.

References attributes_, Element::create(), Element::createList(), Element::createMap(), enabled_, idle_timer_interval_, and servers_.

Here is the call graph for this function:

Member Data Documentation

◆ attributes_

CfgAttributes isc::radius::RadiusService::attributes_

◆ enabled_

bool isc::radius::RadiusService::enabled_

Enable flag.

Definition at line 47 of file radius_service.h.

Referenced by RadiusService(), and toElement().

◆ idle_timer_

◆ idle_timer_interval_

long isc::radius::RadiusService::idle_timer_interval_

◆ idle_timer_mutex_

std::mutex isc::radius::RadiusService::idle_timer_mutex_
staticprotected

Idle timer mutex.

Note
: shared between all instances of RadiusService.

Definition at line 76 of file radius_service.h.

Referenced by ~RadiusService(), isc::radius::RadiusAccess::setIdleTimer(), isc::radius::RadiusAccounting::setIdleTimer(), and isc::radius::RadiusTls::setIdleTimer().

◆ max_pending_requests_

size_t isc::radius::RadiusService::max_pending_requests_

Maximum number of pending requests.

Definition at line 59 of file radius_service.h.

Referenced by RadiusService().

◆ name_

std::string isc::radius::RadiusService::name_

Name (access or accounting).

Definition at line 44 of file radius_service.h.

Referenced by RadiusService().

◆ peer_updates_

bool isc::radius::RadiusService::peer_updates_

Peer updates flag.

Definition at line 50 of file radius_service.h.

Referenced by RadiusService().

◆ servers_

Servers isc::radius::RadiusService::servers_

Server list.

Definition at line 53 of file radius_service.h.

Referenced by toElement().


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