diff options
author | AkshayaNadahalli <anadahal@cisco.com> | 2017-03-10 18:38:13 +0000 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2017-03-14 12:01:05 +0000 |
commit | b20dd1ba714c0b6de78abfe05dbee5b076cdac72 (patch) | |
tree | dbc1f4ec8d7626070764c3315e66945f54ffc470 /src/plugins/ioam/udp-ping/udp_ping_node.c | |
parent | a38e0f0d14cfe633318c23d8940f2140cb2b2320 (diff) |
IOAM Coverity fix
Coverity IDs - 163911, 163910, 163909, 163908, 163905, 163904, 163896, 161957, 161955
Change-Id: Ida822fa45c6936240f61282e2280541d7e6427b3
Signed-off-by: AkshayaNadahalli <anadahal@cisco.com>
Diffstat (limited to 'src/plugins/ioam/udp-ping/udp_ping_node.c')
-rw-r--r-- | src/plugins/ioam/udp-ping/udp_ping_node.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/plugins/ioam/udp-ping/udp_ping_node.c b/src/plugins/ioam/udp-ping/udp_ping_node.c index 4de8fe2f894..84759b0fab8 100644 --- a/src/plugins/ioam/udp-ping/udp_ping_node.c +++ b/src/plugins/ioam/udp-ping/udp_ping_node.c @@ -429,7 +429,18 @@ udp_ping_analyse_hbh (vlib_buffer_t * b0, ioam_e2e_option_t *e2e; ioam_trace_option_t *trace; + /* If the packet doesnt match UDP session then return */ + if (PREDICT_FALSE (pool_is_free_index (udp_ping_main.ip46_flow, flow_id))) + return; + ip46_flow = udp_ping_main.ip46_flow + flow_id; + /* Check port is within range */ + if (PREDICT_FALSE ((src_port < ip46_flow->udp_data.start_src_port) || + (src_port > ip46_flow->udp_data.end_src_port) || + (dst_port < ip46_flow->udp_data.start_dst_port) || + (dst_port > ip46_flow->udp_data.end_dst_port))) + return; + flow_index = (src_port - ip46_flow->udp_data.start_src_port) * (ip46_flow->udp_data.end_dst_port - ip46_flow->udp_data.start_dst_port + 1); |