isisd: Pack SRv6 End SID when packing Sub-TLVs

Extend generic Sub-TLVs pack function to pack SRv6 End SID Sub-TLVs
(RFC 9352 section #7.2).

Signed-off-by: Carmine Scarpitta <carmine.scarpitta@uniroma2.it>
This commit is contained in:
Carmine Scarpitta 2023-02-14 12:52:30 +01:00
parent 47dc349498
commit b9547a0b70

View File

@ -2054,6 +2054,11 @@ static int pack_subtlvs(struct isis_subtlvs *subtlvs, struct stream *s)
if (rv)
return rv;
rv = pack_items(subtlvs->context, ISIS_SUBTLV_SRV6_END_SID,
&subtlvs->srv6_end_sids, s, NULL, NULL, NULL, NULL);
if (rv)
return rv;
size_t subtlv_len = stream_get_endp(s) - subtlv_len_pos - 1;
if (subtlv_len > 255)
return 1;