7#ifndef CTRL_DHCPV4_SRV_H
8#define CTRL_DHCPV4_SRV_H
34 uint16_t client_port = 0);
45 void init(
const std::string& config_file);
126 static void sessionReader(
void);
137 commandShutdownHandler(
const std::string& command,
150 commandConfigReloadHandler(
const std::string& command,
162 commandConfigGetHandler(
const std::string& command,
174 commandConfigHashGetHandler(
const std::string& command,
191 commandConfigWriteHandler(
const std::string& command,
204 commandConfigSetHandler(
const std::string& command,
217 commandConfigTestHandler(
const std::string& command,
228 commandDhcpDisableHandler(
const std::string& command,
238 commandDhcpEnableHandler(
const std::string& command,
251 commandVersionGetHandler(
const std::string& command,
263 commandBuildReportHandler(
const std::string& command,
280 commandLeasesReclaimHandler(
const std::string& command,
293 commandSubnet4SelectTestHandler(
const std::string& command,
306 commandSubnet4o6SelectTestHandler(
const std::string& command,
318 commandServerTagGetHandler(
const std::string& command,
331 commandConfigBackendPullHandler(
const std::string& command,
343 commandStatusGetHandler(
const std::string& command,
356 commandStatisticSetMaxSampleCountAllHandler(
const std::string& command,
369 commandStatisticSetMaxSampleAgeAllHandler(
const std::string& command,
382 commandLfcStartHandler(
const std::string& command,
401 void reclaimExpiredLeases(
const size_t max_leases,
const uint16_t timeout,
402 const bool remove_lease,
403 const uint16_t max_unwarned_cycles);
413 void deleteExpiredReclaimedLeases(
const uint32_t secs);
480 boost::shared_ptr<unsigned> failure_count);
Controlled version of the DHCPv4 server.
virtual ~ControlledDhcpv4Srv()
Destructor.
static isc::data::ConstElementPtr finishConfigHookLibraries(isc::data::ConstElementPtr config)
Configuration checker for hook libraries.
isc::data::ConstElementPtr loadConfigFile(const std::string &file_name)
Configure DHCPv4 server using the configuration file specified.
void cleanup()
Performs cleanup, immediately before termination.
ControlledDhcpv4Srv(uint16_t server_port=DHCP4_SERVER_PORT, uint16_t client_port=0)
Constructor.
static isc::data::ConstElementPtr checkConfig(isc::data::ConstElementPtr config)
Configuration checker.
void init(const std::string &config_file)
Initializes the server.
static isc::data::ConstElementPtr processConfig(isc::data::ConstElementPtr config)
Configuration processor.
static ControlledDhcpv4Srv * getInstance()
Returns pointer to the sole instance of Dhcpv4Srv.
virtual void shutdownServer(int exit_value)
Initiates shutdown procedure for the whole DHCPv4 server.
This file contains several functions and constants that are used for handling commands and responses ...
An abstract API for lease database.
boost::shared_ptr< const Element > ConstElementPtr
boost::shared_ptr< TimerMgr > TimerMgrPtr
Type definition of the shared pointer to TimerMgr.
boost::shared_ptr< SrvConfig > SrvConfigPtr
Non-const pointer to the SrvConfig.
boost::shared_ptr< ReconnectCtl > ReconnectCtlPtr
Pointer to an instance of ReconnectCtl.
Defines the logger used by the top-level component of kea-lfc.