X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=extras%2Fvom%2Fvom%2Fgbp_contract_cmds.hpp;h=d9fe1d74e3785a91475bebb86309c0aceca94fe5;hb=5de4fb7076a46ab75e2d3c30079dd6639af16a86;hp=4f921f6da94fdfd1ea4b78470be9366033657d83;hpb=33b81da54acf1236cddf0716005c340f3402ff6d;p=vpp.git diff --git a/extras/vom/vom/gbp_contract_cmds.hpp b/extras/vom/vom/gbp_contract_cmds.hpp index 4f921f6da94..d9fe1d74e37 100644 --- a/extras/vom/vom/gbp_contract_cmds.hpp +++ b/extras/vom/vom/gbp_contract_cmds.hpp @@ -27,17 +27,20 @@ namespace gbp_contract_cmds { /** * A command class that creates or updates the GBP contract */ -class create_cmd : public rpc_cmd, vapi::Gbp_contract_add_del> +class create_cmd + : public rpc_cmd, vapi::Gbp_contract_add_del> { public: /** * Constructor */ - create_cmd(HW::item& item, - epg_id_t src_epg_id, - epg_id_t dst_epg_id, + create_cmd(HW::item& item, + scope_t scope, + sclass_t sclass, + sclass_t dclass, const handle_t& acl, - const gbp_contract::gbp_rules_t& gbp_rules); + const gbp_contract::gbp_rules_t& gbp_rules, + const gbp_contract::ethertype_set_t& allowed_ethertypes); /** * Issue the command to VPP/HW @@ -55,22 +58,28 @@ public: bool operator==(const create_cmd& i) const; private: - const epg_id_t m_src_epg_id; - const epg_id_t m_dst_epg_id; + const scope_t m_scope; + const sclass_t m_sclass; + const sclass_t m_dclass; const handle_t m_acl; const gbp_contract::gbp_rules_t& m_gbp_rules; + const gbp_contract::ethertype_set_t& m_allowed_ethertypes; }; /** * A cmd class that deletes a GBP contract */ -class delete_cmd : public rpc_cmd, vapi::Gbp_contract_add_del> +class delete_cmd + : public rpc_cmd, vapi::Gbp_contract_add_del> { public: /** * Constructor */ - delete_cmd(HW::item& item, epg_id_t src_epg_id, epg_id_t dst_epg_id); + delete_cmd(HW::item& item, + scope_t scope, + sclass_t sclass, + sclass_t dclass); /** * Issue the command to VPP/HW @@ -88,8 +97,9 @@ public: bool operator==(const delete_cmd& i) const; private: - const epg_id_t m_src_epg_id; - const epg_id_t m_dst_epg_id; + const scope_t m_scope; + const sclass_t m_sclass; + const sclass_t m_dclass; }; /**