FRR Mirror
  1. FRR Mirror

FRR

Public
AuthorCommitMessageCommit dateIssues
Mark StappGitHubMark Stapp
b97fb700b35MMerge pull request #21433 from y-bharath14/srib-yang-V14yang: Correct pyang errors in frr-pim-route-map.yang
Mark StappGitHubMark Stapp
f7e66de6235MMerge pull request #21431 from Jafaral/fix-pim-channel-oil-crashpimd: guard channel OIL detach against stale pointers
Y BharathY Bharath
fa5f2f3866eyang: Correct pyang errors in frr-pim-route-map.yangCorrect pyang errors in frr-pim-route-map.yang Signed-off-by: y-bharath14 <y.bharath@samsung.com>
Jafar Al-GharaibehJafar Al-Gharaibeh
887cf38c21cpimd: use upstream-owned pim pointer in register and upstream timersMultiple upstream control paths fetched the PIM instance through up->channel_oil->pim even though upstream already owns a stable up->pim pointer. In teardown/re-eval edge flows, channel_oil can be detached before these paths execute. Dereferencing channel_oil only to access pim adds an avoidable null/stale pointer risk. Switch these call sites to up->pim: - pim_register_join() - pim_upstream_...
Jafar Al-GharaibehJafar Al-Gharaibeh
c8ca2bf02a3pimd: use upstream-owned pim pointer in MSDP update pathsSeveral MSDP helper paths fetched the PIM instance through up->channel_oil->pim even though they only require the upstream's instance context. In teardown/re-evaluation edge flows, channel_oil can be detached before these paths run (for example while IGMP prune side effects and upstream cleanup overlap). Dereferencing up->channel_oil only to access pim then creates an avoidable null/stale poin...
Jafar Al-GharaibehJafar Al-Gharaibeh
b635d87366apimd: avoid JP build deref through channel OILpim_msg_build_jp_groups() fetched the pim instance via source->up->channel_oil->pim for (*,G) entries. That creates an unnecessary dependency on channel_oil lifetime while building JP messages. In teardown/re-evaluation edge flows, channel_oil may already be detached before JP aggregation/encoding finishes, making this path vulnerable to null/stale dereference. Use source->up->pim directly in...
Jafar Al-GharaibehJafar Al-Gharaibeh
54f605713afpimd: guard RP RPF-failure mroute delete on detached OILpim_upstream_update() unconditionally called pim_mroute_del() when pim_rpf_update() returned PIM_RPF_FAILURE. In teardown/re-eval edge cases, overlapping prune/delete side effects can detach up->channel_oil before this path executes. Control flow can reach this from IGMP prune-driven cleanup where ifchannel/upstream teardown races with RP re-evaluation. If up->channel_oil is already NULL, call...
Jafar Al-GharaibehJafar Al-Gharaibeh
a67a8fc4cbdpimd: avoid null deref in upstream delete debug pathThe upstream delete trace log read up->channel_oil->oil_ref_count unconditionally. In teardown edge cases, channel_oil may already be detached before this debug statement executes, turning diagnostic logging into a potential null dereference. Control flow for the crash case is: igmp_source_forward_stop() -> tib_sg_gm_prune() -> pim_ifchannel_local_membership_del() -> delete_on_noinfo() -> pim_...
Jafar Al-GharaibehJafar Al-Gharaibeh
68b752b626epimd: guard channel OIL detach against stale pointersIGMP prune and ifchannel teardown paths can delete the same (S,G) channel OIL before upstream teardown reaches pim_channel_oil_upstream_deref(). When that happens, upstream delete can pass a stale OIL pointer into RB removal, which crashes in typed_rb_remove() during igmp_source_timer-driven cleanup. This can happen via prune side effects in the same event flow: igmp_source_forward_stop() -> t...
Carmine ScarpittaGitHubCarmine Scarpitta
199f5d4aa0dMMerge pull request #21416 from iurmanj6WIND/fix-srv6-docdoc: fix SRv6 route commands
Russ WhiteGitHubRuss White
e8b39317b88MMerge pull request #21389 from ashred-lnx/split/topotest-v4-v6-separation-onlytopotests: split bgp_evpn_mh_v4_v6_num v4/v6 layout
Justin IurmanJustin Iurman
ae1bee1ab0ddoc: fix SRv6 route commandsMove text out of code block, use H_Encaps and H_Encaps_Red in vtysh commands (instead of H.Encaps and H.Encaps.Red), refresh output. Fixes: 62465b9dcc82 ("doc: Add SRv6 encapsulation behavior configuration to staticd doc") Signed-off-by: Justin Iurman <justin.iurman@6wind.com>
Mark StappGitHubMark Stapp
f649f49a789MMerge pull request #21409 from opensourcerouting/fix/drop_deprecated_branch_deletion_for_mergifytools: Upgrade configuration to current format for Mergify
Russ WhiteGitHubRuss White
057dff41b02MMerge pull request #21399 from opensourcerouting/fix/bgp_send_notification_if_orf_length_too_bigbgpd: Do not allow triggering route-refresh path with a malformed ORF length
Russ WhiteGitHubRuss White
31371c316d4MMerge pull request #21398 from anlancs/bgpd/fix-wrong-writtenbgpd: fix wrong overwritten for evpn
Russ WhiteGitHubRuss White
f2f704f9e40MMerge pull request #21395 from opensourcerouting/fix/bgp_ehne_orf_cap_length_checkbgpd: Check dynamic capability action before validating ENHE capability
Russ WhiteGitHubRuss White
f09eb3ac562MMerge pull request #21394 from opensourcerouting/fix/bgp_do_not_allocate_stream_if_rr_cap_not_receivedbgpd: Do not allocate stream if route-refresh capability is not received
Russ WhiteGitHubRuss White
639b4c226e3MMerge pull request #21392 from enkechen-panw/static-disable-vrfstaticd: fix static_disable_vrf() to always send a route DELETE
Russ WhiteGitHubRuss White
270dac8b261MMerge pull request #21391 from chiragshah6/zdev3zebra: EVPN prevent stale mbr_zifs entries from early return
Donatas AbraitisDonatas Abraitis
27f9f629c32tools: Upgrade configuration to current format for MergifyDrop deprecated (soon) fields for Mergifyio. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Russ WhiteGitHubRuss White
08744af890cMMerge pull request #21383 from nick-bouliane/doc_bgp_interfacedoc: fix BGP interface neighbor IPv4, IPv6, and v6only documentation
Russ WhiteGitHubRuss White
9cce9c05db0MMerge pull request #21378 from hedrok/fix_frr_testtests: Fix time re in all_protocol_startup/test_all_protocol_startup
Russ WhiteGitHubRuss White
f727b034496MMerge pull request #21377 from opensourcerouting/fix/memory_leak_bgp_nhcbgpd: Fix memory leak for nhc attribute if ipv6 is link-local address
Russ WhiteGitHubRuss White
06557a99889MMerge pull request #21372 from mjstapp/fix_pcep_PSTpceplib: add validation to PCEP PST TLV decode
Russ WhiteGitHubRuss White
fad5c9bbbd1MMerge pull request #21357 from donaldsharp/bgp_backpressure_earlybgpd: Modify early route processing to include send to zebra
Russ WhiteGitHubRuss White
12f62a5bbdcMMerge pull request #21350 from opensourcerouting/fix/bgp_flowspec_missing_offset_advance_unknown_typebgpd: Return an error for unknown flowspec component type
Russ WhiteGitHubRuss White
963b99380b1MMerge pull request #21314 from mjstapp/fix_isis_flex_tlvsisisd: improve validation of flex-algo decoder
Russ WhiteGitHubRuss White
ec0274cc6a6MMerge pull request #21309 from enkechen-panw/aggregate-displaybgpd: display aggregate->count in show bgp detail for aggregate route
Russ WhiteGitHubRuss White
680d732b4e6MMerge pull request #21035 from hnattamaisub/flags_addbgpd: add additional attributes for evpn detail/ipv4/ipv6 detail json
Donatas AbraitisDonatas Abraitis
7a110595c51bgpd: Do not allow triggering route-refresh path with a malformed ORF lengthBefore this patch we just continued with the route-refresh flow blindly instead of sending a notification. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
anlan_csanlan_cs
fdfd2b20516bgpd: larger one field to be 2 bytesThe `struct attr`'s `encap_tunneltype` should be 2 bytes based on current code. Signed-off-by: anlan_cs <anlan_cs@126.com>
anlan_csanlan_cs
b4679999924bgpd: fix wrong overwritten for evpnThe `ecommunity_tunnel_type()` sets the value based on the pointer of `(bgp_encap_types *tunnel_type)`. But the `struct attr`'s `encap_tunneltype` field is `uint8_t` type, it is wrongly as input parameter in `bgp_attr_ext_communities()`, resulting in the subsequent fileds to be overritten. Change `bgp_attr_ext_communities()` to the same style as others: `rfapiGetVncTunnelUnAddr()/rfapiRouteInf...
hariniharini
664c7f0ed32tests: Enhanced existing testsEnhanced existing tests to match their behaviour Signed-off-by: harini <hnattamaisub@nvidia.com>
hariniharini
dc90902c4abbgpd: add additional attributes for evpn detail/ipv4/ipv6 detail jsonAdded no of rotues, pathcount, multipathcount and flags fileds into show bgp ipv4/ipv6 detail json output and show bgp l2vpn evpn route detail json output. Commands: 1)show bgp vrf blue ipv4 unicast json detail 2)show bgp vrf blue ipv6 unicast json detail 3)show bgp l2vpn evpn route detail json Signed-off-by: harini <hnattamaisub@nvidia.com>
Donatas AbraitisDonatas Abraitis
5f9aa98c314bgpd: Check dynamic capability action before validating ENHE capabilityWithout checking the action we cannot reach the path where we unset the capability, because the length is 0 for CAPABILITY_ACTION_UNSET. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Donatas AbraitisDonatas Abraitis
34c4c7e8d98bgpd: Do not allocate stream if route-refresh capability is not receivedJust allocate the stream only if we have a sanity check regarding the capability. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Carmine ScarpittaGitHubCarmine Scarpitta
c257a0df5e2MMerge pull request #21349 from opensourcerouting/fix/bgp_ls_nlri_bound_checkbgpd: Check if Local-Node and Remote-Node TLVs length is within boundaries
Carmine ScarpittaGitHubCarmine Scarpitta
1a233b599c6MMerge pull request #21345 from opensourcerouting/fix/bgp_srv6_BGP_PREFIX_SID_SRV6_L3_SERVICE_SID_INFO_lenbgpd: Fix srv6 type parsing and EVPN type-5 NLRI prefix lengh parsing for IPv4
Donatas AbraitisGitHubDonatas Abraitis
edddc1e29a6MMerge pull request #21352 from hnattamaisub/evpn_brief_optbgpd: EVPN json brief optimization
Enke ChenEnke Chen
fb9774fad56staticd: fix static_disable_vrf() to always send a route DELETEstatic_disable_vrf() called static_uninstall_path() to remove routes belonging to a VRF being disabled. However, static_uninstall_path() sends a ZAPI ADD (not a DELETE) when nexthops are still in the list, so the routes were never actually withdrawn from zebra. Replace with static_zebra_route_add(pn, false) to unconditionally send a DELETE for each path, which is the correct behavior when tea...
Ashwini ReddyAshwini Reddy
e1458c34d5ctopotests: split bgp_evpn_mh_v4_v6_num v4/v6 layoutSeparate v4 and v6 topology configs into dedicated directories, keep only shared host configs under common/, and remove ARP redirect-specific tests so this PR contains only test-structure split changes. Drop three unused helper functions from test_evpn_mh_v4_v6_num.py. Signed-off-by: Ashwini Reddy <ashred@nvidia.com> Made-with: Cursor
Chirag ShahChirag Shah
cd74b7de0abzebra: EVPN prevent stale mbr_zifs entries from early returnPrematurely resetting zif->vlan_bitmap in interface_bridge_vlan_update() leads to inconsistent state if the function bails out early because the kernel AF_BRIDGE netlink notification arrived without VLAN info (no IFLA_BRIDGE_VLAN_INFO). Because the old bitmap is replaced by an empty one before the NULL check on bvarray, the early return skips zebra_vlan_mbr_re_eval() and leaks the old bitmap. ...PR-20350
Donatas AbraitisGitHubDonatas Abraitis
978ae4c1361MMerge pull request #21382 from mjstapp/bgp_remove_clearing_dest_listbgpd: remove dest list from batch-clearing code
Russ WhiteGitHubRuss White
1ac7efc4423MMerge pull request #21081 from anlancs/bgpd/fix-crash-confedbgpd: fix "use-after-free" for updgrp
Nick BoulianeNick Bouliane
f0c02f8fe41doc: fix BGP interface neighbor IPv4, IPv6, and v6only documentationSigned-off-by: Nick Bouliane <nbouliane@coreweave.com>
Mark StappMark Stapp
4fd16118b0fbgpd: remove dest list from batch-clearing codeRemove unused list type and data structs from the batch-clearing code. Signed-off-by: Mark Stapp <mjs@cisco.com>
Donatas AbraitisDonatas Abraitis
45767ed1fb8bgpd: Check if BGPID NHC TLV exists when IPv6 next-hop is link-localdraft-ietf-idr-nhc section 2.2.1 says: In some cases, the BGP speaker sending a route might encode only a link-local address and no global address. In such a case, a problem arises because there is no expectation of global uniqueness of such an address, and the "semantic match" discussed in Section 2.3 could yield a false positive. To mitigate this problem, if a BGP speaker originates a route...
Kyrylo YatsenkoKyrylo Yatsenko
b66acc666eatests: Fix time re in all_protocol_startup/test_all_protocol_startupThere was failure in test with diff: - Hello due in 932 usecs + Hello due in XX.XXXs Regular expression expected for format SECONDS.MSECs only. Added `usec` support to regular expression. `ospf_timeval_dump` can also output weeks, days, hours, but probably there is no need to support that. Signed-off-by: Kyrylo Yatsenko <hedrok@gmail.com>
Donatas AbraitisDonatas Abraitis
9a65cda2e85bgpd: Fix memory leak for nhc attribute if ipv6 is link-local addressFor NHC, next-hop for ipv6 should be a global one. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
anlan_csanlan_cs
7a7ce64df46tests: ensure bgp confederation work after changing its commandAdditionally, removed a few white spaces in the code comment. Signed-off-by: anlan_cs <anlan_cs@126.com>