diff options
author | John Lo <loj@cisco.com> | 2016-06-04 00:02:37 -0400 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2016-06-05 13:48:31 +0000 |
commit | 7185c3bb682bf93922cd03d0d3b43e931491a907 (patch) | |
tree | 36f02a1c7992e4bc6f1ca0242c384effda083719 /vnet/vnet/l2/l2_flood.c | |
parent | c68b4cbf3aa1ea9f7e0f09ff4725feb92170c10f (diff) |
VPP-113: BVI shall filter unicast DMAC for L2 to L3 forwading
As BVI receive a packet with unicast DMAC from the BD, including unknown
unicast flood packet, the packet should not be L3 forwarded unless its
DMAC matches the MAC of the BVI.
Change-Id: I46e18629c901062592c8ebe3a238c5cfdc1096b4
Signed-off-by: John Lo <loj@cisco.com>
Diffstat (limited to 'vnet/vnet/l2/l2_flood.c')
-rw-r--r-- | vnet/vnet/l2/l2_flood.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/vnet/vnet/l2/l2_flood.c b/vnet/vnet/l2/l2_flood.c index 9f71677c16b..61554ac1244 100644 --- a/vnet/vnet/l2/l2_flood.c +++ b/vnet/vnet/l2/l2_flood.c @@ -87,7 +87,7 @@ static vlib_node_registration_t l2flood_node; _(L2FLOOD, "L2 flood packets") \ _(REPL_FAIL, "L2 replication failures") \ _(NO_MEMBERS, "L2 replication complete") \ -_(BVI_TAGGED, "BVI packet with vlan tag") \ +_(BVI_BAD_MAC, "BVI L3 mac mismatch") \ _(BVI_ETHERTYPE, "BVI packet with unhandled ethertype") typedef enum { @@ -247,8 +247,8 @@ l2flood_process (vlib_main_t * vm, next0); if (PREDICT_FALSE(rc)) { - if (rc == TO_BVI_ERR_TAGGED) { - b0->error = node->errors[L2FLOOD_ERROR_BVI_TAGGED]; + if (rc == TO_BVI_ERR_BAD_MAC) { + b0->error = node->errors[L2FLOOD_ERROR_BVI_BAD_MAC]; *next0 = L2FLOOD_NEXT_DROP; } else if (rc == TO_BVI_ERR_ETHERTYPE) { b0->error = node->errors[L2FLOOD_ERROR_BVI_ETHERTYPE]; |