![]() |
Kea 3.0.0
|
#include <client_class_def.h>
Public Member Functions | |
| TemplateClientClassDef (const std::string &name, const ExpressionPtr &match_expr, const CfgOptionPtr &options=CfgOptionPtr()) | |
| Constructor. | |
| virtual void | test (PktPtr pkt, const ExpressionPtr &expr_ptr) override |
| Test method which checks if the packet belongs to the class. | |
| virtual isc::data::ElementPtr | toElement () const override |
| Unparse a configuration object. | |
| Public Member Functions inherited from isc::dhcp::ClientClassDef | |
| ClientClassDef (const ClientClassDef &rhs) | |
| Copy constructor. | |
| ClientClassDef (const std::string &name, const ExpressionPtr &match_expr, const CfgOptionPtr &options=CfgOptionPtr()) | |
| Constructor. | |
| virtual | ~ClientClassDef () |
| Destructor. | |
| bool | dependOnClass (const std::string &name) const |
| Checks direct dependency. | |
| bool | equals (const ClientClassDef &other) const |
Compares two ClientClassDef objects for equality. | |
| bool | getAdditional () const |
| Fetches the only if additional flag. | |
| const CfgOptionPtr & | getCfgOption () const |
| Fetches the class's option collection. | |
| const CfgOptionDefPtr & | getCfgOptionDef () const |
| Fetches the class's option definitions. | |
| bool | getDependOnKnown () const |
| Fetches the depend on known flag aka use host flag. | |
| const std::string & | getFilename () const |
| returns boot-file-name value | |
| const ExpressionPtr & | getMatchExpr () const |
| Fetches the class's match expression. | |
| std::string | getName () const |
| Fetches the class's name. | |
| const asiolink::IOAddress & | getNextServer () const |
| returns next-server value | |
| util::Optional< uint32_t > | getOfferLft () const |
| Returns offer lifetime for the class. | |
| util::Triplet< uint32_t > | getPreferred () const |
| Return preferred-lifetime value. | |
| const std::string & | getSname () const |
| returns server-hostname value | |
| std::string | getTest () const |
| Fetches the class's original match expression. | |
| util::Triplet< uint32_t > | getValid () const |
| Return valid-lifetime value. | |
| bool | operator!= (const ClientClassDef &other) const |
| Inequality operator. | |
| bool | operator== (const ClientClassDef &other) const |
| Equality operator. | |
| void | setAdditional (bool additional) |
| Sets the only if additional flag. | |
| void | setCfgOption (const CfgOptionPtr &cfg_option) |
| Sets the class's option collection. | |
| void | setCfgOptionDef (const CfgOptionDefPtr &cfg_option_def) |
| Sets the class's option definition collection. | |
| void | setDependOnKnown (bool depend_on_known) |
| Sets the depend on known flag aka use host flag. | |
| void | setFilename (const std::string &filename) |
| sets the boot-file-name value | |
| void | setMatchExpr (const ExpressionPtr &match_expr) |
| Sets the class's match expression. | |
| void | setName (const std::string &name) |
| Sets the class's name. | |
| void | setNextServer (const asiolink::IOAddress &addr) |
| sets the next-server value | |
| void | setOfferLft (const util::Optional< uint32_t > &offer_lft) |
| Sets offer lifetime for the class. | |
| void | setPreferred (const util::Triplet< uint32_t > &preferred) |
| Sets new preferred lifetime. | |
| void | setSname (const std::string &sname) |
| sets the server-name value | |
| void | setTest (const std::string &test) |
| Sets the class's original match expression. | |
| void | setValid (const util::Triplet< uint32_t > &valid) |
| Sets new valid lifetime. | |
| Public Member Functions inherited from isc::data::UserContext | |
| void | contextToElement (data::ElementPtr map) const |
| Merge unparse a user_context object. | |
| data::ConstElementPtr | getContext () const |
| Returns const pointer to the user context. | |
| void | setContext (const data::ConstElementPtr &ctx) |
| Sets user context. | |
| Public Member Functions inherited from isc::data::CfgToElement | |
| virtual | ~CfgToElement () |
| Destructor. | |
| Public Member Functions inherited from isc::data::StampedElement | |
| StampedElement () | |
| Constructor. | |
| void | delServerTag (const std::string &server_tag) |
| Deletes server tag. | |
| isc::data::ElementPtr | getMetadata () const |
| Returns an object representing metadata to be returned with objects from the configuration backend. | |
| std::set< ServerTag > | getServerTags () const |
| Returns server tags. | |
| bool | hasAllServerTag () const |
| Checks if the element has 'all' server tag. | |
| bool | hasServerTag (const ServerTag &server_tag) const |
| Checks if the element has the given server tag. | |
| void | setServerTag (const std::string &server_tag) |
| Adds new server tag. | |
| Public Member Functions inherited from isc::data::BaseStampedElement | |
| BaseStampedElement () | |
| Constructor. | |
| uint64_t | getId () const |
| Returns element's database identifier. | |
| boost::posix_time::ptime | getModificationTime () const |
| Returns timestamp. | |
| void | setId (const uint64_t id) |
| Sets element's database identifier. | |
| void | setModificationTime (const boost::posix_time::ptime ×tamp) |
| Sets timestamp to the explicitly provided value. | |
| void | updateModificationTime () |
| Sets timestamp to the current time. | |
Static Public Attributes | |
| static const std::string | SPAWN_CLASS_PREFIX |
| This is a prefix added to the spawned class name. | |
Additional Inherited Members | |
| Static Public Member Functions inherited from isc::data::UserContext | |
| static data::ElementPtr | toElement (data::ConstElementPtr map) |
| Copy an Element map. | |
| Protected Attributes inherited from isc::data::UserContext | |
| data::ConstElementPtr | user_context_ |
| Pointer to the user context (may be NULL) | |
| Protected Attributes inherited from isc::data::BaseStampedElement | |
| uint64_t | id_ |
| Database identifier of the configuration element. | |
| boost::posix_time::ptime | timestamp_ |
| Holds timestamp value. | |
Definition at line 313 of file client_class_def.h.
| isc::dhcp::TemplateClientClassDef::TemplateClientClassDef | ( | const std::string & | name, |
| const ExpressionPtr & | match_expr, | ||
| const CfgOptionPtr & | options = CfgOptionPtr() ) |
Constructor.
| name | Name to assign to this class |
| match_expr | Expression the class will use to determine membership |
| options | Collection of options members should be given |
Definition at line 167 of file client_class_def.cc.
References isc::dhcp::ClientClassDef::ClientClassDef().
|
overridevirtual |
Test method which checks if the packet belongs to the class.
If the packet belongs to the class, the class is added to the packet.
| pkt | The packet checked if it belongs to the class. |
| expr_ptr | Expression the class will use to determine membership |
Reimplemented from isc::dhcp::ClientClassDef.
Definition at line 174 of file client_class_def.cc.
References isc::dhcp::DHCPSRV_DBG_TRACE_DETAIL, isc::dhcp::dhcpsrv_logger, isc::dhcp::DHCPSRV_TEMPLATE_EVAL_ERROR, isc::dhcp::DHCPSRV_TEMPLATE_EVAL_RESULT, isc::dhcp::evaluateString(), isc::dhcp::ClientClassDef::getName(), LOG_DEBUG, LOG_ERROR, SPAWN_CLASS_PREFIX, and isc::Exception::what().
Referenced by toElement().
|
overridevirtual |
Unparse a configuration object.
Reimplemented from isc::dhcp::ClientClassDef.
Definition at line 301 of file client_class_def.cc.
References isc::data::Element::create(), test(), and isc::dhcp::ClientClassDef::toElement().
|
static |
This is a prefix added to the spawned class name.
If incoming packet is associated with the template class, the name of generated spawned class is prepended with this prefix. For example, a packet that associates with the template class "FOO" by evaluating the template class expression to BAR will cause the packet to be assigned to class SPAWN_FOO_BAR.
Definition at line 343 of file client_class_def.h.
Referenced by test().