map: fix coverity issue 205684
ip4_map_get_domain returns d0 = 0 in case of no domain,
and sets error MAP_ERROR_NO_DOMAIN. Rearrange the clauses
in the logical check that relies on dereferencing d0
such that boolean shortcutting takes care of not
referencing the null pointer.
Change-Id: I378adc120836ea920fc530808ac3c1f98ab8d593
Type: fix
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
diff --git a/src/plugins/map/ip6_map.c b/src/plugins/map/ip6_map.c
index 47958f9..899371e 100644
--- a/src/plugins/map/ip6_map.c
+++ b/src/plugins/map/ip6_map.c
@@ -618,8 +618,8 @@
MAP_ERROR_DECAP_SEC_CHECK;
if (PREDICT_FALSE
- (d0->mtu && (clib_host_to_net_u16 (ip40->length) > d0->mtu)
- && error0 == MAP_ERROR_NONE))
+ (error0 == MAP_ERROR_NONE &&
+ d0->mtu && (clib_host_to_net_u16 (ip40->length) > d0->mtu)))
{
vnet_buffer (p0)->ip_frag.flags = 0;
vnet_buffer (p0)->ip_frag.next_index = IP_FRAG_NEXT_IP4_LOOKUP;