* A functor class that binds L2 configuration to an interface
*/
class bind_cmd
- : public rpc_cmd<HW::item<bool>, rc_t, vapi::Sw_interface_set_l2_bridge>
+ : public rpc_cmd<HW::item<bool>, vapi::Sw_interface_set_l2_bridge>
{
public:
/**
* Constructor
*/
- bind_cmd(HW::item<bool>& item, const handle_t& itf, uint32_t bd, bool is_bvi);
+ bind_cmd(HW::item<bool>& item,
+ const handle_t& itf,
+ uint32_t bd,
+ const l2_binding::l2_port_type_t& port_type);
/**
* Issue the command to VPP/HW
uint32_t m_bd;
/**
- * Is it a BVI interface that is being bound
+ * What is the port type i.e. normal, bvi, uu-fwd that is being bound
*/
- bool m_is_bvi;
+ const l2_binding::l2_port_type_t& m_port_type;
};
/**
* A cmd class that Unbinds L2 configuration from an interface
*/
class unbind_cmd
- : public rpc_cmd<HW::item<bool>, rc_t, vapi::Sw_interface_set_l2_bridge>
+ : public rpc_cmd<HW::item<bool>, vapi::Sw_interface_set_l2_bridge>
{
public:
/**
unbind_cmd(HW::item<bool>& item,
const handle_t& itf,
uint32_t bd,
- bool is_bvi);
+ const l2_binding::l2_port_type_t& port_type);
/**
* Issue the command to VPP/HW
uint32_t m_bd;
/**
- * Is it a BVI interface that is being bound
+ * What is the port type i.e. bvi, normal or uu-fwd that is being bound
*/
- bool m_is_bvi;
+ const l2_binding::l2_port_type_t& m_port_type;
};
/**
* A cmd class sets the VTR operation
*/
class set_vtr_op_cmd : public rpc_cmd<HW::item<l2_binding::l2_vtr_op_t>,
- rc_t,
vapi::L2_interface_vlan_tag_rewrite>
{
public: