Kea 3.1.9
radius_tls.cc
Go to the documentation of this file.
1// Copyright (C) 2026 Internet Systems Consortium, Inc. ("ISC")
2//
3// This Source Code Form is subject to the terms of the Mozilla Public
4// License, v. 2.0. If a copy of the MPL was not distributed with this
5// file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
7#include <config.h>
8
9#include <radius_status.h>
10#include <radius_tls.h>
12
13using namespace std;
14using namespace isc;
15using namespace isc::asiolink;
16using namespace isc::util;
17
18namespace isc {
19namespace radius {
20
23
24void
28 if (idle_timer_interval_ <= 0) {
29 return;
30 }
31 // Cope to one day.
32 long secs = idle_timer_interval_;
33 if (secs > 24*60*60) {
34 secs = 24*60*60;
35 }
36 idle_timer_.reset(new IntervalTimer(RadiusImpl::instance().getIOContext()));
38 secs * 1000, IntervalTimer::REPEATING);
39}
40
41void
43 AttributesPtr send_attrs;
44 RadiusTlsStatusPtr handler(new RadiusTlsStatus(send_attrs, 0));
45 handler->start();
46}
47
48} // end of namespace isc::radius
49} // end of namespace isc
static RadiusImpl & instance()
RadiusImpl is a singleton class.
Definition radius.cc:163
RadiusService(const std::string &name)
Constructor.
asiolink::IntervalTimerPtr idle_timer_
Idle timer.
long idle_timer_interval_
Idle timer interval in seconds.
void cancelIdleTimer()
Cancel idle timer.
static std::mutex idle_timer_mutex_
Idle timer mutex.
Class for communication with TLS servers.
static void IdleTimerCallback()
Idle timer callback.
Definition radius_tls.cc:42
RadiusTls()
Constructor.
Definition radius_tls.cc:21
void setIdleTimer()
Set idle timer.
Definition radius_tls.cc:25
boost::shared_ptr< Attributes > AttributesPtr
Shared pointers to attribute collection.
boost::shared_ptr< RadiusTlsStatus > RadiusTlsStatusPtr
Pointer to access status.
Defines the logger used by the top-level component of kea-lfc.
RAII lock object to protect the code in the same scope with a mutex.