Commit graph

37229 commits

Author SHA1 Message Date
Donatas Abraitis 0073c73858 tools: Fix syntax raw parsing for make-foobar helper
96 38.93 config.status: creating Makefile
96 39.48 /src/python/makefile.py:55: SyntaxWarning: invalid escape sequence '\s'
96 39.48   "^#\s*include.*_clippy.c",

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-18 11:04:27 +02:00
Donald Sharp 724624a35c
Merge pull request #17451 from opensourcerouting/fix/bgp_optimizations
bgpd: Optimize the outbound path if RFC8212 is applied
2024-11-17 12:03:52 -05:00
Donatas Abraitis 2dc7db9251 bgpd: Optimize the outbound path if RFC8212 is applied
If we have (default enabled) enabled `bgp ebgp-require-policy`, then first check
it before applying the route-maps.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-17 14:41:05 +02:00
Donatas Abraitis 564a8bca2c
Merge pull request #17445 from cscarpitta/fix/sharp-use-ipv6-max-bitlen
sharpd: Convert numeric 128 into IPV6_MAX_BITLEN for prefixlen
2024-11-17 14:19:58 +02:00
Donatas Abraitis 0e2e4ec181
Merge pull request #17444 from cscarpitta/fix/sharpd-cli-help-string
sharpd: Fix a few typos in CLI help messages
2024-11-17 14:19:38 +02:00
Carmine Scarpitta 58b2e8c5b0 sharpd: Use IPV6_MAX_BITLEN in sharp send opaque notify
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-11-17 08:24:44 +01:00
Carmine Scarpitta 0019ecff1b sharpd: Use IPV6_MAX_BITLEN in sharp install seg6local-routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-11-17 08:24:18 +01:00
Carmine Scarpitta cf658b28b1 sharpd: Fix typo in sharp install seg6local-routes help message
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-11-17 08:16:26 +01:00
Carmine Scarpitta 4cb6f5b875 sharpd: Fix typo in sharp install seg6-routes help message
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-11-17 08:15:51 +01:00
Carmine Scarpitta 769751f6fc sharpd: Fix typo in sharp install routes help message
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-11-17 08:15:00 +01:00
Jafar Al-Gharaibeh 2f83660982
Merge pull request #17193 from opensourcerouting/frr-name-use
accords: guidelines/terms for FRRouting trademarks
2024-11-16 19:35:08 -06:00
Jafar Al-Gharaibeh 66b0a33e0c
Merge pull request #17427 from opensourcerouting/fix/more_details_for_ebgp_no_policy
bgpd: Add more details to ebgp requires policy warning
2024-11-16 19:32:54 -06:00
Jafar Al-Gharaibeh 7c46eb68d4
Merge pull request #17435 from opensourcerouting/fix/bgp_allow_0.0.0.0_if_multiple_nlris_exist
bgpd: Validate both nexthop information (NEXTHOP and NLRI)
2024-11-16 19:32:04 -06:00
Jafar Al-Gharaibeh f018a92c3b
Merge pull request #16937 from opensourcerouting/embedded-rp
pim6d: support embedded-rp
2024-11-16 19:30:20 -06:00
Donatas Abraitis c050972fec
Merge pull request #17432 from raja-rajasekar/rajasekarr/evpn_pop_items_bp
bgpd : backpressure - Fix to pop items off zebra_announce FIFO for few EVPN triggers
2024-11-16 12:51:20 +02:00
Donatas Abraitis a0d2734e87 bgpd: Validate both nexthop information (NEXTHOP and NLRI)
If we receive an IPv6 prefix e.g.: 2001:db8:100::/64 with nextop: 0.0.0.0, and
mp_nexthop: fc00::2, we should not treat this with an invalid nexthop because
of 0.0.0.0. We MUST check for MP_REACH attribute also and decide later if we
have at least one a valid nexthop.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-15 16:40:56 +02:00
Donatas Abraitis 229466ebd1 tests: Check if IPv6 prefix has a valid nexthop if multiple NLRIs exist
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-15 16:39:32 +02:00
Donald Sharp e2314c9169
Merge pull request #17434 from opensourcerouting/fix/bgp_color_parsing_ecomm
bgpd: Fix color extended community parsing
2024-11-15 09:21:52 -05:00
Rajasekar Raja 898852f269 bgpd : backpressure - Fix to pop items off zebra_announce FIFO for few EVPN triggers
In cases such as 'no advertise-all-vni' and L2 VNI DELETE, we need to
pop all the VPN routes present in the bgp_zebra_announce FIFO yet to
be processed regardless of VNI is configured or not.

NOTE: NO need to pop the VPN routes in two cases
 1) In free_vni_entry
   - Called by bgp_free()->bgp_evpn_cleanup().
   - Since bgp_delete is called before bgp_free and we pop all the dest
     pertaining to bgp under delete.
 2) evpn_delete_vni() when user configures "no vni" since the withdraw
    of all routes happen in normal cycle.

Fixes: a07df6f754
("bgpd : backpressure - Handle BGP-Zebra(EPVN) Install evt Creation")

Ticket :#4163611

Signed-off-by: Rajasekar Raja <rajasekarr@nvidia.com>
2024-11-15 00:32:42 -08:00
Donatas Abraitis f765bc4144 bgpd: Use tmp_as when parsing color extended community
as is not initialized and it's assigned only later.

CID: 1601739

Fixes: 937cf4d ("bgpd:support of color extended community color-only types")

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-15 08:16:10 +02:00
Donatas Abraitis 2b3d41493d Revert "bgpd: Fix color extended community parsing"
This reverts commit 8e771bda84.
2024-11-15 08:14:32 +02:00
Donatas Abraitis 53c858e70e bgpd: Add more details to ebgp requires policy warning
This will tell explicitly which peer does not have a filter applied.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-15 08:09:08 +02:00
Jafar Al-Gharaibeh 076879a279
Merge pull request #17433 from donaldsharp/zebra_debug_assert
Zebra debug assert
2024-11-14 21:52:49 -06:00
Donald Sharp 345ab24504
Merge pull request #17429 from opensourcerouting/fix/unsupported_commands_bgpd
bgpd: Drop unsupported commands
2024-11-14 19:47:44 -05:00
Donald Sharp 8a71bf9341 zebra: Put debug guards in zebra_vxlan.c
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-11-14 16:08:47 -05:00
Donald Sharp d580af8394 zebra: zebra_vxlan.c assert on dev escape problem
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-11-14 16:03:14 -05:00
Donald Sharp 922489a8d6 zebra: Missed debug guard in zebra_evpn.c
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-11-14 16:03:14 -05:00
Donatas Abraitis afb6f66f2b bgpd: Depracate no_synchronization_cmd, no_auto_summary_cmd commands
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-14 16:15:23 +02:00
Mark Stapp e2d9e19282
Merge pull request #17422 from opensourcerouting/fix/coverity_bgp_color
bgpd: Fix color extended community parsing
2024-11-14 08:27:47 -05:00
Donatas Abraitis f2f6d1ce0a
Merge pull request #17426 from mjstapp/fix_z_evpn_debug
zebra: fix unguarded debug in evpn code
2024-11-14 09:06:57 +02:00
Donald Sharp ced2658fc7
Merge pull request #17423 from opensourcerouting/fix/show_advertised_routes_plain_with_addpath
bgpd: Show neighbor advertised paths including addpath
2024-11-13 15:50:39 -05:00
Mark Stapp aee85f7c6a zebra: fix unguarded debug in evpn code
Guard a debug in the evpn code.

Signed-off-by: Mark Stapp <mjs@cisco.com>
2024-11-13 13:49:28 -05:00
Rafael Zalamena 2add05a634 pimd: prevent invalid memory access
Signalize termination to functions so they can avoid accessing pointers
that might be no longer available.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2024-11-13 12:05:35 -03:00
Rafael Zalamena 2941f579f7 pimd: fix check-patch warning
Remove unnecessary braces.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2024-11-13 12:05:35 -03:00
Rafael Zalamena 3b1fc6fb44 pim6d: fix channel oil leak on embedded RP
When a multicast route is created with embedded RP the channel oil
never gets decremented when `clear ipv6 mroute` is called.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2024-11-13 12:05:35 -03:00
Rafael Zalamena 084fa66d74 doc: document and explain PIM embedded RP
Let user know about PIM embedded RP configuration commands.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2024-11-13 12:05:35 -03:00
Rafael Zalamena 744633eed0 topotests: new embedded RP topology test
Test embedded RP features:
- Embedded RP itself
- Embedded RP group list filtering
- Embedded RP limit

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2024-11-13 12:05:35 -03:00
Rafael Zalamena 23c7acd232 pim6d: support embedded-rp
Implement embedded RP support and configuration commands.

Embedded RP is disabled by default and can be globally enabled with the
command `embedded-rp` in the PIMv6 configuration node.

It supports the following options:
- Embedded RP maximum limit
- Embedded RP group filtering

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2024-11-13 12:05:35 -03:00
Donatas Abraitis 5cf9f6a79f bgpd: Reduce the nesting level for show_adj_route()
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-13 13:36:01 +02:00
Donatas Abraitis 98ca49e0ee bgpd: Show neighbor advertised paths including addpath
Without the patch only the best path is displayed.

With the patch, display all paths including addpaths, but only for non-JSON
output to avoid breaking existing output.

E.g.:

```
munet> r2 shi vtysh -c 'sh ip bgp nei 192.168.2.3 advertised-routes'
     Network          Next Hop            Metric LocPrf Weight Path
 *>  172.16.16.254/32 192.168.2.3              0             0 65003 ?
 *   172.16.16.254/32 192.168.2.4              0             0 65004 ?
 *>  192.168.2.0/24   192.168.2.3              0             0 65003 ?
 *   192.168.2.0/24   192.168.2.4              0             0 65004 ?
```

Before it was:

```
munet> r2 shi vtysh -c 'sh ip bgp nei 192.168.2.3 advertised-routes'
     Network          Next Hop            Metric LocPrf Weight Path
 *>  172.16.16.254/32 192.168.2.3              0             0 65003 ?
 *>  192.168.2.0/24   192.168.2.3              0             0 65003 ?
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-13 13:32:28 +02:00
Donatas Abraitis 8e771bda84 bgpd: Fix color extended community parsing
CID: 1601739

Fixes: 937cf4db17 ("bgpd:support of color extended community color-only types")

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-13 10:03:17 +02:00
Russ White 5456bc5d93
Merge pull request #17331 from Jafaral/ospf-instance
tests: add support for ospf instances  with unified configs
2024-11-12 18:00:46 -05:00
Jafar Al-Gharaibeh dfd85da52f
Merge pull request #17205 from piotrjurkiewicz/patch-1
debian: Add missing libprotobuf-dev to grpc profile
2024-11-12 16:13:27 -06:00
Donald Sharp ac6314d380
Merge pull request #17297 from mjstapp/mjs_ifp_table
zebra, lib: use internal rbtree for per-NS tree of ifps
2024-11-12 15:12:07 -05:00
Jafar Al-Gharaibeh 92ecd0a5d4 tests: add support for ospf instances with unified configs
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2024-11-12 10:51:33 -06:00
Russ White d1d8aeec86
Merge pull request #17368 from louis-6wind/bgp_vpnv4_asbr-clarify
tests: clarify bgp_vpnv4_asbr
2024-11-12 11:40:01 -05:00
Russ White fe56a659b6
Merge pull request #17410 from opensourcerouting/fix/bgpd_ebgp_multihop_set_unset
BGP BFD session things
2024-11-12 11:02:22 -05:00
Russ White 9ce07a1313
Merge pull request #17374 from opensourcerouting/fix/rfc_9687
Add two RFCs for BGP to the list
2024-11-12 09:59:06 -05:00
Russ White e895c8e09d
Merge pull request #17366 from baozhen-H3C/202411061447
isisd: fix crash when switching P2P after shutdowning LAN circuit
2024-11-12 09:55:47 -05:00
Russ White d18337f4bd
Merge pull request #17344 from opensourcerouting/fix/reset_bgp_session_only_if_bfd_is_properly_working
bgpd: Reset BGP session only if it was a real BFD DOWN event
2024-11-12 09:53:40 -05:00