diff options
author | Matthew Smith <mgsmith@netgate.com> | 2020-09-10 10:09:01 -0500 |
---|---|---|
committer | Andrew Yourtchenko <ayourtch@gmail.com> | 2020-09-15 08:38:11 +0000 |
commit | 649ba152cbd335ce644c04c9f00140aba35f81e8 (patch) | |
tree | cccbc37dbe14de641173a8f8f0583a65ea804131 /src/vnet | |
parent | c13aab8ca1d6fcf0e662628433cafda85dc591bd (diff) |
l2: fix null deref in l2_to_bvi()
Type: fix
Static analysis identified a possible null pointer dereference. It
was introduced by a recent patch which expanded the DMAC comparison
on inbound packets on a BVI interface to include any secondary MAC
addresses which were added to an interface.
Check if the pointer is null before dereferencing.
Change-Id: Ic2afe2b062eda32977e05bf3f98d82c1fe64620c
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
(cherry picked from commit 78681def21b931309a779dfc6a5cbc6ff8b1f814)
Diffstat (limited to 'src/vnet')
-rw-r--r-- | src/vnet/l2/l2_bvi.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vnet/l2/l2_bvi.h b/src/vnet/l2/l2_bvi.h index 300ea81bbf0..697e25bf3de 100644 --- a/src/vnet/l2/l2_bvi.h +++ b/src/vnet/l2/l2_bvi.h @@ -72,7 +72,7 @@ l2_to_bvi (vlib_main_t * vlib_main, ethernet_interface_t *ei = ethernet_get_interface (em, hi->hw_if_index); u32 rv; - if (PREDICT_FALSE (vec_len (ei->secondary_addrs) > 0)) + if (PREDICT_FALSE (ei && (vec_len (ei->secondary_addrs) > 0))) rv = l2_to_bvi_dmac_check (hi, e0->dst_address, ei, 1 /* have_sec_dmac */ ); else |