summaryrefslogtreecommitdiffstats
path: root/src/vnet/interface_output.c
diff options
context:
space:
mode:
authorSteve Shin <jonshin@cisco.com>2017-07-07 14:57:46 -0700
committerJohn Lo <loj@cisco.com>2017-07-10 21:45:54 +0000
commitcdb8514ac0e70add06de9cd2cfe8628c5cf644ba (patch)
tree197f1fd4919cb9606a002d056e78968a8edbc09c /src/vnet/interface_output.c
parente6fa2e3d5abf37fbebd5c7f5951271d519003b41 (diff)
lldp packet transmission on a bonded interface
LLDP packets are dropped at interface output node if each slave's link is configured as the LLDP interface. The admin state is configured and managed by the bonded interface, so slave link's state is down by default. The checking for the admin state UP should be ignored for the slave link. Change-Id: I06ca250f42fcb8cc50e0ea3a3817a2c5b56865df Signed-off-by: Steve Shin <jonshin@cisco.com> (cherry picked from commit 042a621b90c9f521b546cbbf724bb908e36f3b25)
Diffstat (limited to 'src/vnet/interface_output.c')
-rw-r--r--src/vnet/interface_output.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/vnet/interface_output.c b/src/vnet/interface_output.c
index 3f45cb9f0ef..846eb57b95e 100644
--- a/src/vnet/interface_output.c
+++ b/src/vnet/interface_output.c
@@ -259,7 +259,8 @@ vnet_interface_output_node_flatten (vlib_main_t * vm,
si = vnet_get_sw_interface (vnm, rt->sw_if_index);
hi = vnet_get_sup_hw_interface (vnm, rt->sw_if_index);
- if (!(si->flags & VNET_SW_INTERFACE_FLAG_ADMIN_UP) ||
+ if (!(si->flags & (VNET_SW_INTERFACE_FLAG_ADMIN_UP |
+ VNET_SW_INTERFACE_FLAG_BOND_SLAVE)) ||
!(hi->flags & VNET_HW_INTERFACE_FLAG_LINK_UP))
{
vlib_simple_counter_main_t *cm;
@@ -451,7 +452,8 @@ vnet_interface_output_node (vlib_main_t * vm,
si = vnet_get_sw_interface (vnm, rt->sw_if_index);
hi = vnet_get_sup_hw_interface (vnm, rt->sw_if_index);
- if (!(si->flags & VNET_SW_INTERFACE_FLAG_ADMIN_UP) ||
+ if (!(si->flags & (VNET_SW_INTERFACE_FLAG_ADMIN_UP |
+ VNET_SW_INTERFACE_FLAG_BOND_SLAVE)) ||
!(hi->flags & VNET_HW_INTERFACE_FLAG_LINK_UP))
{
vlib_simple_counter_main_t *cm;