X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=extras%2Fvom%2Fvom%2Fgbp_contract.hpp;h=caf5a3c5a0ee8db97315f17f3c058c3aa214bcd1;hb=6ce954f8e4446472689146024126ba42da182aa9;hp=7775638bb9fac124cef74b9139d4ca482962c2f5;hpb=4ba67723d716660c56326ce498b99a060a9471b1;p=vpp.git diff --git a/extras/vom/vom/gbp_contract.hpp b/extras/vom/vom/gbp_contract.hpp index 7775638bb9f..caf5a3c5a0e 100644 --- a/extras/vom/vom/gbp_contract.hpp +++ b/extras/vom/vom/gbp_contract.hpp @@ -17,8 +17,8 @@ #define __VOM_GBP_CONTRACT_H__ #include "vom/acl_l3_list.hpp" -#include "vom/gbp_endpoint.hpp" #include "vom/gbp_rule.hpp" +#include "vom/gbp_types.hpp" #include "vom/interface.hpp" #include "vom/singular_db.hpp" #include "vom/types.hpp" @@ -37,9 +37,9 @@ public: typedef std::set gbp_rules_t; /** - * The key for a contract is the pari of EPG-IDs + * The key for a contract is the pair of EPG-IDs */ - typedef std::pair key_t; + typedef std::tuple key_t; /** * A set of allowed ethertypes @@ -49,7 +49,8 @@ public: /** * Construct a GBP contract */ - gbp_contract(sclass_t sclass, + gbp_contract(scope_t scope, + sclass_t sclass, sclass_t dclass, const ACL::l3_list& acl, const gbp_rules_t& gpb_rules, @@ -164,7 +165,12 @@ private: /** * HW configuration for the result of creating the endpoint */ - HW::item m_hw; + HW::item m_hw; + + /* + * The scope of the contract + */ + scope_t m_scope; /** * The source EPG ID