]> git.proxmox.com Git - mirror_frr.git/commit
isisd: fix router capability TLV parsing issues
authorJuraj Vijtiuk <juraj.vijtiuk@sartura.hr>
Wed, 13 Oct 2021 16:32:53 +0000 (18:32 +0200)
committerIgor Ryzhov <iryzhov@nfware.com>
Tue, 8 Feb 2022 08:31:45 +0000 (11:31 +0300)
commit9ba865f54d331c550629304cb25e77ac81455803
treec32d8a0b02d8376b33c70d25c0492ee94991d9de
parent249932f969e96ffb27276146d59f9031326c373b
isisd: fix router capability TLV parsing issues

isis_tlvs.c would fail at multiple places if incorrect TLVs were
received causing stream assertion violations.
This patch fixes the issues by adding missing length checks, missing
consumed length updates and handling malformed Segment Routing subTLVs.

Signed-off-by: Juraj Vijtiuk <juraj.vijtiuk@sartura.hr>
Small adjustments by Igor Ryzhov:
- fix incorrect replacement of srgb by srlb on lines 3052 and 3054
- add length check for ISIS_SUBTLV_ALGORITHM
- fix conflict in fuzzing data during rebase

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
isisd/isis_tlvs.c
isisd/isis_tlvs.h
tests/isisd/test_fuzz_isis_tlv_tests.h.gz