diff options
author | Neale Ranns <nranns@cisco.com> | 2018-12-20 12:03:59 -0800 |
---|---|---|
committer | Neale Ranns <nranns@cisco.com> | 2018-12-21 18:12:25 +0000 |
commit | 1c17e2ecac42e001ce905418463edcb26fe58b01 (patch) | |
tree | a1c5c69e868d28eb3f3b338db4cde65eff7b2534 /extras/vom/vom/gbp_contract.hpp | |
parent | fc7344f9beffe506085730e8e03f7c8771deb3a6 (diff) |
GBP: add allowed ethertypes to contracts
Change-Id: I74782d3b9b71a071bb500c34866a017b8ee15767
Signed-off-by: Neale Ranns <nranns@cisco.com>
Diffstat (limited to 'extras/vom/vom/gbp_contract.hpp')
-rw-r--r-- | extras/vom/vom/gbp_contract.hpp | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/extras/vom/vom/gbp_contract.hpp b/extras/vom/vom/gbp_contract.hpp index 53f8f3659ec..e517a3d6428 100644 --- a/extras/vom/vom/gbp_contract.hpp +++ b/extras/vom/vom/gbp_contract.hpp @@ -42,11 +42,18 @@ public: typedef std::pair<epg_id_t, epg_id_t> key_t; /** + * A set of allowed ethertypes + */ + typedef std::set<ethertype_t> ethertype_set_t; + + /** * Construct a GBP contract */ gbp_contract(epg_id_t src_epg_id, epg_id_t dst_epg_id, - const ACL::l3_list& acl); + const ACL::l3_list& acl, + const gbp_rules_t& gpb_rules, + const ethertype_set_t& allowed_ethertypes); /** * Copy Construct @@ -93,11 +100,6 @@ public: */ std::string to_string() const; - /** - * Set gbp_rules in case of Redirect Contract - */ - void set_gbp_rules(const gbp_rules_t& gbp_rules); - private: /** * Class definition for listeners to OM events @@ -185,6 +187,11 @@ private: gbp_rules_t m_gbp_rules; /** + * the set of Ether-types allowed by this contract + */ + ethertype_set_t m_allowed_ethertypes; + + /** * A map of all bridge_domains */ static singular_db<key_t, gbp_contract> m_db; |