44                               const std::string& prefix = 
"",
 
   45                               const std::string& suffix = 
"");
 
   55                               const std::string& prefix = 
"",
 
   56                               const std::string& suffix = 
"");
 
   65                              const std::string& value,
 
   66                              const std::string& prefix = 
"",
 
   67                              const std::string& suffix = 
"");
 
   77                              const std::string& prefix = 
"",
 
   78                              const std::string& suffix = 
"");
 
   88                                const std::string& prefix = 
"",
 
   89                                const std::string& suffix = 
"");
 
   99                            const std::string& prefix = 
"",
 
  100                            const std::string& suffix = 
"");
 
  110                              const std::string& prefix = 
"",
 
  111                              const std::string& suffix = 
"");
 
  124                                 const std::string& prefix = 
"",
 
  125                                 const std::string& suffix = 
"");
 
  135                                const std::string& prefix = 
"",
 
  136                                const std::string& suffix = 
"");
 
  146                               const std::string& prefix = 
"",
 
  147                               const std::string& suffix = 
"");
 
  157                               const std::string& prefix = 
"",
 
  158                               const std::string& suffix = 
"");
 
  168                              const std::string& prefix = 
"",
 
  169                              const std::string& suffix = 
"");
 
  179                              const std::string& prefix = 
"",
 
  180                              const std::string& suffix = 
"");
 
  190                               const std::string& prefix = 
"",
 
  191                               const std::string& suffix = 
"");
 
  201                               const std::string& prefix = 
"",
 
  202                               const std::string& suffix = 
"");
 
  212                            const std::string& prefix = 
"",
 
  213                            const std::string& suffix = 
"");
 
  223                            const std::string& prefix = 
"",
 
  224                            const std::string& suffix = 
"");
 
 
static std::string validatePath(const std::string libpath)
Validates a script path (script loaded by a hook) against the supported path.
static void extractBoolean(isc::asiolink::ProcessEnvVars &vars, const bool value, const std::string &prefix="", const std::string &suffix="")
Extract boolean data and append to environment.
RunScriptImpl()
Constructor.
static void extractInteger(isc::asiolink::ProcessEnvVars &vars, const uint64_t value, const std::string &prefix="", const std::string &suffix="")
Extract integer data and append to environment.
std::string getName() const
Get name of the target script.
void configure(isc::hooks::LibraryHandle &handle)
This function parses and applies configuration parameters.
static void extractLease4(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::Lease4Ptr &lease4, const std::string &prefix="", const std::string &suffix="")
Extract Lease4 data and append to environment.
static void extractString(isc::asiolink::ProcessEnvVars &vars, const std::string &value, const std::string &prefix="", const std::string &suffix="")
Extract string data and append to environment.
static void extractSubnet4(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::ConstSubnet4Ptr subnet4, const std::string &prefix="", const std::string &suffix="")
Extract Subnet4 data and append to environment.
void setSync(const bool sync)
Set the synchronous call mode for the target script.
static void extractDUID(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::DuidPtr duid, const std::string &prefix="", const std::string &suffix="")
Extract DUID data and append to environment.
~RunScriptImpl()=default
Destructor.
static void extractSubnet6(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::ConstSubnet6Ptr subnet6, const std::string &prefix="", const std::string &suffix="")
Extract Subnet6 data and append to environment.
bool getSync() const
Get the synchronous call mode for the target script.
static void extractHWAddr(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::HWAddrPtr &hwaddr, const std::string &prefix="", const std::string &suffix="")
Extract HWAddr data and append to environment.
void setName(const std::string &name)
Set name of the target script.
static void extractOptionIA(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::Option6IAPtr option6IA, const std::string &prefix="", const std::string &suffix="")
Extract Option6IA data and append to environment.
void runScript(const isc::asiolink::ProcessArgs &args, const isc::asiolink::ProcessEnvVars &vars)
Run Script with specified arguments and environment parameters.
static void extractLeases6(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::Lease6CollectionPtr &leases6, const std::string &prefix="", const std::string &suffix="")
Extract Lease6Collection data and append to environment.
static void extractLease6(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::Lease6Ptr &lease6, const std::string &prefix="", const std::string &suffix="")
Extract Lease6 data and append to environment.
static void extractClientId(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::ClientIdPtr client_id, const std::string &prefix="", const std::string &suffix="")
Extract ClientId data and append to environment.
static void extractPkt6(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::Pkt6Ptr &pkt6, const std::string &prefix="", const std::string &suffix="")
Extract Pkt6 data and append to environment.
static void extractSubOption(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::OptionPtr option, uint16_t code, const std::string &prefix="", const std::string &suffix="")
Extract Option SubOption data and append to environment.
static void extractPkt4(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::Pkt4Ptr &pkt4, const std::string &prefix="", const std::string &suffix="")
Extract Pkt4 data and append to environment.
static void extractOption(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::OptionPtr option, const std::string &prefix="", const std::string &suffix="")
Extract Option data and append to environment.
static void extractLeases4(isc::asiolink::ProcessEnvVars &vars, const isc::dhcp::Lease4CollectionPtr &leases4, const std::string &prefix="", const std::string &suffix="")
Extract Lease4Collection data and append to environment.
std::vector< std::string > ProcessArgs
Type of the container holding arguments of the executable being run as a background process.
std::vector< std::string > ProcessEnvVars
Type of the container holding environment variables of the executable being run as a background proce...
boost::shared_ptr< IOService > IOServicePtr
Defines a smart pointer to an IOService instance.
boost::shared_ptr< Lease4Collection > Lease4CollectionPtr
A shared pointer to the collection of IPv4 leases.
boost::shared_ptr< const Subnet6 > ConstSubnet6Ptr
A const pointer to a Subnet6 object.
boost::shared_ptr< const Subnet4 > ConstSubnet4Ptr
A const pointer to a Subnet4 object.
boost::shared_ptr< Pkt4 > Pkt4Ptr
A pointer to Pkt4 object.
boost::shared_ptr< DUID > DuidPtr
boost::shared_ptr< Lease6 > Lease6Ptr
Pointer to a Lease6 structure.
boost::shared_ptr< Option6IA > Option6IAPtr
A pointer to the Option6IA object.
boost::shared_ptr< HWAddr > HWAddrPtr
Shared pointer to a hardware address structure.
boost::shared_ptr< ClientId > ClientIdPtr
Shared pointer to a Client ID.
boost::shared_ptr< Lease6Collection > Lease6CollectionPtr
A shared pointer to the collection of IPv6 leases.
boost::shared_ptr< Pkt6 > Pkt6Ptr
A pointer to Pkt6 packet.
boost::shared_ptr< Lease4 > Lease4Ptr
Pointer to a Lease4 structure.
boost::shared_ptr< Option > OptionPtr
boost::shared_ptr< RunScriptImpl > RunScriptImplPtr
The type of shared pointers to Run Script implementations.
Defines the logger used by the top-level component of kea-lfc.