|
FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
|
Go to the documentation of this file.
29 if (!memcmp (mif->
partner.system, mif->
actor.system, 6) &&
33 mif->
actor.state &= ~LACP_STATE_AGGREGATION;
34 mif->
selected = LACP_PORT_UNSELECTED;
36 LACP_MUX_EVENT_UNSELECTED, &mif->
mux_state);
37 return LACP_ERROR_LOOPBACK_PORT;
46 mif->
selected = LACP_PORT_UNSELECTED;
48 LACP_MUX_EVENT_UNSELECTED, &mif->
mux_state);
49 return LACP_ERROR_BAD_KEY;
56 case LACP_MUX_STATE_DETACHED:
58 case LACP_MUX_STATE_WAITING:
60 return LACP_ERROR_NONE;
62 case LACP_MUX_STATE_ATTACHED:
63 if (!(mif->
partner.state & LACP_STATE_SYNCHRONIZATION))
64 return LACP_ERROR_NONE;
66 case LACP_MUX_STATE_COLLECTING_DISTRIBUTING:
72 LACP_MUX_EVENT_SELECTED, &mif->
mux_state);
86 if (mif2 && (mif2->
actor.state & LACP_STATE_SYNCHRONIZATION) &&
97 if (mif2->
selected == LACP_PORT_SELECTED)
static int lacp_set_port_selected(vlib_main_t *vm, bond_if_t *bif, member_if_t *mif)
static bond_if_t * bond_get_bond_if_by_dev_instance(u32 dev_instance)
vlib_main_t * vm
X-connect all packets from the HOST to the PHY.
#define vec_len(v)
Number of elements in vector (rvalue-only, NULL tolerant)
#define vec_elt_at_index(v, i)
Get vector value at index i checking that i is in bounds.
lacp_machine_t lacp_mux_machine
int lacp_machine_dispatch(lacp_machine_t *machine, vlib_main_t *vm, member_if_t *mif, int event, int *state)
#define vec_foreach(var, vec)
Vector iterator.
int lacp_selection_logic(vlib_main_t *vm, member_if_t *mif)
static member_if_t * bond_get_member_by_sw_if_index(u32 sw_if_index)
vl_api_interface_index_t sw_if_index