71 return (
lease_cmds.lease6BulkApplyHandler(handle));
104 return (
lease_cmds.leaseGetAllHandler(handle));
115 return (
lease_cmds.leaseGetAllHandler(handle));
126 return (
lease_cmds.leaseGetPageHandler(handle));
137 return (
lease_cmds.leaseGetPageHandler(handle));
148 return (
lease_cmds.leaseGetByHwAddressHandler(handle));
159 return (
lease_cmds.leaseGetByHwAddressHandler(handle));
170 return (
lease_cmds.leaseGetByClientIdHandler(handle));
181 return (
lease_cmds.leaseGetByDuidHandler(handle));
192 return (
lease_cmds.leaseGetByStateHandler(handle));
203 return (
lease_cmds.leaseGetByStateHandler(handle));
214 return (
lease_cmds.leaseGetByHostnameHandler(handle));
225 return (
lease_cmds.leaseGetByHostnameHandler(handle));
258 return(
lease_cmds.lease4UpdateHandler(handle));
269 return(
lease_cmds.lease6UpdateHandler(handle));
302 return(
lease_cmds.lease4ResendDdnsHandler(handle));
313 return(
lease_cmds.lease6ResendDdnsHandler(handle));
456 if (family == AF_INET) {
457 if (proc_name !=
"kea-dhcp4") {
459 <<
", expected kea-dhcp4");
462 if (proc_name !=
"kea-dhcp6") {
464 <<
", expected kea-dhcp6");
520 }
catch (
const std::exception& ex) {
558 }
catch (
const std::exception& ex) {
580 }
catch (
const std::exception& ex) {
602 }
catch (
const std::exception& ex) {
CalloutNextStep
Specifies allowed next steps.
@ NEXT_STEP_DROP
drop the packet
@ NEXT_STEP_SKIP
skip the next processing step
A generic exception that is thrown when an unexpected error condition occurs.
uint16_t getFamily() const
Returns address family.
static CfgMgr & instance()
returns a single instance of Configuration Manager
Per-packet callout handle.
CalloutNextStep getStatus() const
Returns the next processing step.
void registerCommandCallout(const std::string &command_name, CalloutPtr callout)
Register control command handler.
isc::data::ConstElementPtr getParameters()
Get configuration parameter common code.
Singleton which warehouses the configured binding variables, and evaluation of variables for a given ...
Implements the logic for processing commands pertaining to lease manipulation.
Wrapper class around SFLQ pool commands.
int sflqPool4DelHandler(hooks::CalloutHandle &handle)
Delete the SFLQ V4 pool that matches a start and end address.
int sflqPool4GetBySubnetHandler(hooks::CalloutHandle &handle)
The 'sflq-pool4-get-by-subnet' command handler.
int sflqPool6RebuildHandler(hooks::CalloutHandle &handle)
The 'sflq-pool6-rebuild' command handler.
int sflqPool6GetAllHandler(hooks::CalloutHandle &handle)
The 'sflq-pool6-get-all' command handler.
int sflqPool4GetByRangeHandler(hooks::CalloutHandle &handle)
Handles a 'sflq-pool4-by-range' command.
int sflqPool4GetAllHandler(hooks::CalloutHandle &handle)
The 'sflq-pool4-get-all' command handler.
int sflqPool6GetByRangeHandler(hooks::CalloutHandle &handle)
Handles a 'sflq-pool6-by-range' command.
int sflqPool6DelHandler(hooks::CalloutHandle &handle)
Delete the SFLQ V6 pool that matches a start and end address.
int sflqPool6GetBySubnetHandler(hooks::CalloutHandle &handle)
The 'sflq-pool6-get-by-subnet' command handler.
int sflqPool4RebuildHandler(hooks::CalloutHandle &handle)
sflq-pool4-rebuild handler.
static std::string getProcName()
returns the process name This value is used as when forming the default PID file name
This file contains several functions and constants that are used for handling commands and responses ...
#define isc_throw(type, stream)
A shortcut macro to insert known values into exception arguments.
int sflq_pool6_get_all(CalloutHandle &handle)
This is a command callout for 'sflq-pool6-get-all' command.
int lease4_get(CalloutHandle &handle)
This is a command callout for 'lease4-get' command.
int lease4_get_page(CalloutHandle &handle)
This is a command callout for 'lease4-get-page' command.
int lease4_get_by_hw_address(CalloutHandle &handle)
This is a command callout for 'lease4-get-by-hw-address' command.
int lease6_get_by_state(CalloutHandle &handle)
This is a command callout for 'lease6-get-by-state' command.
int sflq_pool6_get_by_range(CalloutHandle &handle)
This is a command callout for 'sflq-pool6-get-by-range' command.
int lease4_update(CalloutHandle &handle)
This is a command callout for 'lease4-update' command.
int leases6_committed(CalloutHandle &handle)
leases6_committed callout implementation.
int lease4_wipe(CalloutHandle &handle)
This is a command callout for 'lease4-wipe' command.
int lease6_resend_ddns(CalloutHandle &handle)
This is a command callout for 'lease6-resend-ddns' command.
int lease6_update(CalloutHandle &handle)
This is a command callout for 'lease6-update' command.
int leases4_committed(CalloutHandle &handle)
leases4_committed callout implementation.
int multi_threading_compatible()
This function is called to retrieve the multi-threading compatibility.
int sflq_pool6_rebuild(CalloutHandle &handle)
This is a command callout for 'sflq-pool6-rebuild' command.
int lease6_get_by_duid(CalloutHandle &handle)
This is a command callout for 'lease6-get-by-duid' command.
int lease4_get_by_client_id(CalloutHandle &handle)
This is a command callout for 'lease4-get-by-client-id' command.
int lease4_get_all(CalloutHandle &handle)
This is a command callout for 'lease4-get-all' command.
int lease4_get_by_hostname(CalloutHandle &handle)
This is a command callout for 'lease4-get-by-hostname' command.
int lease4_offer(CalloutHandle &handle)
lease4_offer callout implementation.
int lease6_bulk_apply(CalloutHandle &handle)
This is a command callout for 'lease6-bulk-apply' command.
int lease4_write(CalloutHandle &handle)
This is a command callout for 'lease4-write' command.
int lease6_get(CalloutHandle &handle)
This is a command callout for 'lease6-get' command.
int sflq_pool6_get_by_subnet(CalloutHandle &handle)
This is a command callout for 'sflq-pool6-get-by-subnet' command.
int lease4_resend_ddns(CalloutHandle &handle)
This is a command callout for 'lease4-resend-ddns' command.
int sflq_pool4_get_by_subnet(CalloutHandle &handle)
This is a command callout for 'sflq-pool4-get-by-subnet' command.
int unload()
This function is called when the library is unloaded.
int lease6_get_page(CalloutHandle &handle)
This is a command callout for 'lease6-get-page' command.
int sflq_pool4_rebuild(CalloutHandle &handle)
This is a command callout for 'sflq-pool4-rebuild' command.
int sflq_pool4_get_by_range(CalloutHandle &handle)
This is a command callout for 'sflq-pool4-get-by-range' command.
int lease6_add(CalloutHandle &handle)
This is a command callout for 'lease6-add' command.
int lease6_get_by_hw_address(CalloutHandle &handle)
This is a command callout for 'lease6-get-by-hw-address' command.
int lease4_add(CalloutHandle &handle)
This is a command callout for 'lease4-add' command.
int lease6_get_all(CalloutHandle &handle)
This is a command callout for 'lease6-get-all' command.
int sflq_pool4_get_all(CalloutHandle &handle)
This is a command callout for 'sflq-pool4-get-all' command.
int lease4_del(CalloutHandle &handle)
This is a command callout for 'lease4-del' command.
int lease6_get_by_hostname(CalloutHandle &handle)
This is a command callout for 'lease6-get-by-hostname' command.
int lease6_write(CalloutHandle &handle)
This is a command callout for 'lease6-write' command.
int lease4_get_by_state(CalloutHandle &handle)
This is a command callout for 'lease4-get-by-state' command.
int lease6_del(CalloutHandle &handle)
This is a command callout for 'lease6-del' command.
int sflq_pool6_del(CalloutHandle &handle)
This is a command callout for 'sflq-pool6-del' command.
int sflq_pool4_del(CalloutHandle &handle)
This is a command callout for 'sflq-pool4-del' command.
int load(LibraryHandle &handle)
This function is called when the library is loaded.
int lease6_wipe(CalloutHandle &handle)
This is a command callout for 'lease6-wipe' command.
const isc::log::MessageID LEASE_CMDS_INIT_OK
const isc::log::MessageID LEASE_CMDS_DEINIT_OK
const isc::log::MessageID LEASE_CMDS_LEASES6_COMMITTED_FAILED
const isc::log::MessageID LEASE_CMDS_LEASE4_OFFER_FAILED
const isc::log::MessageID LEASE_CMDS_LEASES4_COMMITTED_FAILED
const isc::log::MessageID LEASE_CMDS_LOAD_ERROR
#define LOG_ERROR(LOGGER, MESSAGE)
Macro to conveniently test error output and log it.
#define LOG_INFO(LOGGER, MESSAGE)
Macro to conveniently test info output and log it.
boost::shared_ptr< const Element > ConstElementPtr
isc::log::Logger lease_cmds_logger("lease-cmds-hooks")
BindingVariableMgrPtr binding_var_mgr
Singleton that manages configured binding variables.
boost::shared_ptr< BindingVariableMgr > BindingVariableMgrPtr
Defines a shared pointer to a BindingVariableMgr.
Defines the logger used by the top-level component of kea-lfc.