Closed donaldsharp closed 8 months ago
Hi Donald,
The problem comes from the fact that SID could be an index or an mpls label. In the first case, the size is 4 bytes while in the second case the size is 3 bytes. So, depending if the router is advertising an index within the SRGB range for Prefix SID or within SRLB range for Adjacency SID, or advertising an MPLS label, the size may vary. So, the code should look into the SID type (index or MPLS label) to check the size. I'll propose a PR for that.
Just published PR #14962 to correct this issue
Nice! I had the same problem today, and just Find out what the problem is and you've solved it~~~
When dumping the Adjacency Sid data, the ospf vty code expects it be 8 bytes of data but the value is 7.
Given that 7 is ok and not generating problems elsewhere. It sure seems like this is a problem in the dump code? When I modify the call to:
The code dumps more data. Clearly either FRR is generating the lsa tlv incorrectly ( it should be 8 bytes ) and we are not inter-operable with other vendors or the EXT_SUBTLV_ADJ_SID_SIZE should be modified. Either way I don't understand enough about the rfc and code to actually fix this issue without spending more time.
I can make this happen reliably running the ospf_sr_te_topo1 and adding a dump command on rtr1 when check_bsid is called.