|
FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
|
Go to the documentation of this file.
16 #ifndef __VOM_ACL_L3_LIST_H__
17 #define __VOM_ACL_L3_LIST_H__
72 std::shared_ptr<l3_list>
singular()
const;
77 static void dump(std::ostream& os);
134 void handle_replay();
139 void show(std::ostream& os);
155 void update(
const l3_list& obj);
165 static std::shared_ptr<l3_list> find_or_add(
const l3_list& temp);
200 static std::map<handle_t, std::weak_ptr<l3_list>> m_hdl_db;
const handle_t & handle() const
Return the VPP assign handle.
std::multiset< l3_rule > rules_t
The rule container type.
std::shared_ptr< l3_list > singular() const
Return the 'sigular instance' of the ACL that matches this object.
The VPP Object Model (VOM) library.
dependency_t
There needs to be a strict order in which object types are read from VPP (at boot time) and replayed ...
bool operator==(const l3_list &l) const
Comparison operator - for UT.
The interface to writing objects into VPP OM.
inspect command handler Handler
void insert(const l3_rule &rule)
Insert priority sorted a rule into the list.
const rules_t & rules() const
Class definition for listeners to OM events.
static std::shared_ptr< l3_list > find(const handle_t &handle)
static void add(const key_t &key, const HW::item< handle_t > &item)
An ACL rule is the building block of an ACL.
const typedef std::string key_t
In the opflex world each entity is known by a URI which can be converted into a string.
A type declaration of an interface handle in VPP.
std::string key_t
The KEY can be used to uniquely identify the ACL.
static void dump(std::ostream &os)
Dump all ACLs into the stream provided.
l3_list(const key_t &key)
Construct a new object matching the desried state.
const key_t & key() const
std::string to_string() const
convert to string format for debug purposes
An L3 ACL list comprises a set of match actions rules to be applied to packets.
void remove(const l3_rule &rule)
Remove a rule from the list.
A Database to store the unique 'singular' instances of a single object type.
void event_handler(void *tls_async)
A base class for all object_base in the VPP object_base-Model.