VPP-1481: fixed tlv length checking & added tests

Change-Id: I9375bca5f5136c84d801dbd635929bb1c37d75b4
Signed-off-by: Filip Varga <filip.varga@pantheon.tech>
This commit is contained in:
Filip Varga
2018-11-05 09:41:56 +01:00
committed by Damjan Marion
parent 55c6c4a422
commit 3206bb15aa
2 changed files with 19 additions and 5 deletions

View File

@ -91,9 +91,15 @@ class TestCDP(VppTestCase):
self.assert_equal(system, self.device_id,
"CDP received invalid device id")
def test_send_cdp_bad_packet(self):
def test_cdp_underflow_tlv(self):
self.send_bad_packet(3, ".")
def test_cdp_overflow_tlv(self):
self.send_bad_packet(8, ".")
def send_bad_packet(self, l, v):
self.logger.info(self.vapi.cli("cdp enable"))
self.send_packet(self.create_bad_packet(8, "."))
self.send_packet(self.create_bad_packet(l, v))
errors = list(self.show_errors())
self.assertTrue(errors)
@ -102,7 +108,7 @@ class TestCDP(VppTestCase):
for count, node, reason in errors:
if (node == u'cdp-input' and
reason == u'cdp packets with bad TLVs' and
int(count) == 1):
int(count) >= 1):
expected_errors = True
break