Kea: isc::process Namespace Reference

| Kea 3.2.0-git

isc::process Namespace Reference

## Classes
class | CBControlBase
| Base class for implementing server specific mechanisms to control the use of the Configuration Backends. More...
class | ConfigBase
| Base class for all configurations. More...
class | ConfigControlInfo
| Embodies configuration information used during a server's configuration process. More...
class | ConfigControlParser
| Implements parser for config control information, "config-control". More...
class | ConfigDbInfo
| Provides configuration information used during a server's configuration process. More...
class | Daemon
| Base class for all services. More...
class | DaemonPIDExists
| Exception thrown when the PID file points to a live PID. More...
class | DCfgMgrBase
| Configuration Manager. More...
class | DCfgMgrBaseError
| Exception thrown if the configuration manager encounters an error. More...
class | DControllerBase
| Application Controller. More...
class | DControllerBaseError
| Exception thrown when the controller encounters an operational error. More...
class | DProcessBase
| Application Process Interface. More...
class | DProcessBaseError
| Exception thrown if the process encountered an operational error. More...
class | InvalidUsage
| Exception thrown when the command line is invalid. More...
class | LaunchError
| Exception thrown when the controller launch fails. More...
class | LogConfigParser
| Configures log4cplus by translating Kea configuration structures. More...
struct | LoggingDestination
| Defines single logging destination. More...
class | LoggingInfo
| structure that describes one logging entry More...
class | ProcessInitError
| Exception thrown when the application process fails. More...
class | ProcessRunError
| Exception thrown when the application process encounters an operation in its event loop (i.e. More...
class | VersionMessage
| Exception used to convey version info upwards. More...

## Typedefs
typedef boost::shared_ptr< ConfigControlInfo > | ConfigControlInfoPtr
| Defines a pointer to a ConfigControlInfo.
typedef std::vector< ConfigDbInfo > | ConfigDbInfoList
typedef boost::shared_ptr< ConfigBase > | ConfigPtr
| Non-const pointer to the `ConfigBase`.
typedef boost::shared_ptr< const ConfigControlInfo > | ConstConfigControlInfoPtr
| Defines a pointer to a const ConfigControlInfo.
typedef boost::shared_ptr< DCfgMgrBase > | DCfgMgrBasePtr
| Defines a shared pointer to DCfgMgrBase.
typedef boost::shared_ptr< DControllerBase > | DControllerBasePtr
typedef boost::shared_ptr< DProcessBase > | DProcessBasePtr
| Defines a shared pointer to DProcessBase.
typedef std::map< std::string, isc::data::ConstElementPtr > | ElementMap
| Defines a map of ConstElementPtrs keyed by name.
typedef std::vector< isc::process::LoggingInfo > | LoggingInfoStorage
| storage for logging information in log4cplus format

## Functions
bool | hasObjectId (const db::AuditEntryCollection &audit_entries, const uint64_t &object_id)
| Checks if an object is in a collection od audit entries.
ConstElementPtr | redactConfig (isc::data::ConstElementPtr const &element, std::list< std::string > const &json_path={"*"}, std::string obscure="*****", unsigned max_nesting_depth=isc::data::Element::MAX_NESTING_LEVEL)
| Redact a configuration.

## Variables
const isc::log::MessageID | DCTL_ALREADY_RUNNING = "DCTL_ALREADY_RUNNING"
const isc::log::MessageID | DCTL_CFG_FILE_RELOAD_ERROR = "DCTL_CFG_FILE_RELOAD_ERROR"
const isc::log::MessageID | DCTL_CFG_FILE_RELOAD_SIGNAL_RECVD = "DCTL_CFG_FILE_RELOAD_SIGNAL_RECVD"
const isc::log::MessageID | DCTL_CONFIG_CHECK_COMPLETE = "DCTL_CONFIG_CHECK_COMPLETE"
const isc::log::MessageID | DCTL_CONFIG_COMPLETE = "DCTL_CONFIG_COMPLETE"
const isc::log::MessageID | DCTL_CONFIG_DEPRECATED = "DCTL_CONFIG_DEPRECATED"
const isc::log::MessageID | DCTL_CONFIG_FETCH = "DCTL_CONFIG_FETCH"
const isc::log::MessageID | DCTL_CONFIG_FILE_LOAD_FAIL = "DCTL_CONFIG_FILE_LOAD_FAIL"
const isc::log::MessageID | DCTL_CONFIG_START = "DCTL_CONFIG_START"
const isc::log::MessageID | DCTL_DB_OPEN_CONNECTION_WITH_RETRY_FAILED = "DCTL_DB_OPEN_CONNECTION_WITH_RETRY_FAILED"
const isc::log::MessageID | DCTL_DEPRECATED_OUTPUT_OPTIONS = "DCTL_DEPRECATED_OUTPUT_OPTIONS"
const isc::log::MessageID | DCTL_DEVELOPMENT_VERSION = "DCTL_DEVELOPMENT_VERSION"
const isc::log::MessageID | DCTL_INIT_PROCESS = "DCTL_INIT_PROCESS"
const isc::log::MessageID | DCTL_INIT_PROCESS_FAIL = "DCTL_INIT_PROCESS_FAIL"
const isc::log::MessageID | DCTL_LOG_PATH_SECURITY_WARNING = "DCTL_LOG_PATH_SECURITY_WARNING"
isc::log::Logger | dctl_logger ("dctl")
| Defines the logger used within libkea-process library.
const isc::log::MessageID | DCTL_NOT_RUNNING = "DCTL_NOT_RUNNING"
const isc::log::MessageID | DCTL_OPEN_CONFIG_DB = "DCTL_OPEN_CONFIG_DB"
const isc::log::MessageID | DCTL_PARSER_FAIL = "DCTL_PARSER_FAIL"
const isc::log::MessageID | DCTL_PID_FILE_ERROR = "DCTL_PID_FILE_ERROR"
const isc::log::MessageID | DCTL_PROCESS_FAILED = "DCTL_PROCESS_FAILED"
const isc::log::MessageID | DCTL_ROOT_USER_SECURITY_WARNING = "DCTL_ROOT_USER_SECURITY_WARNING"
const isc::log::MessageID | DCTL_RUN_PROCESS = "DCTL_RUN_PROCESS"
const isc::log::MessageID | DCTL_SHUTDOWN = "DCTL_SHUTDOWN"
const isc::log::MessageID | DCTL_SHUTDOWN_SIGNAL_RECVD = "DCTL_SHUTDOWN_SIGNAL_RECVD"
const isc::log::MessageID | DCTL_STANDALONE = "DCTL_STANDALONE"
const isc::log::MessageID | DCTL_STARTING = "DCTL_STARTING"
const isc::log::MessageID | DCTL_UNLOAD_LIBRARIES_ERROR = "DCTL_UNLOAD_LIBRARIES_ERROR"
const isc::log::MessageID | DCTL_UNSUPPORTED_SIGNAL = "DCTL_UNSUPPORTED_SIGNAL"

## Typedef Documentation

## ◆ ConfigControlInfoPtr

typedef boost::shared_ptr<ConfigControlInfo> isc::process::ConfigControlInfoPtr

Defines a pointer to a ConfigControlInfo.

Definition at line 239 of file config_ctl_info.h.

## ◆ ConfigDbInfoList

typedef std::vector<ConfigDbInfo> isc::process::ConfigDbInfoList

Definition at line 112 of file config_ctl_info.h.

## ◆ ConfigPtr

typedef boost::shared_ptr<ConfigBase> isc::process::ConfigPtr

Non-const pointer to the `ConfigBase`.

Definition at line 176 of file config_base.h.

## ◆ ConstConfigControlInfoPtr

typedef boost::shared_ptr<const ConfigControlInfo> isc::process::ConstConfigControlInfoPtr

Defines a pointer to a const ConfigControlInfo.

Definition at line 242 of file config_ctl_info.h.

## ◆ DCfgMgrBasePtr

typedef boost::shared_ptr<DCfgMgrBase> isc::process::DCfgMgrBasePtr

Defines a shared pointer to DCfgMgrBase.

Definition at line 244 of file d_cfg_mgr.h.

## ◆ DControllerBasePtr

typedef boost::shared_ptr<DControllerBase> isc::process::DControllerBasePtr

Definition at line 78 of file d_controller.h.

## ◆ DProcessBasePtr

typedef boost::shared_ptr<DProcessBase> isc::process::DProcessBasePtr

Defines a shared pointer to DProcessBase.

Definition at line 211 of file d_process.h.

## ◆ ElementMap

typedef std::map<std::string, isc::data::ConstElementPtr> isc::process::ElementMap

Defines a map of ConstElementPtrs keyed by name.

Definition at line 26 of file d_cfg_mgr.h.

## ◆ LoggingInfoStorage

typedef std::vector<isc::process::LoggingInfo> isc::process::LoggingInfoStorage

storage for logging information in log4cplus format

Definition at line 141 of file logging_info.h.

## Function Documentation

## ◆ hasObjectId()

bool isc::process::hasObjectId | ( | const db::AuditEntryCollection & | audit_entries,
|  | const uint64_t & | object_id )
| inline

Checks if an object is in a collection od audit entries.

Parameters

  audit_entries | collection od audit entries to search for.
  object_id | object identifier.

Definition at line 372 of file cb_ctl_base.h.

Referenced by isc::dhcp::CBControlDHCPv4::databaseConfigApply(), and isc::dhcp::CBControlDHCPv6::databaseConfigApply().

## ◆ redactConfig()

isc::data::ConstElementPtr isc::process::redactConfig | ( | isc::data::ConstElementPtr const & | element,
|  | std::list< std::string > const & | json_path = {"*"},
|  | std::string | obscure = "*****",
|  | unsigned | max_nesting_depth = isc::data::Element::MAX_NESTING_LEVEL )

Redact a configuration.

This method walks on the configuration tree:

- it copies only subtrees where a change was done.
- it replaces passwords and secrets by obscure argument (default 5 asterisks).
- it skips user context.
- if a not empty list of keywords is given it follows only them.

Parameters

  element | initially the Element tree structure that describe the configuration and smaller subtrees in recursive calls.
  json_path | JSON path to redact
  obscure | new value of secrets / passwords
  max_nesting_depth | maximum nesting depth

Returns
  a copy of the config where passwords and secrets were replaced by asterisks so it can be safely logged to an unprivileged place.

Definition at line 98 of file redact_config.cc.

Referenced by isc::d2::D2Process::configure(), isc::process::Daemon::redactConfig(), and isc::process::DCfgMgrBase::redactConfig().

## Variable Documentation

## ◆ DCTL_ALREADY_RUNNING

const isc::log::MessageID isc::process::DCTL_ALREADY_RUNNING = "DCTL_ALREADY_RUNNING"
| extern

Definition at line 11 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_CFG_FILE_RELOAD_ERROR

const isc::log::MessageID isc::process::DCTL_CFG_FILE_RELOAD_ERROR = "DCTL_CFG_FILE_RELOAD_ERROR"
| extern

Definition at line 12 of file process_messages.h.

Referenced by isc::process::DControllerBase::processSignal().

## ◆ DCTL_CFG_FILE_RELOAD_SIGNAL_RECVD

const isc::log::MessageID isc::process::DCTL_CFG_FILE_RELOAD_SIGNAL_RECVD = "DCTL_CFG_FILE_RELOAD_SIGNAL_RECVD"
| extern

Definition at line 13 of file process_messages.h.

Referenced by isc::process::DControllerBase::processSignal().

## ◆ DCTL_CONFIG_CHECK_COMPLETE

const isc::log::MessageID isc::process::DCTL_CONFIG_CHECK_COMPLETE = "DCTL_CONFIG_CHECK_COMPLETE"
| extern

Definition at line 14 of file process_messages.h.

Referenced by isc::process::DCfgMgrBase::simpleParseConfig().

## ◆ DCTL_CONFIG_COMPLETE

const isc::log::MessageID isc::process::DCTL_CONFIG_COMPLETE = "DCTL_CONFIG_COMPLETE"
| extern

Definition at line 15 of file process_messages.h.

Referenced by isc::process::DCfgMgrBase::simpleParseConfig().

## ◆ DCTL_CONFIG_DEPRECATED

const isc::log::MessageID isc::process::DCTL_CONFIG_DEPRECATED = "DCTL_CONFIG_DEPRECATED"
| extern

Definition at line 16 of file process_messages.h.

Referenced by isc::process::DControllerBase::handleOtherObjects().

## ◆ DCTL_CONFIG_FETCH

const isc::log::MessageID isc::process::DCTL_CONFIG_FETCH = "DCTL_CONFIG_FETCH"
| extern

Definition at line 17 of file process_messages.h.

Referenced by isc::process::CBControlBase< ConfigBackendMgrType >::databaseConfigFetch().

## ◆ DCTL_CONFIG_FILE_LOAD_FAIL

const isc::log::MessageID isc::process::DCTL_CONFIG_FILE_LOAD_FAIL = "DCTL_CONFIG_FILE_LOAD_FAIL"
| extern

Definition at line 18 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_CONFIG_START

const isc::log::MessageID isc::process::DCTL_CONFIG_START = "DCTL_CONFIG_START"
| extern

Definition at line 19 of file process_messages.h.

Referenced by isc::process::DCfgMgrBase::simpleParseConfig().

## ◆ DCTL_DB_OPEN_CONNECTION_WITH_RETRY_FAILED

const isc::log::MessageID isc::process::DCTL_DB_OPEN_CONNECTION_WITH_RETRY_FAILED = "DCTL_DB_OPEN_CONNECTION_WITH_RETRY_FAILED"
| extern

Definition at line 20 of file process_messages.h.

Referenced by isc::process::CBControlBase< ConfigBackendMgrType >::databaseConfigConnect().

## ◆ DCTL_DEPRECATED_OUTPUT_OPTIONS

const isc::log::MessageID isc::process::DCTL_DEPRECATED_OUTPUT_OPTIONS = "DCTL_DEPRECATED_OUTPUT_OPTIONS"
| extern

Definition at line 21 of file process_messages.h.

## ◆ DCTL_DEVELOPMENT_VERSION

const isc::log::MessageID isc::process::DCTL_DEVELOPMENT_VERSION = "DCTL_DEVELOPMENT_VERSION"
| extern

Definition at line 22 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_INIT_PROCESS

const isc::log::MessageID isc::process::DCTL_INIT_PROCESS = "DCTL_INIT_PROCESS"
| extern

Definition at line 23 of file process_messages.h.

Referenced by isc::process::DControllerBase::initProcess().

## ◆ DCTL_INIT_PROCESS_FAIL

const isc::log::MessageID isc::process::DCTL_INIT_PROCESS_FAIL = "DCTL_INIT_PROCESS_FAIL"
| extern

Definition at line 24 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_LOG_PATH_SECURITY_WARNING

const isc::log::MessageID isc::process::DCTL_LOG_PATH_SECURITY_WARNING = "DCTL_LOG_PATH_SECURITY_WARNING"
| extern

Definition at line 25 of file process_messages.h.

Referenced by isc::process::LogConfigParser::validatePath().

## ◆ dctl_logger

isc::log::Logger isc::process::dctl_logger | ( | "dctl" |  | ) |

Defines the logger used within libkea-process library.

Define the loggers used within libkea-process library.

Definition at line 18 of file d_log.h.

Referenced by isc::process::DControllerBase::~DControllerBase(), isc::process::CBControlBase< ConfigBackendMgrType >::databaseConfigConnect(), isc::process::CBControlBase< ConfigBackendMgrType >::databaseConfigFetch(), isc::process::DControllerBase::handleOtherObjects(), isc::process::DControllerBase::initProcess(), isc::process::DControllerBase::launch(), isc::netconf::NetconfController::processSignal(), isc::process::DControllerBase::processSignal(), isc::process::DControllerBase::runProcess(), isc::process::DControllerBase::shutdownProcess(), isc::process::DCfgMgrBase::simpleParseConfig(), and isc::process::LogConfigParser::validatePath().

## ◆ DCTL_NOT_RUNNING

const isc::log::MessageID isc::process::DCTL_NOT_RUNNING = "DCTL_NOT_RUNNING"
| extern

Definition at line 26 of file process_messages.h.

Referenced by isc::process::DControllerBase::shutdownProcess().

## ◆ DCTL_OPEN_CONFIG_DB

const isc::log::MessageID isc::process::DCTL_OPEN_CONFIG_DB = "DCTL_OPEN_CONFIG_DB"
| extern

Definition at line 27 of file process_messages.h.

Referenced by isc::process::CBControlBase< ConfigBackendMgrType >::databaseConfigConnect().

## ◆ DCTL_PARSER_FAIL

const isc::log::MessageID isc::process::DCTL_PARSER_FAIL = "DCTL_PARSER_FAIL"
| extern

Definition at line 28 of file process_messages.h.

Referenced by isc::process::DCfgMgrBase::simpleParseConfig().

## ◆ DCTL_PID_FILE_ERROR

const isc::log::MessageID isc::process::DCTL_PID_FILE_ERROR = "DCTL_PID_FILE_ERROR"
| extern

Definition at line 29 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_PROCESS_FAILED

const isc::log::MessageID isc::process::DCTL_PROCESS_FAILED = "DCTL_PROCESS_FAILED"
| extern

Definition at line 30 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_ROOT_USER_SECURITY_WARNING

const isc::log::MessageID isc::process::DCTL_ROOT_USER_SECURITY_WARNING = "DCTL_ROOT_USER_SECURITY_WARNING"
| extern

Definition at line 31 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_RUN_PROCESS

const isc::log::MessageID isc::process::DCTL_RUN_PROCESS = "DCTL_RUN_PROCESS"
| extern

Definition at line 32 of file process_messages.h.

Referenced by isc::process::DControllerBase::runProcess().

## ◆ DCTL_SHUTDOWN

const isc::log::MessageID isc::process::DCTL_SHUTDOWN = "DCTL_SHUTDOWN"
| extern

Definition at line 33 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_SHUTDOWN_SIGNAL_RECVD

const isc::log::MessageID isc::process::DCTL_SHUTDOWN_SIGNAL_RECVD = "DCTL_SHUTDOWN_SIGNAL_RECVD"
| extern

Definition at line 34 of file process_messages.h.

Referenced by isc::process::DControllerBase::processSignal().

## ◆ DCTL_STANDALONE

const isc::log::MessageID isc::process::DCTL_STANDALONE = "DCTL_STANDALONE"
| extern

Definition at line 35 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_STARTING

const isc::log::MessageID isc::process::DCTL_STARTING = "DCTL_STARTING"
| extern

Definition at line 36 of file process_messages.h.

Referenced by isc::process::DControllerBase::launch().

## ◆ DCTL_UNLOAD_LIBRARIES_ERROR

const isc::log::MessageID isc::process::DCTL_UNLOAD_LIBRARIES_ERROR = "DCTL_UNLOAD_LIBRARIES_ERROR"
| extern

Definition at line 37 of file process_messages.h.

Referenced by isc::process::DControllerBase::~DControllerBase().

## ◆ DCTL_UNSUPPORTED_SIGNAL

const isc::log::MessageID isc::process::DCTL_UNSUPPORTED_SIGNAL = "DCTL_UNSUPPORTED_SIGNAL"
| extern

Definition at line 38 of file process_messages.h.

Referenced by isc::netconf::NetconfController::processSignal(), and isc::process::DControllerBase::processSignal().