summaryrefslogtreecommitdiffstats
path: root/isisd
diff options
context:
space:
mode:
authorCarmine Scarpitta <carmine.scarpitta@uniroma2.it>2023-06-03 13:30:32 +0200
committerCarmine Scarpitta <carmine.scarpitta@uniroma2.it>2023-09-11 17:35:15 +0200
commitc43043e618a36df8e833ff5b0f84c88a20adea3b (patch)
treede7817a83943f25422f28d7d746c08717f03f92b /isisd
parentisisd: Add MTID when packing SRv6 Locator TLV (diff)
downloadfrr-c43043e618a36df8e833ff5b0f84c88a20adea3b.tar.xz
frr-c43043e618a36df8e833ff5b0f84c88a20adea3b.zip
isisd: Decode MTID when unpacking SRv6 Locator TLV
The SRv6 Locator TLV (RFC 9352 section #7.1) starts with the MTID field. Let's expect the MTID as the first field when we are unpacking an SRv6 Locator TLV. Signed-off-by: Carmine Scarpitta <carmine.scarpitta@uniroma2.it>
Diffstat (limited to 'isisd')
-rw-r--r--isisd/isis_tlvs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/isisd/isis_tlvs.c b/isisd/isis_tlvs.c
index 81fb93e4b..35e970d1f 100644
--- a/isisd/isis_tlvs.c
+++ b/isisd/isis_tlvs.c
@@ -5378,7 +5378,8 @@ static int unpack_tlv_with_items(enum isis_tlv_context context,
tlv_start = stream_get_getp(s);
tlv_pos = 0;
- if (context == ISIS_CONTEXT_LSP && IS_COMPAT_MT_TLV(tlv_type)) {
+ if (context == ISIS_CONTEXT_LSP &&
+ (IS_COMPAT_MT_TLV(tlv_type) || tlv_type == ISIS_TLV_SRV6_LOCATOR)) {
if (tlv_len < 2) {
sbuf_push(log, indent,
"TLV is too short to contain MTID\n");