FRR Mirror
  1. FRR Mirror

FRR

Public
AuthorCommitMessageCommit dateIssues
Mark StappGitHubMark Stapp
5a2949ebb2aMMerge pull request #21542 from TristanInSec/fix/isis-asla-subsubtlv-boundsisisd: validate ASLA sub-sub-TLV length before consuming bytes
Russ WhiteGitHubRuss White
2e4f442ea82MMerge pull request #21608 from opensourcerouting/fix/bgp_aigp_fixesbgpd: Add BGP_AIGP_TLV_MIN_LEN constant to easily read what it is
Russ WhiteGitHubRuss White
61ac369b0e5MMerge pull request #21589 from cscarpitta/srv6_isis_fix_unpackisisd: Use LAN End.X context for SRv6 sub-sub-TLV parsing
Russ WhiteGitHubRuss White
4c7c493509dMMerge pull request #21532 from opensourcerouting/fix/bgp_confederation_equal_bgp_externalbgpd: Do not reject the route if confederation AS matches peer AS
Russ WhiteGitHubRuss White
2f052aa754aMMerge pull request #21480 from enkechen-panw/default-originate-testtests: fix uptime check in test_bgp_default_originate_2links.py
Russ WhiteGitHubRuss White
a3b5d65b99eMMerge pull request #20726 from cscarpitta/feature/bgp_linkstate_bgp_fabricbgpd: Add support for BGP-LS for BGP fabric
Donatas AbraitisGitHubDonatas Abraitis
c46e6f24bd1MMerge pull request #21430 from karthikeyav/kmuppalla/upstream-advertisement-delaybgpd: add advertisement-delay to hold route advertisements after startup
Russ WhiteGitHubRuss White
afe1ddf1e9fMMerge pull request #21400 from sougatahitcs/sougatab/_static-route-bfd-admin-down-state-handling-improvementsstatic route bfd admin down state handling improvements
Mark StappGitHubMark Stapp
84723a8053dMMerge pull request #21684 from donaldsharp/pytest_mark_updatetests: Update pytestmark value in scripts
Russ WhiteGitHubRuss White
4909b5852beMMerge pull request #21411 from hnattamaisub/bgp_ne_advbgpd: v4/v6 neigh advertised & received routes brief json
Carmine ScarpittaCarmine Scarpitta
8491081a50fdoc: Add documentation for BGP-LS for BGP-only fabricsSigned-off-by: Carmine Scarpitta <cscarpit@cisco.com>
Carmine ScarpittaCarmine Scarpitta
909f90a4e71tests: Add BGP-LS BGP-only fabric topotestThe BGP-only fabric draft (draft-ietf-idr-bgp-ls-bgp-only-fabric) defines advertising topology and reachability via BGP-LS NLRIs. Add a topotest topology with rr (AS65000) collecting BGP-LS from four routers (r1-r4) using mixed iBGP/eBGP peerings and link-state AF. The test verifies baseline Node/Link/Prefix NLRI output against an expected JSON snapshot, and validates originate/withdraw behav...
Carmine ScarpittaCarmine Scarpitta
0f89795bf63bgpd: Add per-neighbor route-map commands under BGP-LS AFEnable per-neighbor route-map configuration under address-family link-state: ``` router bgp <asn> address-family link-state link-state neighbor <peer> route-map <rmap-name> ``` This wires neighbor_route_map_cmd and no_neighbor_route_map_cmd into BGP_LS_NODE so route-map policy can be applied to BGP-LS neighbors consistently with other address families. Signed-off-by: Carmine Scarpitta <cs...
Carmine ScarpittaCarmine Scarpitta
17998404899bgpd: Add per-neighbor BGP-LS local/remote link-id CLIsAdd per-neighbor CLI knobs to set BGP-LS link identifiers: ``` router bgp <asn neighbor <peer> local-link-id <1-4294967295> neighbor <peer> remote-link-id <1-4294967295> ``` These values let operators control link descriptor identifiers for BGP-LS Link NLRIs. If distribution is active, changing or removing either value triggers a withdraw/re-originate cycle so exported topology stays consis...
Carmine ScarpittaCarmine Scarpitta
e15218968f8bgpd: Add CLI to enable BGP-LS distribution for BGP-only fabricsIntroduce a new router-mode command to control BGP-LS export for BGP-only fabrics: ``` router bgp 65001 address-family link-state link-state distribute bgp-fabric-link-state [instance-id WORD] ``` When enabled, bgpd exports the current topology as BGP-LS Node/Link/Prefix NLRIs. When disabled, bgpd withdraws all NLRIs originated through this feature. If the instance-id changes while distrib...
Carmine ScarpittaCarmine Scarpitta
11d9d690a36bgpd: Trigger BGP-LS link originate/withdraw on peer state eventsThe BGP-only fabric draft (draft-ietf-idr-bgp-ls-bgp-only-fabric) defines advertising BGP session topology as BGP-LS Link NLRIs. When a peer session is established, call bgp_ls_originate_bgp_link() to originate the corresponding BGP-LS Link NLRI. When a peer session goes down, call bgp_ls_withdraw_bgp_link() to withdraw the corresponding BGP-LS Link NLRI. Signed-off-by: Carmine Scarpitta <cs...
Carmine ScarpittaCarmine Scarpitta
a6d9b870470bgpd: Re-export BGP-LS topology on router-id and instance eventsThe BGP-only fabric draft (draft-ietf-idr-bgp-ls-bgp-only-fabric) defines topology advertisement using BGP-LS Node and Link NLRIs. When the local router-id changes, withdraw all BGP-LS NLRIs and re-export topology with the new router-id. When a BGP instance is created, call bgp_ls_originate_bgp_node() to originate the corresponding BGP-LS Node NLRI. Signed-off-by: Carmine Scarpitta <cscarpit...
Carmine ScarpittaCarmine Scarpitta
e2532aef6e3bgpd: Trigger BGP-LS prefix originate/withdraw on route eventsThe BGP-only fabric draft (draft-ietf-idr-bgp-ls-bgp-only-fabric) defines advertising unicast prefix reachability as BGP-LS Prefix NLRIs. When a unicast route is added or updated, call bgp_ls_originate_bgp_prefix() to originate the corresponding BGP-LS Prefix NLRI. When a unicast route is deleted, call bgp_ls_withdraw_bgp_prefix() to withdraw the corresponding BGP-LS Prefix NLRI. Signed-off-...
Karthikeya Venkat MuppallaKarthikeya Venkat Muppalla
cfb792a93b2tests: add topotest for bgp advertisement-delayAdd topotest exercising the advertisement-delay feature with a simple r1--r2--r3 topology where r2 is the UUT. Test cases: - Initial convergence without any delay configured - show bgp router json / show bgp summary json show configured value - advertisement-delay in progress: peers Established, pfxSnt=0 - RIB is populated during delay (only advertisements are held) - delay completes: pfxSnt>0...
Karthikeya Venkat MuppallaKarthikeya Venkat Muppalla
51d634d7b34doc: add advertisement-delay documentation to bgp user guideDocument the bgp advertisement-delay CLI (global and per-vrf). Clarify that the delay applies to all AFI/SAFI, re-triggers on clear ip bgp *, and is unrelated to the per-neighbor advertisement-interval. Signed-off-by: Karthikeya Venkat Muppalla <kmuppalla@nvidia.com> Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Carmine ScarpittaCarmine Scarpitta
46197ca9402bgpd: Add BGP-LS originate/withdraw functions for BGP-only fabricAdd functions to originate and withdraw BGP-LS NLRIs representing the local BGP topology for BGP-only fabrics, per draft-ietf-idr-bgp-ls-bgp-only-fabric: - bgp_ls_originate_bgp_node(): originate a Node NLRI for the local BGP router. - bgp_ls_originate_bgp_link(): originate a Link NLRI for a BGP session to a peer. - bgp_ls_originate_bgp_prefix(): originate a Prefix NLRI for a BGP unicast ...
Carmine ScarpittaCarmine Scarpitta
da8f9881084bgpd: Add BGP Route Type TLV support to BGP-LS prefix descriptorImplement support for BGP Route Type TLV in BGP-LS prefix descriptors as specified in draft-ietf-idr-bgp-ls-bgp-only-fabric. This includes: - Encoding/decoding of BGP Route Type TLV (1 byte value) - Support for 5 route type values: Local, Attached, External/Internal BGP, Redistributed - Hash key generation and descriptor comparison - Display and JSON output formatting Signed-off-by: Carmine Sc...
Carmine ScarpittaCarmine Scarpitta
b948650abe9bgpd: Add BGP Router-ID (TLV 516) support to BGP-LS node descriptorAdd full support for the BGP Router-ID sub-TLV (TLV 516) in BGP-LS node descriptors, as required by draft-ietf-idr-bgp-ls-bgp-only-fabric. - Define TLV 516 constant, bit flag, size macro, and add bgp_router_id field to struct bgp_ls_node_descriptor - Encode and decode BGP Router-ID TLV with length validation - Relax NLRI validation to accept BGP Router-ID in place of IGP Router-ID for Node...
Donald SharpDonald Sharp
a1239aca092tests: Update pytestmark value in scriptsNoticed while examining a test today that the pytest marks were not 100% correct. Wrote a script that compared what was loaded via configuration -vs- what the pytestmark values where, then I adjusted all the pytestmark values to be more accurate. There still might be a few that are `wrong` but we are much closer now. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Karthikeya Venkat MuppallaKarthikeya Venkat Muppalla
25b52f9c9fabgpd: add advertisement-delay to hold route advertisements after startupAdd advertisement-delay CLI and logic that holds route advertisements to peers for a configured number of seconds after the first peer reaches Established state. - Global: bgp advertisement-delay (1-3600) - Per-instance: advertisement-delay (1-3600) - With update-delay: both timers start at T0 (first peer Established). Advertisements released at max(time_FIB_ready, T0 + A). - Without update-...
Donald SharpGitHubDonald Sharp
0a0a8c07552MMerge pull request #21605 from opensourcerouting/fix/bgp_nhc_fixesbgpd: Avoid having a dangling pointer after we free NHC attribute
Donald SharpGitHubDonald Sharp
be771c2508bMMerge pull request #21606 from opensourcerouting/fix/bgp_nhc_fixes_2bgpd: Do not allocate NHC TLV with an extra trailer
Jafar Al-GharaibehGitHubJafar Al-Gharaibeh
85441104dfbMMerge pull request #21649 from donaldsharp/suppress_fib_fixuptests: bgp_suppress_fib was not stable before testing
Donald SharpGitHubDonald Sharp
1de9cf8d02cMMerge pull request #21641 from cscarpitta/fix_srv6_locator_tlv_locsizeisisd: Reject SRv6 Locator TLV with Loc-Size of zero
Mark StappGitHubMark Stapp
f9bf99aacc0MMerge pull request #21611 from opensourcerouting/fix/bgp_nhc_check_bgpid_tlv_against_0bgpd: Validate if NHC BGPID TLV value is non-zero
Donatas AbraitisGitHubDonatas Abraitis
abfc9c597acMMerge pull request #21558 from shashanka-ks/bgpd-gr-stale-route-cleanupbgpd: migrate timers during peer_xfer_conn to fix stale route cleanup
Donatas AbraitisGitHubDonatas Abraitis
a38c32385f0MMerge pull request #21657 from cscarpitta/simplify_bgp_ls_parsingbgpd: Simplify BGP-LS NLRI TLV encoding by inlining helper functions
Christian HoppsGitHubChristian Hopps
e413ac742b1MMerge pull request #21514 from reinaldosaraiva/upstream-submit/ub-11-mgmtd-listen-backloglib: mgmt: use SOMAXCONN for mgmtd socket listen backlog
Donatas AbraitisGitHubDonatas Abraitis
90d9be6855bMMerge pull request #21658 from enissim/dynamicNeighborsbgpd: honor 'no activate' for dynamic neighbors in peer-group
Eyal NissimEyal Nissim
48aa37f11f0bgpd: honor 'no activate' for dynamic neighbors in peer-groupWhen a dynamic peer connects via 'bgp listen range', peer_create() activates IPv4 unicast by default. peer_create_bind_dynamic_neighbor() then applies the group's AF config but only activates AFIs the group has enabled -- it never deactivates AFIs the group has disabled. This causes 'no neighbor <group> activate' under an address-family to be ignored for dynamic peers. Add peer_deactivate() f...
Carmine ScarpittaCarmine Scarpitta
1e5c1f31102bgpd: Simplify BGP-LS NLRI TLV encoding by inlining helper functionsRemove the TLV encoding helper functions (stream_put_tlv_hdr, stream_put_tlv, and stream_putf_tlv) and inline their logic directly into the encoder functions. This improves code clarity and consistency by: - Consolidating stream writeable checks before encoding each TLV - Eliminating the confusion of split writeable checks between helpers and callers The encoder functions now directly call ...
Carmine ScarpittaGitHubCarmine Scarpitta
c3ea9ee8d5eMMerge pull request #21541 from TristanInSec/fix/isis-srv6-endx-sizeisisd: correct SRv6 End.X SID minimum size constants
Carmine ScarpittaGitHubCarmine Scarpitta
68d6821700fMMerge pull request #21627 from donaldsharp/coverity_cleanup_some_more_more_moreCoverity cleanup some more items found
Reinaldo SaraivaChristian HoppsReinaldo Saraiva
a67d09f37fflib: mgmt: use SOMAXCONN for mgmtd socket listen backlogThe mgmtd frontend and backend UNIX sockets pass a compile-time constant of 32 to listen(2) as the accept-queue backlog. Under fan-in from multiple concurrent clients (vtysh sessions, test harnesses, external controllers) the kernel accept queue saturates and new connect(2) attempts fail with EAGAIN before the msg_server handler runs. This is observable as a hard ceiling: at roughly 1000 concur...
Christian HoppsGitHubChristian Hopps
b1a71ee079aMMerge pull request #21629 from donaldsharp/cleanup_bgp_show_runtests: Remove `show running bgpd` from the topotests
Donald SharpDonald Sharp
f611e6bd5dftests: bgp_suppress_fib was not stable before testingbgp_suppress fib is bringing up peers and then ensuring that the peers are established and then immediately changing some configuration that should not cause changes in prefixes being sent or received. Under heavy load you can have peerings but not fully passed prefixes, thus leaving a timing window where things are still changing. Ensure that nothing has changed for 10 seconds before preceed...
Donald SharpGitHubDonald Sharp
4031aca1a1dMMerge pull request #21609 from cscarpitta/fix_bgp_ls_link_nlribgpd: Reject BGP-LS Link NLRIs without Link Descriptor
Donald SharpGitHubDonald Sharp
a57e12a084fMMerge pull request #21600 from cscarpitta/fix_mt_id_parsebgpd: Prevent zero-length BGP-LS MT-ID TLV
Donald SharpGitHubDonald Sharp
b821a78c3f7MMerge pull request #21544 from TristanInSec/fix/isis-fad-leftover-bytesisisd: consume leftover bytes after FAD sub-sub-TLV loop
Carmine ScarpittaCarmine Scarpitta
0fe82808892isisd: Reject SRv6 Locator TLV with Loc-Size of zeroRFC 9352 Section 7.1 requires Loc-Size to be in the range 1-128. A value of zero is invalid and must cause the entire TLV to be ignored. The existing check only rejects values greater than 128, allowing zero through and producing a zero-length prefix that can confuse downstream consumers. Fix this by extending the condition to also reject zero: if (rv->prefix.prefixlen == 0 || rv->prefix.pr...
Donald SharpGitHubDonald Sharp
264db368010MMerge pull request #21610 from opensourcerouting/fix/bgp_as4_zerobgpd: Clearly check for AS4 against 0 value
Donald SharpGitHubDonald Sharp
a5e57ebbcd2MMerge pull request #21612 from cscarpitta/harden_srv6_service_data_parserbgpd: Harden SRv6 Service Data parser for SID Structure length
Donald SharpGitHubDonald Sharp
9b366ca1fe0MMerge pull request #21607 from cscarpitta/fix_bgp_ls_decode_nlribgpd: Consolidate redundant stream bounds checks in `bgp_ls_decode_nlri`
Donald SharpGitHubDonald Sharp
5dcd38a2bdaMMerge pull request #21615 from mjstapp/fix_nhrp_auth_debugnhrpd: stop debugging auth credentials
Donald SharpDonald Sharp
526b3a55e39tests: Remove `show running bgpd` from the topotestsIn the future bgp is going to transition to using mgmtd and the `show running-config bgpd` command is going to dissapear. Let's facilitate this by going ahead and removing this special case code for the future. Signed-off-by: Donald Sharp <sharpd@nvidia.com>