Kea  1.9.9-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< ConfigControlInfoConfigControlInfoPtr
 Defines a pointer to a ConfigControlInfo. More...
 
typedef std::vector< ConfigDbInfoConfigDbInfoList
 
typedef boost::shared_ptr< ConfigBaseConfigPtr
 Non-const pointer to the ConfigBase. More...
 
typedef boost::shared_ptr< const ConfigControlInfoConstConfigControlInfoPtr
 Defines a pointer to a const ConfigControlInfo. More...
 
typedef boost::shared_ptr< DCfgMgrBaseDCfgMgrBasePtr
 Defines a shared pointer to DCfgMgrBase. More...
 
typedef boost::shared_ptr< DControllerBaseDControllerBasePtr
 
typedef boost::shared_ptr< DProcessBaseDProcessBasePtr
 Defines a shared pointer to DProcessBase. More...
 
typedef std::map< std::string, isc::data::ConstElementPtrElementMap
 Defines a map of ConstElementPtrs keyed by name. More...
 
typedef std::vector< isc::process::LoggingInfoLoggingInfoStorage
 storage for logging information in log4cplus format More...
 

Functions

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

Variables

const char *const * d_config_report = isc::detail::config_report
 
const isc::log::MessageID DCTL_ALREADY_RUNNING = "DCTL_ALREADY_RUNNING"
 
const isc::log::MessageID DCTL_CCSESSION_ENDING = "DCTL_CCSESSION_ENDING"
 
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_COMMAND_RECEIVED = "DCTL_COMMAND_RECEIVED"
 
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_LOAD_FAIL = "DCTL_CONFIG_LOAD_FAIL"
 
const isc::log::MessageID DCTL_CONFIG_START = "DCTL_CONFIG_START"
 
const isc::log::MessageID DCTL_CONFIG_STUB = "DCTL_CONFIG_STUB"
 
const isc::log::MessageID DCTL_CONFIG_UPDATE = "DCTL_CONFIG_UPDATE"
 
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"
 
isc::log::Logger dctl_logger ("dctl")
 Defines the logger used within libkea-process library. More...
 
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_RUN_PROCESS = "DCTL_RUN_PROCESS"
 
const isc::log::MessageID DCTL_SESSION_FAIL = "DCTL_SESSION_FAIL"
 
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_UNSUPPORTED_SIGNAL = "DCTL_UNSUPPORTED_SIGNAL"
 

Typedef Documentation

Defines a pointer to a ConfigControlInfo.

Definition at line 239 of file config_ctl_info.h.

Definition at line 112 of file config_ctl_info.h.

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

Non-const pointer to the ConfigBase.

Definition at line 176 of file config_base.h.

Defines a pointer to a const ConfigControlInfo.

Definition at line 242 of file config_ctl_info.h.

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

Defines a shared pointer to DCfgMgrBase.

Definition at line 247 of file d_cfg_mgr.h.

Definition at line 78 of file d_controller.h.

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

Defines a shared pointer to DProcessBase.

Definition at line 215 of file d_process.h.

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.

storage for logging information in log4cplus format

Definition at line 141 of file logging_info.h.

Function Documentation

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_entriescollection od audit entries to search for.
object_idobject identifier.

Definition at line 364 of file cb_ctl_base.h.

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

isc::data::ConstElementPtr isc::process::redactConfig ( isc::data::ConstElementPtr const &  element,
std::list< std::string > const &  json_path = {"*"} 
)

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 asterisks.
  • it skips user context.
  • if a not empty list of keywords is given it follows only them.
Parameters
elementinitially the Element tree structure that describe the configuration and smaller subtrees in recursive calls.
json_pathJSON path to redact
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 92 of file redact_config.cc.

Referenced by isc::dhcp::ControlledDhcpv4Srv::checkConfig(), isc::dhcp::ControlledDhcpv6Srv::checkConfig(), isc::d2::D2Process::configure(), isc::process::DCfgMgrBase::redactConfig(), isc::process::Daemon::redactConfig(), and isc::process::DCfgMgrBase::simpleParseConfig().

Variable Documentation

const char* const* isc::process::d_config_report = isc::detail::config_report

Definition at line 811 of file d_controller.cc.

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

Definition at line 11 of file process_messages.h.

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

const isc::log::MessageID isc::process::DCTL_CCSESSION_ENDING = "DCTL_CCSESSION_ENDING"

Definition at line 12 of file process_messages.h.

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

Definition at line 13 of file process_messages.h.

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

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

Definition at line 14 of file process_messages.h.

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

const isc::log::MessageID isc::process::DCTL_COMMAND_RECEIVED = "DCTL_COMMAND_RECEIVED"

Definition at line 15 of file process_messages.h.

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

Definition at line 16 of file process_messages.h.

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

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

Definition at line 17 of file process_messages.h.

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

const isc::log::MessageID isc::process::DCTL_CONFIG_DEPRECATED = "DCTL_CONFIG_DEPRECATED"
const isc::log::MessageID isc::process::DCTL_CONFIG_FETCH = "DCTL_CONFIG_FETCH"
const isc::log::MessageID isc::process::DCTL_CONFIG_FILE_LOAD_FAIL = "DCTL_CONFIG_FILE_LOAD_FAIL"

Definition at line 20 of file process_messages.h.

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

const isc::log::MessageID isc::process::DCTL_CONFIG_LOAD_FAIL = "DCTL_CONFIG_LOAD_FAIL"

Definition at line 21 of file process_messages.h.

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

Definition at line 22 of file process_messages.h.

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

const isc::log::MessageID isc::process::DCTL_CONFIG_STUB = "DCTL_CONFIG_STUB"

Definition at line 23 of file process_messages.h.

const isc::log::MessageID isc::process::DCTL_CONFIG_UPDATE = "DCTL_CONFIG_UPDATE"

Definition at line 24 of file process_messages.h.

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

Definition at line 25 of file process_messages.h.

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

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

Definition at line 26 of file process_messages.h.

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

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

Definition at line 27 of file process_messages.h.

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

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

Definition at line 28 of file process_messages.h.

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

const isc::log::MessageID isc::process::DCTL_OPEN_CONFIG_DB = "DCTL_OPEN_CONFIG_DB"
const isc::log::MessageID isc::process::DCTL_PARSER_FAIL = "DCTL_PARSER_FAIL"

Definition at line 30 of file process_messages.h.

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

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

Definition at line 31 of file process_messages.h.

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

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

Definition at line 32 of file process_messages.h.

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

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

Definition at line 33 of file process_messages.h.

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

const isc::log::MessageID isc::process::DCTL_SESSION_FAIL = "DCTL_SESSION_FAIL"

Definition at line 34 of file process_messages.h.

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

Definition at line 35 of file process_messages.h.

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

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

Definition at line 36 of file process_messages.h.

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

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

Definition at line 37 of file process_messages.h.

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

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

Definition at line 38 of file process_messages.h.

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

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