IGMP: coverity fixes and remove checks for scapy IGMPv3

Change-Id: Ic2eddc803f9ba8215e37388a686004830211cf6f
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
This commit is contained in:
Neale Ranns
2018-03-21 16:34:28 -07:00
committed by Damjan Marion
parent a005e7f0ef
commit 5237c77cdd
3 changed files with 6 additions and 25 deletions

View File

@ -206,7 +206,7 @@ ip4_lookup (ip4_address_t * a, igmp_membership_report_v3_t * igmp, u16 n,
for (i = 0; i < n; i++)
{
if ((!ip4_address_compare (a, &group_ptr (igmp, l)->dst_address)) &&
if ((!ip4_address_compare (a, &(group_ptr (igmp, l)->dst_address))) &&
(type == group_ptr (igmp, l)->type))
{
rv = 1;
@ -549,12 +549,11 @@ igmp_timer_process (vlib_main_t * vm, vlib_node_runtime_t * rt,
igmp_main_t *im = &igmp_main;
uword *event_data = 0, event_type;
f64 time_start;
u8 enabled = 0;
igmp_timer_t *timer = NULL;
while (1)
{
if (enabled)
if (NULL != timer)
vlib_process_wait_for_event_or_clock (vm,
timer->exp_time - time_start);
else
@ -571,14 +570,11 @@ igmp_timer_process (vlib_main_t * vm, vlib_node_runtime_t * rt,
DBG ("time: %f", vlib_time_now (vm));
/* timer expired */
timer->func (vm, rt, im, timer);
if (NULL != timer)
timer->func (vm, rt, im, timer);
next_timer:
timer = igmp_get_next_timer (im);
if (timer == NULL)
enabled = 0;
else
enabled = 1;
}
return 0;
}

View File

@ -36,7 +36,7 @@
#define DBG(...)
#endif /* IGMP_DBG */
#define group_ptr(p, l) ((igmp_membership_group_v3_t *)((void*)p + l))
#define group_ptr(p, l) ((igmp_membership_group_v3_t *)((char*)p + l))
enum
{

View File

@ -13,17 +13,6 @@ from scapy.contrib.igmpv3 import *
from scapy.contrib.igmp import *
def checkIGMPv3():
try:
tmp = IGMPv3()
tmp = IGMPv3mr()
tmp = IGMPv3gr()
tmp = IGMPv3mq()
except NameError:
return False
return True
class TestIgmp(VppTestCase):
""" IGMP Test Case """
@ -52,7 +41,6 @@ class TestIgmp(VppTestCase):
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
@unittest.skipUnless(checkIGMPv3(), "missing scapy igmpv3 implementation")
def test_igmp_parse_report(self):
""" IGMP parse Membership Report """
@ -148,7 +136,6 @@ class TestIgmp(VppTestCase):
self.assertEqual(igmp.type, 0x11)
self.assertEqual(igmp.gaddr, "0.0.0.0")
@unittest.skipUnless(checkIGMPv3(), "missing scapy igmpv3 implementation")
def test_igmp_send_query(self):
""" IGMP send General Query """
@ -178,7 +165,7 @@ class TestIgmp(VppTestCase):
self.sleep(10)
self.assertFalse(self.vapi.igmp_dump())
@unittest.skipUnless(checkIGMPv3(), "missing scapy igmpv3 implementation")
@unittest.skipUnless(running_extended_tests(), "part of extended tests")
def test_igmp_src_exp(self):
""" IGMP per source timer """
@ -238,7 +225,6 @@ class TestIgmp(VppTestCase):
self.logger.error(self.vapi.cli("sh igmp config"))
self.assertFalse(self.vapi.igmp_dump())
@unittest.skipUnless(checkIGMPv3(), "missing scapy igmpv3 implementation")
def test_igmp_query_resp(self):
""" IGMP General Query response """
@ -281,7 +267,6 @@ class TestIgmp(VppTestCase):
self.assertEqual(len(capture[0][IGMPv3gr].srcaddrs), 1)
self.assertEqual(capture[0][IGMPv3gr].srcaddrs[0], "10.1.1.1")
@unittest.skipUnless(checkIGMPv3(), "missing scapy igmpv3 implementation")
def test_igmp_listen(self):
""" IGMP listen (S,G)s """