|
FD.io VPP
v21.10.1-2-g0a485f517
Vector Packet Processing
|
Go to the documentation of this file.
16 #ifndef __VOM_GBP_ENDPOINT_H__
17 #define __VOM_GBP_ENDPOINT_H__
54 typedef std::pair<interface::key_t, mac_address_t>
key_t;
60 const std::vector<boost::asio::ip::address>& ip_addr,
88 std::shared_ptr<gbp_endpoint>
singular()
const;
93 static std::shared_ptr<gbp_endpoint>
find(
const key_t& k);
98 static void dump(std::ostream& os);
128 void handle_replay();
133 void show(std::ostream& os);
154 static std::shared_ptr<gbp_endpoint> find_or_add(
const gbp_endpoint& temp);
179 std::shared_ptr<interface> m_itf;
184 std::vector<boost::asio::ip::address> m_ips;
194 std::shared_ptr<gbp_endpoint_group> m_epg;
const static flags_t EXTERNAL
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 ...
std::shared_ptr< gbp_endpoint > singular() const
Return the matching 'singular instance'.
~gbp_endpoint()
Destructor.
The interface to writing objects into VPP OM.
std::pair< interface::key_t, mac_address_t > key_t
The key for a GBP endpoint; interface and IP.
inspect command handler Handler
Class definition for listeners to OM events.
vnet_hw_if_output_node_runtime_t * r
gbp_endpoint(const interface &itf, const std::vector< boost::asio::ip::address > &ip_addr, const mac_address_t &mac, const gbp_endpoint_group &epg, const flags_t &flags=flags_t::NONE)
Construct a GBP endpoint.
const static flags_t BOUNCE
const static flags_t LEARNT
A template base class for all enum types.
A representation of an interface in VPP.
const typedef std::string key_t
In the opflex world each entity is known by a URI which can be converted into a string.
static void dump(std::ostream &os)
Dump all bridge_domain-doamin into the stream provided.
const key_t key() const
Return the object's key.
std::string to_string() const
Convert to string for debugging.
bool operator==(const gbp_endpoint &bdae) const
comparison operator
std::ostream & operator<<(std::ostream &os, const std::pair< direction_t, interface::key_t > &key)
const static flags_t REMOTE
void replay(void)
replay the object to create it in hardware
Type def of a Ethernet address.
A Database to store the unique 'singular' instances of a single object type.
const static flags_t NONE
static std::shared_ptr< gbp_endpoint > find(const key_t &k)
Find the instnace of the bridge_domain domain in the OM.
void event_handler(void *tls_async)
A entry in the ARP termination table of a Bridge Domain.
A base class for all object_base in the VPP object_base-Model.
vl_api_wireguard_peer_flags_t flags