summaryrefslogtreecommitdiffstats
path: root/src/lib/dhcpsrv/libdhcpsrv.dox
diff options
context:
space:
mode:
authorFrancis Dupont <fdupont@isc.org>2021-11-26 15:31:35 +0100
committerRazvan Becheriu <razvan@isc.org>2022-01-06 13:48:45 +0100
commita5871b3983064235fb0dbb4d54093dc09c82f20e (patch)
treecd63897e2d14b012e827970ccf3ef3dbcfcabe49 /src/lib/dhcpsrv/libdhcpsrv.dox
parent[#1082] Checked for updates (diff)
downloadkea-a5871b3983064235fb0dbb4d54093dc09c82f20e.tar.xz
kea-a5871b3983064235fb0dbb4d54093dc09c82f20e.zip
[#1082] Checkpoint: updated failing UTs
Diffstat (limited to 'src/lib/dhcpsrv/libdhcpsrv.dox')
-rw-r--r--src/lib/dhcpsrv/libdhcpsrv.dox25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/lib/dhcpsrv/libdhcpsrv.dox b/src/lib/dhcpsrv/libdhcpsrv.dox
index fb22a76ad2..8435afccb4 100644
--- a/src/lib/dhcpsrv/libdhcpsrv.dox
+++ b/src/lib/dhcpsrv/libdhcpsrv.dox
@@ -16,6 +16,7 @@ client, relay and other tools like perfdhcp) code, please see
This library contains several crucial elements for the operation of the DHCP server:
+- isc::dhcp::CfgGlobals - global scalar (i.e. not list or map) parameters.
- isc::dhcp::LeaseMgr - lease manager is the name for the database backend that stores
leases.
- isc::dhcp::CfgMgr - configuration manager that holds DHCP specific
@@ -29,6 +30,30 @@ This library contains several crucial elements for the operation of the DHCP ser
- isc::dhcp::Dhcp4o6IpcBase - common part (base class) of DHCPv4-over-DHCPv6
inter server communication (aka IPC).
+@section cfgglobals Global Parameters
+
+The global paramaters handle direct (vs using a search in a name to
+value table) access to global scalar (i.e. not list or map) parameter values.
+
+This is related to the procedure to add a new global scalar parameter to
+the DHCPv4 or DHCPv6 (DHCPvX below) server implementation:
+
+- update the src/bin/dhcpX/dhcpX_lexer.ll to add the new token
+- update the src/bin/dhcpX/dhcpX_parser.yy to add the new syntax
+- update the src/bin/dhcpX/json_config_parser.cc to add the new parameter
+ in the global parameter big if statement
+- update the src/lib/dhcpsrv/parsers/simple_parserX.cc file to add the new
+ parameter in the GLOBALX_PARAMETERS keyword list and eventually in the
+ GLOBALX_DEFAULTS list
+- update the cfg_globals.h and cfg_globals.cc files, note that specific to
+ v4 or v6 parameters are after no specific
+- if the parameter exists for shared networks, subnets, etc,
+ the corresponding tables must be updated in simple parser files
+
+Note there is nothing to update for a global parameter in the configuration
+backend: no new column in database schemas, no code in hooks. Of course
+this does not apply to parameters which exist at not global level too.
+
@section leasemgr Lease Manager
LeaseMgr provides a common, unified abstract API for all database backends. All