FRR Mirror
  1. FRR Mirror

FRR

Public
AuthorCommitMessageCommit dateIssues
Donald SharpGitHubDonald Sharp
ae7c04c536eMMerge pull request #21283 from cscarpitta/fix_srv6_bgp_grt_rmap_changebgpd: Fix SRv6 SID export route-map update not taking effect
Donald SharpGitHubDonald Sharp
5b86c319bbfMMerge pull request #21284 from cscarpitta/fix_bgp_grt_testtests: Fix wrong expectations in `bgp_srv6_unicast` topotest
Carmine ScarpittaGitHubCarmine Scarpitta
bbc532dbaebMMerge pull request #21076 from hedrok/bgp_ls_ad_prefix_sid_tlv_1158bgpd: BGP-LS: add Prefix SID (TLV 1158)
Carmine ScarpittaCarmine Scarpitta
52e96d2bc6ctests: Fix test_bgp_srv6_sid_unexport expectationsAfter removing sid export on R1, the test checks both 10.0.0.1/32 and 10.0.0.3/32 on R2 with expect_sid="", expecting neither to carry a SRv6 SID. This is wrong: 10.0.0.3/32 is originated by R3 which still has sid export configured, so it should still be seen on R2 with r3_unicast_sid. This wrong expectation was not caught because check_route() did not verify the absence of a SID when expect_s...
Carmine ScarpittaCarmine Scarpitta
543bbb7a9d1tests: Fix check_route not verifying absence of SIDWhen check_route() is called with expect_sid="" to assert that a route has no SRv6 SID, it silently succeeds even if a SID is present. Add an explicit check: when expect_sid is "", return an error if a SRv6 SID is found on the route. Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
Carmine ScarpittaCarmine Scarpitta
141ca524899tests: Add test for sid export route-map update in bgp_srv6_unicastAdd test_bgp_srv6_sid_rmap_update() to verify that replacing an already-configured sid export route-map with a different one correctly applies the new policy. The test reconfigures R1 with a new route-map (filter2) that excludes 10.0.0.1/32 from SID assignment, confirms the prefix loses its SRv6 encapsulation on R2 and becomes uninstalled on R3, then restores the original route-map (filter) an...
Carmine ScarpittaCarmine Scarpitta
e1f50172868bgpd: Fix sid export route-map update not taking effectWhen `sid export ... route-map <name>` is reconfigured with a different route-map on an already-configured SID export, the new route-map is silently ignored. The code skips the early-return (rmap_str != rmap_name), but then calls bgp_srv6_unicast_announce() without updating rmap_name, so the old route-map remains in effect. Fix this by replacing rmap_name before triggering the re-announce: dec...
Donald SharpGitHubDonald Sharp
8da35c5888aMMerge pull request #21281 from LabNConsulting/chopps/fix-lyd-new-term-argzebra: lib: use old compatible value for lyd_new_term
Christian HoppsChristian Hopps
38b9fe0d3bbzebra: lib: use old compatible value for lyd_new_termFor now use backward compatible `false` value for the penultimate arg to `lyd_new_term()` to match earlier versions of libyang API. This matches all the other current uses of `lyd_new_term()` in the code. Signed-off-by: Christian Hopps <chopps@labn.net>
Donald SharpGitHubDonald Sharp
a1b5032c7d8MMerge pull request #21065 from LabNConsulting/chopps/nmda+router-id-op-stateEnable RFC8342 YANG NMDA functionality and add router-id oper-state that uses it.
Christian HoppsGitHubChristian Hopps
eace8561461MMerge pull request #21276 from donaldsharp/mgmt_external_routezebra: Move `allow-external-route-update` to mgmt frontend side
Donald SharpDonald Sharp
e4dca9e92f1zebra: Move `allow-external-route-update` to mgmt frontend sideThe `allow-external-route-update` command was being compiled into the zebra side of the nb code. Thus when configuration was being applied that uses mgmtd as a frontend and zebra as the frontend one would get there first and lock the database, preventing the other side from working. Move this command to the correct spot. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donatas AbraitisGitHubDonatas Abraitis
1323200beafMMerge pull request #21265 from chiragshah6/zdevzebra: add debug in route install around nhg not ready
Donatas AbraitisGitHubDonatas Abraitis
5b6923f8927MMerge pull request #21264 from soumyar-roy/soumya/cleanupNHTbgpd: fix BNC cleanup for explicit link-local peers
Jafar Al-GharaibehGitHubJafar Al-Gharaibeh
6503ac50956MMerge pull request #21251 from mjstapp/fix_vrrp_pktsvrrrpd: improve error handling in several paths
Chirag ShahChirag Shah
f2e9b0ddfcczebra: add debug route install nhg not readyTicket: #4929905 debug log: 2026/03/20 01:41:09.401823 ZEBRA: [ZSM84-3K06X] dplane_ctx_route_init route 81.0.0.5/32 op ROUTE_UPDATE nhg id 225 flags 0x5 nh 27.0.0.1 if 4 vrfid 0 not installed nor queued Tracepoint: 2026-03-20T01:35:06.111 frr_zebra:dplane_ctx_route_kernel_nhg_not_ready {'op': 2, 'nhe_id': 141, 'nhe_flags': 515, 'vrf_id': 41} 2026-03-20T01:35:10.366 frr_zebra:dplane_ctx_route...
Soumya RoySoumya Roy
8bcc683650ftests: add orphan BNC cleanup test for explicit LL peer deletionVerify that deleting an explicit link-local BGP neighbor leaves no orphan BNC behind. Without the conf_if guard in bgp_unlink_nexthop_by_peer() and bgp_delete_connected_nexthop(), the BNC lookup uses scope_id (non-zero after TCP) while the BNC was created with ifindex 0, causing the cleanup to miss. Signed-off-by: Soumya Roy <souroy@nvidia.com>
Soumya RoySoumya Roy
dbc1354e589bgpd: fix BNC cleanup for explicit link-local peersbgp_unlink_nexthop_by_peer() and bgp_delete_connected_nexthop() look up the BNC using scope_id to derive the ifindex. For explicit LL peers (conf_if NULL) the BNC was created with ifindex 0, but after the TCP handshake scope_id is non-zero. The mismatch causes the lookup to miss, leaving an orphan BNC with a stale nht_info pointer after the peer is deleted. Add the same conf_if guard that pee...
Donatas AbraitisGitHubDonatas Abraitis
9a3093847edMMerge pull request #21192 from chiragshah6/bgp_bp_genbgpd: backpressure generic framework
Mark StappMark Stapp
fa04cad40f8vrrpd: replace some assertsReplace several asserts with error returns, especially in packet-processing paths. Signed-off-by: Mark Stapp <mjs@cisco.com>
Mark StappMark Stapp
ccca97b5a44vrrpd: only support ethernet in GARP codeDon't mix explicit ethernet and per-interface hw values; we only support ethernet for g-ARP messages. Signed-off-by: Mark Stapp <mjs@cisco.com>
Mark StappMark Stapp
f923267f083vrrpd: limit advertised timers to 12-bitsEnsure advertised vrrpv3 timers are limited to 12 bits. Signed-off-by: Mark Stapp <mjs@cisco.com>
Russ WhiteGitHubRuss White
1d91017edfaMMerge pull request #21211 from opensourcerouting/fix/cap_overflow_parsing_unknownbgpd: Check if we are not overusing error_data buffer when unknown cap received
Russ WhiteGitHubRuss White
b771d8fe1c5MMerge pull request #20854 from sougatahitcs/sougatab/static-to-dynamic-bfd-socketsbfdd: moving bfd socket allocation from static to dynamic
Jafar Al-GharaibehGitHubJafar Al-Gharaibeh
d9b35d944b2MMerge pull request #21217 from mjstapp/fix_ripng_miscripngd: fix data handling in several places
Donatas AbraitisGitHubDonatas Abraitis
c6227bbfcfcMMerge pull request #21102 from cscarpitta/fix_bgp_ls_coverity_defectsbgpd: Fix coverity defects in BGP-LS code
Russ WhiteGitHubRuss White
89b87964cb3MMerge pull request #18217 from Shbinging/fix_ip_rip_versionripd: fix ip rip send/receive version command
Donatas AbraitisDonatas Abraitis
5fd5e495446bgpd: Check if we are not overusing error_data buffer when unknown cap receivedThere is no bounds check before the memcpy(). With Extended Message support enabled, incoming OPEN messages can be up to 65535 bytes, so the total size of unknown capability TLVs can far exceed 4096 bytes, overflowing the stack buffer. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Russ WhiteGitHubRuss White
9530e0ab16bMMerge pull request #21215 from mjstapp/fix_ripd_pktsripd: fix data-handling in several places
Russ WhiteGitHubRuss White
05cdd4a81bfMMerge pull request #21203 from enkechen-panw/bgp-dup-test2tests: bgp_suppress_duplicates: simplify and split into four tests
Russ WhiteGitHubRuss White
735cdb057b8MMerge pull request #21191 from cscarpitta/fix_rmap_cleanup_orderingbgpd: Fix route-map cleanup ordering in SRv6 unicast SID export
Russ WhiteGitHubRuss White
5d28c9ad6b5MMerge pull request #21187 from Jafaral/nhrp-crash[WIP] nhrpd: guard AFI/table lookups in route resolution
Russ WhiteGitHubRuss White
10498c0e9bbMMerge pull request #21166 from enkechen-panw/network-nexthopbgpd: fix BGP_ATTR_NEXT_HOP flag handling in bgp_attr_default_set()
Russ WhiteGitHubRuss White
4825b5ba563MMerge pull request #21098 from mjstapp/fix_bgp_parse_evpn_vncbgpd: improve packet parsing for EVPN and ENCAP/VNC
Russ WhiteGitHubRuss White
3d09b69d358MMerge pull request #21126 from Manpreet-k0/stale_vtep_mrtests: add EVPN VTEP cleanup and recovery test on uplink flap
Russ WhiteGitHubRuss White
efe5c083dabMMerge pull request #21113 from opensourcerouting/fix/bgp_aspath_count_hopsbgpd: Return original as-path when reconciling AS versus AS4
Russ WhiteGitHubRuss White
3a2c202d925MMerge pull request #21097 from Jafaral/nhrp-scannhrpd: harden against malformed packets
Russ WhiteGitHubRuss White
8eb50e82ebeMMerge pull request #21095 from opensourcerouting/fix/bgp_vulnerabilitiesbgpd: harden attribute parsing and packet handling in a few places
Russ WhiteGitHubRuss White
54574457ce0MMerge pull request #21075 from opensourcerouting/fix/bgp_mp_reach_nlri_0.0.0.0bgpd: Validate MP_REACH_NLRI attribute against incorrect next-hop
Russ WhiteGitHubRuss White
27d7a2b22f8MMerge pull request #20350 from anlancs/zebra/fix-empty-vidzebra: fix missing vlan change
Chirag ShahChirag Shah
6d5aaf74c0ebgpd: backpressure per instnace queued dest statsnode# show bgp statistics BGP IPv6 Unicast RIB statistics (VRF default) Total Advertisements : 15 Total Prefixes : 15 Average prefix length : 98.13 Unaggregateable prefixes : 15 Maximum aggregateable prefixes: 0 BGP Aggregate advertisements : 0 Address space advertised : 6.01295e+10 ...
Chirag ShahChirag Shah
a88f99e46dbbgpd: backpressure add list count in global show cmdBGP started at Mon Mar 16 19:27:16 2026 BGP GSHUT is disabled. Number of BGP instances (including default): 1 BGP suppress-fib-pending is disabled. BGP Input Queue Limit: 10000 BGP Output Queue Limit: 10000 Zebra Announce Count: 0 <<< BGP Global Update Delay Timers: Update Delay Time: 0s Establish Wait Time: 0s { "bgpStartedAt":"Mon Mar 16 19:27:16 2026\n", "bgpStartedGracefully":"No...
Chirag ShahChirag Shah
5cbcc686b3abgpd: backpressure generic framework dest back ptrFor generic backpressur logic, the dest carrying the backpressure list node pointer. Signed-off-by: Chirag Shah <chirag@nvidia.com> Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Chirag ShahChirag Shah
a2c022b4d4cbgpd: backpressure generic frameworkThis change decouples the backpressure logic from being tied exclusively to bgp_dest. It introduces a generic structure that can hold a void pointer to any BGP-related object that needs to send to zebra using the the backpressure framework. The associated enum identifies the object type so the correct ZAPI handler can be invoked. Signed-off-by: Chirag Shah <chirag@nvidia.com> Signed-off-by: Do...
Mark StappMark Stapp
35e3a1e0235ripngd: fix data handling in several placesDon't accept responses unless interface is configured; be more careful with route_node before dereferencing the info pointer; validate min and max packet size before processing. Signed-off-by: Mark Stapp <mjs@cisco.com>
Mark StappMark Stapp
4fe4861af36ripd: ensure simple-auth value is NULL-terminatedEnsure the simple-auth string is in a NULL-terminated buffer before printing it with '%s'. Signed-off-by: Mark Stapp <mjs@cisco.com>
Mark StappMark Stapp
9d0a6bfd808ripd: use rn->info properly in process_response()route_node->info is a list, not a single object; use it correctly, and avoid NULL-deref potential. Signed-off-by: Mark Stapp <mjs@cisco.com>
Donatas AbraitisGitHubDonatas Abraitis
3da324e3678MMerge pull request #21188 from soumyar-roy/soumya/nexthopLLbgpd: fix NHT for explicit link-local BGP peers
Donald SharpGitHubDonald Sharp
13f726016fcMMerge pull request #21210 from opensourcerouting/fix/bgp_route_refresh_borrbgpd: Do not process route-refresh for AFI/SAFI if it's not negotiated
Russ WhiteGitHubRuss White
51f40797ea7MMerge pull request #21043 from opensourcerouting/fix/memory_leak_fqdn_capabilitybgpd: Free hostname for FQDN capability if the parsing goes wrong