Commit Graph

4233 Commits

Author SHA1 Message Date
Donald Sharp
172a2aa533
Merge pull request #17156 from opensourcerouting/eradicate-strncpy
*: remove remaining `strncpy()` users
2024-11-19 09:42:39 -05:00
Donatas Abraitis
8cc6359fdc bgpd: Disable sending ROV extended community by default
https://datatracker.ietf.org/doc/html/rfc8097 defines ROV extended community,
but https://datatracker.ietf.org/doc/draft-ietf-sidrops-avoid-rpki-state-in-bgp
is against sending it by default even for iBGP peers.

Let's do this practice and reverse it.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-19 16:25:12 +02:00
Krishnasamy R
355d5e2dac bgpd: add topotest for show bgp router json command
This commit has changes to validate show bgp router json command

Signed-off-by: Krishnasamy R <krishnasamyr@nvidia.com>
2024-11-18 18:59:01 -08:00
Acee Lindem
82f4349402 tests: Add topotest for OSPF multi-instance default origination.
This change adds a topotest to test various case of OSPF multi-instance
origination including cases where the criteria route is from another
instance of OSPF, as well as the same OSPF instance (where a default
should not be originated).

Signed-off-by: Acee Lindem <acee@lindem.com>
2024-11-18 17:05:31 +00:00
Donatas Abraitis
77df36c3b9 lib: Fix Lua script unit test
When building for big-endian architectures, this is failing because of
long long / int casting issues, let's use a separate integer to get the
results.

This is especially important when building the Docker images for multiple arches.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-18 17:25:08 +02: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
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
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
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
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
Donatas Abraitis
2c08d9f824 tests: Check if BFD session is created with update-source (interface)
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-12 13:12:56 +02:00
Donatas Abraitis
55dcbd3292 tests: Check if BGP BFD session is created correctly with multihop/update-source
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-11 17:07:45 +02:00
Donatas Abraitis
1dcb4bb2d3
Merge pull request #17362 from raja-rajasekar/rajasekarr/src_proto_for_redist_cmd
bgpd: Fix for match source-protocol in route-map for redistribute cmd
2024-11-09 22:01:44 +02:00
Rajasekar Raja
68358c0f92 bgpd: Fix for match source-protocol in route-map for redistribute cmd
A redistribute cmd can have a route-map attached to it and adding the
match source-protocol to that route-map means BGP to filter which
protocol routes to accept among the bunch of routes zebra is sending.

Fixing this since this wasnt implemented earlier.

Ticket :#4119692

Signed-off-by: Donald Sharp <sharpd@nvidia.com>

Signed-off-by: Rajasekar Raja <rajasekarr@nvidia.com>
2024-11-09 08:36:42 -08:00
zhou-run
a6cffa842b isisd: When the ISIS types of the routers do not match on a P2P link, the neighbor status remains UP
Test Scenario:
RouterA and RouterB are in the same routing domain and have configured a P2P link. RouterA is configured with "is-type level-1" while RouterB is configured with "is-type level-1-2". They establish a level-1 UP neighborship. In this scenario, we expect that when RouterB's configuration is switched to "is-type level-2-only", the neighborship status on both RouterA and RouterB would be non-UP. However, RouterB still shows the neighbor as UP.

Upon receiving a P2P Hello packet, the function "process_p2p_hello" is invoked. According to the ISO/IEC 10589 protocol specification, section 8.2.5.2 a) and tables 5 and 7, if the "iih->circ_type" of the neighbor's hello packet does not match one's own "circuit->is_type," we may choose to take no action.
When establishing a neighborship for the first time, the neighbor's status can remain in the "Initializing" state. However, if the neighborship has already been established and one's own "circuit->is_type" changes, the neighbor's UP status cannot be reset. Therefore, when processing P2P Hello packets, we should be cognizant of changes in our own link adjacency type.

Topotest has identified a core issue during testing.
(gdb) bt
"#0  0xb7efe579 in __kernel_vsyscall ()
\#1  0xb79f62f7 in ?? ()
\#2  0xbf981dd0 in ?? ()
\#3  <signal handler called>
\#4  0xb79f7722 in ?? ()
\#5  0xb7ed8634 in _DYNAMIC () from /home/z15467/isis_core/usr/lib/i386-linux-gnu/frr/libfrr.so.0.0.0
\#6  0x0001003c in ?? ()
\#7  0x00010000 in ?? ()
\#8  0xb7df3322 in _frr_mtx_lock (mutex=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/frr_pthread.h:255
\#9  event_timer_remain_msec (thread=0x10000) at ../lib/event.c:734
\#10 event_timer_remain_msec (thread=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/event.c:727
\#11 0x004fb4aa in _send_hello_sched (circuit=<optimized out>, threadp=0x2189de0, level=1, delay=<optimized out>) at ../isisd/isis_pdu.c:2116
\#12 0x004e8dbc in isis_circuit_up (circuit=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../isisd/isis_circuit.c:734
\#13 0x004ea8f7 in isis_csm_state_change (event=<optimized out>, circuit=<optimized out>, arg=<optimized out>) at ../isisd/isis_csm.c:98
\#14 0x004ea23f in isis_circuit_circ_type_set (circuit=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    circ_type=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../isisd/isis_circuit.c:1578
\#15 0x0053aefa in lib_interface_isis_network_type_modify (args=<optimized out>) at ../isisd/isis_nb_config.c:4190
\#16 0xb7dbcc8d in nb_callback_modify (errmsg_len=8192, errmsg=0xbf982afc "", resource=0x2186220, dnode=<optimized out>, event=NB_EV_APPLY, nb_node=0x1fafe70, context=<optimized out>)
    at ../lib/northbound.c:1550
\#17 nb_callback_configuration (context=<optimized out>, event=NB_EV_APPLY, change=<optimized out>, errmsg=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    errmsg_len=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/northbound.c:1900
\#18 0xb7dbd646 in nb_transaction_process (errmsg_len=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    errmsg=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, transaction=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    event=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/northbound.c:2028
\#19 nb_candidate_commit_apply (transaction=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    save_transaction=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    transaction_id=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, errmsg=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    errmsg_len=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/northbound.c:1368
\#20 0xb7dbdd68 in nb_candidate_commit (context=..., candidate=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    save_transaction=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    comment=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, transaction_id=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    errmsg=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, errmsg_len=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>)
    at ../lib/northbound.c:1401
\#21 0xb7dc0cff in nb_cli_classic_commit (vty=vty@entry=0x21d6940) at ../lib/northbound_cli.c:57
\#22 0xb7dc0f46 in nb_cli_apply_changes_internal (vty=vty@entry=0x21d6940, xpath_base=xpath_base@entry=0xbf986b7c "/frr-interface:lib/interface[name='r5-eth0']", clear_pending=clear_pending@entry=false)
    at ../lib/northbound_cli.c:184
\#23 0xb7dc130b in nb_cli_apply_changes (vty=<optimized out>, xpath_base_fmt=<optimized out>) at ../lib/northbound_cli.c:240
\#24 0x00542c1d in isis_network_magic (self=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, argc=<optimized out>,
    argv=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, no=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    vty=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../isisd/isis_cli.c:3101
\#25 isis_network (self=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, vty=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    argc=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, argv=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>)
    at ./isisd/isis_cli_clippy.c:5499
\#26 0xb7d6d8f1 in cmd_execute_command_real (vline=vline@entry=0x219afa0, vty=vty@entry=0x21d6940, cmd=cmd@entry=0x0,
    up_level=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/command.c:1003
\#27 0xb7d6d9e0 in cmd_execute_command (vline=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    vty=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, cmd=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    vtysh=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/command.c:1061
\#28 0xb7d6dc60 in cmd_execute (vty=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    cmd=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>, matched=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>,
    vtysh=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/command.c:1228
\#29 0xb7dfb58a in vty_command (vty=vty@entry=0x21d6940, buf=0x21e0ff0 ' ' <repeats 12 times>, "isis network point-to-point") at ../lib/vty.c:625
\#30 0xb7dfc560 in vty_execute (vty=vty@entry=0x21d6940) at ../lib/vty.c:1388
\#31 0xb7dfdc8d in vtysh_read (thread=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/vty.c:2400
\#32 0xb7df4d47 in event_call (thread=<error reading variable: dwarf2_find_location_expression: Corrupted DWARF expression.>) at ../lib/event.c:2019
\#33 0xb7d9a831 in frr_run (master=<optimized out>) at ../lib/libfrr.c:1232
\#34 0x004e4758 in main (argc=7, argv=0xbf989a24, envp=0xbf989a44) at ../isisd/isis_main.c:354
(gdb) f 9
\#9  event_timer_remain_msec (thread=0x10000) at ../lib/event.c:734
734     ../lib/event.c: No such file or directory.
(gdb) p pthread
No symbol "pthread" in current context.
(gdb) p thread
$1 = (struct event *) 0x10000

When LAN links and P2P links share the` circuit->u` of a neighbor, if one link is no longer in use and the union is not cleared, the other link is unable to pass the non-empty check, resulting in accessing an invalid pointer. Unfortunately, for non-DIS devices in LAN links, `circuit->u.bc.run_dr_elect[x]` is essentially always 1, but in `isis_circuit_down()`,` circuit->u.bc.run_dr_elect[x] `will not be cleared because `circuit->u.bc.is_dr[x]` is always 0. Consequently, when switching to a P2P link, `isis_circuit_circ_type_set()` does not reset the link in a non-C_STATE_UP state, leading to subsequent accesses of `circuit->u.p2p.t_send_p2p_hello` resulting in a non-empty yet invalid address.

I believe that in `isis_circuit_down()`, the LAN link should unconditionally clear `circuit->u.bc.run_dr_elect[x]`.

Signed-off-by: zhou-run <zhou.run@h3c.com>
2024-11-09 15:45:47 +08:00
Donatas Abraitis
a85dce2c66
Merge pull request #17341 from zice312963205/zly_tcpmss
bgpd:support tcp-mss for neighbor group
2024-11-08 09:11:41 +02:00
Donatas Abraitis
af9a2cb875
Merge pull request #17231 from guoguojia2021/guozhongfeng_alibaba
bgpd:support of color extended community color-only types
2024-11-08 08:56:21 +02:00
Russ White
68ec006481
Merge pull request #12109 from donaldsharp/routemap_time_spent
lib: Add ability to track time in individual routemaps
2024-11-07 13:19:11 -05:00
Donald Sharp
36abc43cfc
Merge pull request #17376 from opensourcerouting/fix/stale_routes_with_addpath
bgpd: Clear stale routes with multiple paths
2024-11-07 11:04:56 -05:00
Donatas Abraitis
846af511f4
Merge pull request #17244 from donaldsharp/high_ecmp_test
tests: Add a topology that supports a large number of ecmp
2024-11-07 17:15:24 +02:00
Donatas Abraitis
2e5e3b4bd0 tests: Check if stale routes with addpath are marked with LLGR community
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-07 14:15:18 +02:00
Donatas Abraitis
444bdc4cc0 tests: Check if routes with addpath are cleared if they are stale
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-11-07 14:05:36 +02:00
guozhongfeng.gzf
5a28b620d3 tests:support of color extended community color-only types
Signed-off-by: guozhongfeng.gzf <guozhongfeng.gzf@alibaba-inc.com>
2024-11-07 19:02:21 +08:00
hanyu.zly
9fa56a03c7 bgpd:support tcp-mss for neighbor group
Signed-off-by: hanyu.zly <hanyu.zly@alibaba-inc.com>
2024-11-07 14:50:21 +08:00
Louis Scalbert
aceae79ae0 tests: clarify bgp_vpnv4_asbr
Clarify bgp_vpnv4_asbr. Cosmetic change.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-11-06 16:46:02 +01:00
Donald Sharp
3e3a666331 lib: Add ability to track time in individual routemaps
Add the abilty to track how much time is spent in routemaps.
Example of the new output:

eva# show route-map
ZEBRA:
route-map: FOO Invoked: 1000000 (323 milliseconds total) Optimization: enabled Processed Change: false
 deny, sequence 10 Invoked 1000000 (320 milliseconds total)
  Match clauses:
  Set clauses:
  Call clause:
  Action:
    Exit routemap

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-11-05 12:33:05 -05:00
Russ White
fe20f83286
Merge pull request #17326 from anlancs/fix/zebra-no-ifp-down
zebra: fix missing kernel routes
2024-11-05 10:20:36 -05:00
Donald Sharp
bee1bcfd01 tests: Add a topology that supports a large number of ecmp
Add a basic topology that allows the testing of BGP and zebra
at scale.  I built this to help me find and fix problems with
a large number of bgp peers.  Since I plan to keep using this
and as I understand it there are future plans to take this
higher, I would like to add this as a test that people can invoke
with this command:

sudo -E python3 -m pytest -s -vv --topology-only

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-11-05 10:19:39 -05:00
Russ White
ab2117d328
Merge pull request #17115 from LabNConsulting/jmuthii/nhrpd-retry-resolution-topotest
nhrpd: fix passphrase handling, add topotest for resolution request
2024-11-05 10:10:12 -05:00
Nathan Bahr
5b3c3b1710 tests: Remove unnecessary fields from expected JSON
Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
2024-11-01 16:46:41 +00:00
Donatas Abraitis
a69f66176d
Merge pull request #17312 from donaldsharp/remove_in6addr_cmp
Remove in6addr cmp
2024-11-01 18:06:04 +02:00
anlan_cs
0073a870d1 test: add test case for kernel blackhole routes
The test verifies that a kernel blackhole route is not affected by
interface's link change.

Signed-off-by: anlan_cs <anlan_cs@126.com>
2024-11-01 22:43:00 +08:00
Donald Sharp
eded1e9c76
Merge pull request #17328 from opensourcerouting/fix/allow_setting_netlink_buffer_size_for_zebra
tests: Do not set by default netlink receive buffer size for Zebra
2024-11-01 10:00:18 -04:00
Donald Sharp
66feece071
Merge pull request #17281 from nabahr/mrib-import
Add support to import alternate URIB tables into the main MRIB
2024-10-31 13:28:57 -04:00
Donatas Abraitis
6dc03df8cb tests: Do not set by default netlink receive buffer size for Zebra
If we want to override this value - we can't because it's set by default to
90000000.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-31 17:00:20 +02:00
Donald Sharp
1cb6b71b40 lib, tests: Remove in6addr_cmp function from the system
This function should just be memcmp.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-10-31 10:04:19 -04:00
Jafar Al-Gharaibeh
35dbbacc3b
Merge pull request #17317 from opensourcerouting/feature/allow_setting_custom_params_for_daemons_unified_config
tests: Add an ability to specify daemon params with unified config
2024-10-31 08:55:23 -05:00
Nathan Bahr
180e1a0d77 tests: Add zebra rib import-table tests
Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
2024-10-31 12:44:05 +00:00
Donatas Abraitis
879466731b tests: Add an ability to specify daemon params with unified config
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-31 10:43:28 +02:00
Donatas Abraitis
5f11235614
Merge pull request #17296 from LabNConsulting/liambrady/core-rlimit-respect-hard-limit
tests: respect RLIMIT_CORE hard limit
2024-10-31 10:19:55 +02:00
Joshua Muthii
d599aa1da6 nhrpd: Add topotest for retrying resolution request
Modified nhrp_topo topotest to test for newly added resolution
request retry feature. Changes to the topotest include adding a spoke to the
existing nhrp_topo topotest so that a topology with two spokes and hub
can be used to create shortcuts and test the sending/resending of
resolution requests and responses between spoke and hub. The resolution
request retry feature was tested by blocking incoming resolution requests on a
receiving nodes to stop the creation of a successful shortcut - which
then triggered the sending spoke to retry sending resolution requests

Signed-off-by: Joshua Muthii <jmuthii@labn.net>
2024-10-29 13:15:16 -04:00
Liam Brady
b4dc01b3de tests: respect RLIMIT_CORE hard limit
In the case that the RLIMIT_CORE hard limit cannot
be raised on a system, do not fail due to an exception.
Instead, attempt to increase the soft limit to as large
a value as possible (e.g. to the set hard limit).

Signed-off-by: Liam Brady <lbrady@labn.net>
2024-10-29 13:07:57 -04:00
Russ White
574a71516a
Merge pull request #17226 from louis-6wind/fix-bmp-tests
tests: fix bmp tests random failure
2024-10-29 10:12:11 -04:00
Russ White
b5c3b44de1
Merge pull request #17190 from baozhen-H3C/202410180176
isisd: The command "'show isis vrf all summary json" has no output.
2024-10-29 10:08:28 -04:00
Russ White
4a6e1c0acb
Merge pull request #16990 from lsang6WIND/label-per-nexthop
bgpd: fix prefix same as nexthop in label per nexthop
2024-10-29 10:05:37 -04:00
Donatas Abraitis
200d54f54e
Merge pull request #17216 from Jafaral/fix-bsr
pimd, tests: fix bsr assert and expand topotest to pimv6
2024-10-27 21:11:23 +02:00
Jafar Al-Gharaibeh
a7e7cc301d tests: expand bsr topotest to cover ipv6
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2024-10-25 09:00:50 -05:00
Louis Scalbert
a235dbc65b tests: fix bgp_bmp_vrf race condition
The bgp_bmp_vrf topotest is randomly failing with similar messages:

> 2024-10-24 16:59:03,037 ERROR: topo: test failed at "bgp_bmp.test_bgp_bmp/test_bmp_bgp_unicast": Checking the updated prefixes has failed ! Generated JSON diff error report:
>
> $->pre-policy->update: expected has key '172.31.0.15/32' which is not present in output

It is particularly unsuccessful when run with valgrind:

> python3 -m pytest -vvss --valgrind-leak-kinds=all --valgrind-extra --valgrind-memleaks bgp_bmp_vrf

bgp_bmp_vrf is configuring a BMP policy on r1 and then some static BGP
prefixes on r2. If for some reasons, the BGP UPDATE arrives to r1 before
the BMP configuration is operational, the UPDATE is not sent to the BMP
server and the test fails.

Pre-configure the BMP policies at startup to avoid this race condition.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-25 14:17:20 +02:00
Louis Scalbert
771284474d tests: fix bgp_bmp race condition
The bgp_bmp topotest is randomly failing with similar messages:

> 2024-10-24 16:59:03,037 ERROR: topo: test failed at "bgp_bmp.test_bgp_bmp/test_bmp_bgp_unicast": Checking the updated prefixes has failed ! Generated JSON diff error report:
>
> $->pre-policy->update: expected has key '172.31.0.15/32' which is not present in output

It is particularly unsuccessful when run with valgrind:

> python3 -m pytest -vvss --valgrind-leak-kinds=all --valgrind-extra --valgrind-memleaks bgp_bmp

bgp_bmp is configuring a BMP policy on r1 and then some static BGP
prefixes on r2. If for some reasons, the BGP UPDATE arrives to r1 before
the BMP configuration is operational, the UPDATE is not sent to the BMP
server and the test fails.

Pre-configure the BMP policies at startup to avoid this race condition.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-25 14:17:20 +02:00
Louis Scalbert
14eed3ab8b tests: factorize code in bgp_bmp_vrf
Factorize code in bgp_bmp_vrf

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-25 14:17:20 +02:00
Louis Scalbert
e29abfdbd5 tests: factorize code in bgp_bmp
Factorize code in bgp_bmp

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-25 14:17:20 +02:00
Louis Scalbert
19a6621424 tests: rework bgp_bmp_vrf
The BGP BMP VRF topotest is difficult to debug. It does not say which
prefix is not received by BGP or BMP when it fails.

Rework the test to convert the actual BMP logs to JSON and compare the
BGP table and BMP server logs output to expected reference JSON files.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-25 14:17:17 +02:00
Louis Scalbert
44c6f579c3 tests: rework bgp_bmp
The BGP BMP topotest is difficult to debug. It does not say which prefix
is not received by BGP or BMP when it fails.

Rework the test to convert the actual BMP logs to JSON and compare the
BGP table and BMP server logs output to expected reference JSON files.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-25 14:16:55 +02:00
Louis Scalbert
a7fc9a27f0 tests: augment bgp bmp test wait time
Augment bgp bmp test wait time

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-25 10:00:56 +02:00
Loïc Sang
3c2949e1ba topotests: supress bgp_vpnv4/6_per_nexthop_label warning
WARNING: topo: Waiting time is too small
(count=10, wait=0.5), using default values (count=20, wait=3)

Supress warning by inscreasing wait time.

Signed-off-by: Loïc Sang <loic.sang@6wind.com>
2024-10-25 09:31:12 +02:00
Loïc Sang
6975228d66 bgpd: fix prefix same as nexthop in label per nexthop
When a prefix is imported using the "network" command under a vrf, which
is a connected prefix, and in the context of label allocation per
nexthop:

..
>router bgp 1 vrf vrf1
> address-family ipv4 unicast
>  redistribute static
>  network 172.16.0.1/32  <--- connected network
>  network 192.168.106.0/29
>  label vpn export auto
>  label vpn export allocation-mode per-nexthop
..

We encounter an MPLS entry where the nexthop is the prefix itself:

> 18             BGP   172.16.0.1     -

Actually, when using the "network" command, a bnc context is used, but
it is filled by using the prefix itself instead of the nexthop for other
BGP updates. Consequently, when picking up the original nexthop for
label allocation, the function behaves incorrectly. Instead ensure that
the nexthop type of bnc->nexthop is not a nexthop_ifindex; otherwise
fallback to the per vrf label.

Update topotests.

Signed-off-by: Loïc Sang <loic.sang@6wind.com>
2024-10-25 09:30:32 +02:00
Donatas Abraitis
3f446ecb6b
Merge pull request #17199 from enkechen-panw/aigp-fix5
bgpd: compare aigp after local route check in bgp_path_info_cmp()
2024-10-25 09:59:29 +03:00
Donatas Abraitis
2606f84b31
Merge pull request #17207 from louis-6wind/bmpserver-log
tests: add bmpserver logging
2024-10-25 09:58:57 +03:00
Donald Sharp
274c98628f
Merge pull request #17155 from opensourcerouting/memstats-zlog
lib: `debug memstats-at-exit` improvements
2024-10-24 21:07:09 -04:00
Enke Chen
1a2c3d684a tests: add a new BGP AIGP topotest
The topotest verifies that a local route is favored irrespective
of its AIGP value.

Signed-off-by: Enke Chen <enchen@paloaltonetworks.com>
2024-10-24 10:42:41 -07:00
Louis Scalbert
c8ed08b22f tests: add bmpserver logging
Add bmpserver logging

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-24 16:37:23 +02:00
Louis Scalbert
ad6c107f91 tests: bmpserver, detect session close immediately
bmpserver infinitely loops after the clients has closed the TCP session.
In this situation, recv() returns empty data.

Detect session close immediately.

Fixes: 875511c466 ("topotests: add basic bmp collector")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-24 16:37:23 +02:00
Louis Scalbert
6bb0c91d10 tests: apply black to bmpserver
Apply black to bmpserver

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-24 16:37:23 +02:00
baozhen-H3C
66ef3576af isisd: The command "'show isis vrf all summary json" has no output.
When input 'show isis vrf all summary', output is as follow:
sonic# show isis vrf all summary
vrf             : default
Process Id      : 55
System Id       : 0000.0000.0006
Symbolic name   : RouterA
Up time         : 4d01h52m ago
Number of areas : 1
Area 10:
  Net: 10.0000.0000.0006.00
  IS_name: RouterA
  TX counters per PDU type:
     L1 IIH: 365003
     L1 LSP: 20468
    L1 PSNP: 8
   LSP RXMT: 0
  RX counters per PDU type:
     L1 IIH: 361577
     L2 IIH: 434
     L1 LSP: 10492
    L1 CSNP: 114260
  Level-1:
    LSP0 regenerated: 4840
         LSPs purged: 0
    SPF:
      minimum interval  : 1
    IPv4 route computation:
      last run elapsed  : 00:01:02 ago
      last run duration : 327 usec
      run count         : 12053
However, json display is null.

After the commit:
sonic# show isis vrf all summary json
{
  "vrfs":[
    {
      "vrf":"default",
      "process-id":56,
      "system-id":"0000.0000.0007",
      "up-time":"20:40:33",
      "number-areas":1,
      "areas":[
        {
          "area":"10",
          "net":"10.0000.0000.0007.00",
          "tx-pdu-type":{
            "l1-iih":52234,
            "l1-lsp":1053,
            "l1-csnp":8269,
            "l1-psnp":1,
            "lsp-rxmt":0
          },
          "rx-pdu-type":{
            "l1-iih":52245,
            "l2-iih":26116,
            "l1-lsp":1388,
            "l1-csnp":8269
          },
          "levels":[
            {
              "id":1,
              "lsp0-regenerated":89,
              "lsp-purged":0,
              "spf":"no pending",
              "minimum-interval":1,
              "last-run-elapsed":"00:00:05",
              "last-run-duration-usec":192,
              "last-run-count":1454
            }
          ]
        }
      ]
    }
  ]
}

Signed-off-by: baozhen-H3C <bao.zhen@h3c.com>
2024-10-23 13:27:45 +08:00
Russ White
df0dd1b39e
Merge pull request #17165 from opensourcerouting/fix/bgp_community_no_export_oad
bgpd: Do not filter no-export community for BGP OAD
2024-10-22 11:05:38 -04:00
David Lamparter
84fd92c80e tests: remove strncpy() use
`checkpatch` has sufficiently annoyed me to fix this.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2024-10-22 14:51:25 +02:00
Donatas Abraitis
524627216a tests: Check if non-transitive link-bandwidth communities are sent/received correctly
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-22 09:01:04 +03:00
Enke Chen
7e7f65cc00 tests: add a topotest bgp_aigp_rr
In this topotest, the route reflector advertises a route with the
aigp attribute to its client, some with the nexthop unchanged and
some with the nexthp changed. Different aigp values are sent to
the clients depending on the nexthop setting.

Signed-off-by: Enke Chen <enchen@paloaltonetworks.com>
2024-10-21 17:49:19 -07:00
Donatas Abraitis
7eaec540ec tests: Check if BGP no-export community is passed to BGP OAD peers
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-18 22:51:37 +03:00
Liam Brady
1b38f33041 tests: logger masked in topotest.py
a local logger masks the global logger and prevents errors from being
gracefully handled within topotest.py

Signed-off-by: Liam Brady <lbrady@labn.net>
2024-10-17 13:36:39 -04:00
David Lamparter
b3e4007197 lib: refactor memstats logging, fix ACTIVEATEXIT
Move the various destinations handling into lib/memory.c, include
"normal" logging as target, and make `ACTIVEATEXIT` properly non-error
as it was intended to be.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2024-10-17 13:58:57 +02:00
Enke Chen
51612593f7 tests: add a new topotest to bgp_aigp
Add a new topotest for getting the aigp from the "igp-metric"
for a redistributed route (ospf route in the test).

Signed-off-by: Enke Chen <enchen@paloaltonetworks.com>
2024-10-16 11:19:28 -07:00
Russ White
75e34c032b
Merge pull request #16452 from louis-6wind/fix-ipv4-mapped-ipv6-display
lib, test: fix display ipv4 mapped ipv6 addresses
2024-10-16 13:01:52 -04:00
Russ White
80dc863d92
Merge pull request #16946 from opensourcerouting/fix/match_src-peer
bgpd: Implement match src-peer ... command
2024-10-16 07:51:20 -04:00
Louis Scalbert
3c430cd4e0 tests: update fuzz after ipv4 mapped ipv6 print change
Update IS-IS fuzz test to match corrected output after change in the
display of IPv4 mapped IPv6 address.

The update was performed using wuschl [1] like this:

$ wuschl rebuild tests/isisd/test_fuzz_isis_tlv
$ gzip -9 tests/isisd/test_fuzz_isis_tlv_tests.h

[1] https://pypi.org/project/wuschl/

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-16 13:45:54 +02:00
Louis Scalbert
84ab0213fc lib, test: fix display ipv4 mapped ipv6 addresses
Display ipv4 mapped ipv6 addresses in the format ::ffff:A.B.C.D.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-16 13:45:46 +02:00
Jafar Al-Gharaibeh
df482a0f79
Merge pull request #17107 from donaldsharp/actuallY_call_the_command
tests: iproute2_check_path_selection call the actual command
2024-10-15 21:24:33 -05:00
Russ White
de02471a8d
Merge pull request #17038 from opensourcerouting/feature/bgp_set_metric_internal
bgpd: Derive and set MED from IGP or AIGP
2024-10-15 17:58:05 -04:00
Russ White
5b5756911c
Merge pull request #17073 from louis-6wind/fix-ipv6-ll-nexthop-reflector
bgpd, tests: don't send local nexthop from rr client
2024-10-15 14:18:49 -04:00
Donatas Abraitis
a593f156d7 tests: Check if underlay IGP metric is reflected into BGP after cost changes
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-15 17:42:53 +03:00
Donatas Abraitis
7cdece8c84 doc: Add set metric aigp command
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-15 17:42:52 +03:00
Donatas Abraitis
3105ceaee9 tests: Check if set metric aigp works
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-15 17:42:52 +03:00
Donatas Abraitis
8d39cfd613 tests: Check if MED can be derived from set metric igp|aigp
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-15 17:42:51 +03:00
Donatas Abraitis
ecb7b78d30
Merge pull request #17093 from enkechen-panw/aigp-fix2
bgpd: fix route selection with AIGP
2024-10-15 17:23:04 +03:00
Donald Sharp
c8a947e12b tests: iproute2_check_path_selection call the actual command
For some reason this was missing.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-10-15 09:51:08 -04:00
Donatas Abraitis
5c194b3639
Merge pull request #17001 from louis-6wind/bmp-new
bgpd: bmp loc-rib peer up/down for vrfs
2024-10-15 09:09:42 +03:00
Enke Chen
1ee7e63a6c tests: fix and adjust topotest/bgp_aigp
Fix and adjust the topotest post the fix for route selection with
AIGP.

When there are multiple	IGP domains (OSPF in this case), the nexthop
for a BGP route with the AIGP attribute must be resolved in its own
IGP domain.

The changes in r2/bgpd.conf and r3/bgpd.conf are needed as incorrect
IGP metrics are received from NHT for the recursive nexthops. Once
the issue is resolved, the changes can be reverted.

Signed-off-by: Enke Chen <enchen@paloaltonetworks.com>
2024-10-14 18:54:07 -07:00
Louis Scalbert
2ac4c3e58d tests: fix bgp_as_override number of routers
There is only 4 routers not 6.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-14 14:39:00 +02:00
Louis Scalbert
c4a8263628 bgpd, tests: don't send local nexthop from rr client
AS 65000  | AS 65001
          |
      RR  |
       |  |
R1 --- | --- R2
          |

When r1 peer is an iBGP route reflector client of rr and r2 peer is a
eBGP neighbor of rr, and all three routers shares the same network, r2
receives announcements coming from r1 with a IPv6 link-local nexthop
from rr. This is incorrect as r2 should send traffic to r1 without
involving rr.

Do not send an IPv6 link-local nexthop if the originating peer is a
route-reflector client.

Link: https://github.com/FRRouting/frr/pull/16219#issuecomment-2397425505
Link: https://github.com/FRRouting/frr/pull/17037#discussion_r1792529683
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-14 10:06:35 +02:00
Louis Scalbert
7bccb8d380 topotest: add bgp_bmp_vrf topotest
Add test to check BMP in VRF.

Note that the following configuration works with interface r1-eth0
towards 192.0.2.10 (BMP collector) in the default VRF but not in vrf1.

> router bgp 65501 vrf vrf1
>  bmp targets bmp1
>   bmp connect 192.0.2.10 port 1789 min-retry 100 max-retry 10000

Also, for some reasons, the test works even without "bgpd: bmp loc-rib
peer up/down for vrfs" commit.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 15:14:57 +02:00
Louis Scalbert
0430d6f70b topotests: check for bmp peer up/down messages
Check for bmp peer up / down  messages

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 15:14:56 +02:00
Louis Scalbert
d8bfd04e46 topotests: add peer down log in bmp collector
Add peer down log in bmp collector

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 15:14:34 +02:00
Louis Scalbert
1de5015b09 topotests: log bmp peer up message type in collector
Log "peer up" message type in BMP collector logs.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 15:14:21 +02:00
Louis Scalbert
33189510e8 topotests: check export labels to pre-policy bmp
Check export labels to pre-policy bmp

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 15:10:24 +02:00
Louis Scalbert
1005c14768 tests: test nexthop-local unchanged with reflector
Test nexthop-local unchanged with route-reflector.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 14:08:12 +02:00
Louis Scalbert
5f035edf25 tests: test nexthop-local unchanged with route-server
Test nexthop-local unchanged with route-server.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 14:07:52 +02:00
Louis Scalbert
da7b2d9831 tests: unset r3 enforce-first-as bgp_route_server_client
Unset enforce-first-as on r3 of bgp_route_server_client to enable the
reception of routes on this router.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 14:07:37 +02:00
Louis Scalbert
dd135843ad tests: rework bgp_route_server_client
Rework bgp_route_server_client in a more standard form in order to
facilitate the next commut changes. Cosmetic change.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-11 14:07:09 +02:00
Louis Scalbert
6dc4d95061 topotests: add bgp_nexthop_ipv6
Add bgp_nexthop_ipv6 to check the ipv6 link-local nexthop conformity in
several situations.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-10-10 11:39:04 +02:00
Russ White
374fda66df
Merge pull request #16945 from opensourcerouting/fix/bgp_received-routes_with_soft_inbound
bgpd: Show unmodified version of received-routes per neighbor
2024-10-08 10:16:24 -04:00
Russ White
02e5a059ee
Merge pull request #16941 from opensourcerouting/fix/issue_16877
bgpd: Relax the same prefix and nexthop to be valid
2024-10-08 10:14:30 -04:00
Russ White
382e4e9338
Merge pull request #15903 from y-bharath14/srib-topotests-v1
tests: catch exception during switch shutdown
2024-10-08 08:27:12 -04:00
Christian Hopps
e8648a0c72 lib: add flag to have libyang load internal ietf-yang-library module
Mgmtd makes use of libyang's internal ietf-yang-library module to add
support for said module to FRR management. Previously, mgmtd was loading
this module explicitly; however, that required that libyang's
`ietf-yang-library.yang` module definition file be co-located with FRR's
yang files so that it (and ietf-datastore.yang) would be found when
searched for by libyang using FRRs search path. This isn't always the
case depending on how the user compiles and installs libyang so mgmtd
was failing to run in some cases.

Instead of doing it the above way we simply tell libyang to load it's
internal version of ietf-yang-library when we initialize the libyang
context.

This required adding a boolean to a couple of the init functions which
is why so many files are touched (although all the changes are minimal).

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-10-07 03:32:44 +00:00
Russ White
15991e1a08
Merge pull request #16800 from donaldsharp/nhg_reuse_intf_down_up
Nhg reuse intf down up
2024-10-04 10:28:58 -04:00
Donatas Abraitis
dab1441128 tests: Check if loopback routes are considered valid for nexthop tracking
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-01 21:08:28 +03:00
Donatas Abraitis
2c6eb34af8 tests: Drop test_bgp_with_loopback_with_same_subnet_p1
It's replaced and simplified by c3fd1e9520c619babb3004cea6df622ca67b0dfa.

JSON topo is just horrible to debug.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-10-01 21:05:52 +03:00
Donald Sharp
421cf856ef bgpd: Cleanup multipath figuring out in bgp
Currently bgp multipath has these properties:

a) mp_info may or may not be on a single path, based
upon path perturbations in the past.
b) mp_info->count started counting at 0( meaning 1 ).  As that the
bestpath path_info was never included in the count
c) The first mp_info in the list held the multipath data associated
with the multipath.  As such if you were at any other node that data
was not filled in.
d) As such the mp_info's that are not first on the list basically
were just pointers to the corresponding bgp_path_info that was in
the multipath.
e) On bestpath calculation, a linklist(struct linklist *) of bgp_path_info's was
created.
f) This linklist was passed in to a comparison function that took the
old mpinfo list and compared it item by item to the linklist and
doing magic to figure out how to create a new mp_info list.
g) the old mp_info and the link list had to be memory managed and
freed up.
h) BGP_PATH_MULTIPATH is only set on non bestpath nodes in the
multipath.

This is really complicated.  Let's change the algorithm to this:

a) When running bestpath, mark a bgp_path_info node that could be in the ecmp path as
BGP_PATH_MULTIPATH_NEW.
b) When running multipath, just walk the list of bgp_path_info's and if
it has BGP_PATH_MULTIPATH_NEW on it, decide if it is in BGP_MULTIPATH.
If we run out of space to put in the ecmp, clear the flag on the rest.
c) Clean up the counting of sometimes adding 1 to the mpath count.
d) Only allocate a mpath_info node for the bestpath.  Clean it up
when done with it.
e) remove the unneeded list management associated with the linklist and
the mp_list.

This greatly simplifies multipath computation for bgp and reduces memory
load for large scale deployments.

2 full feeds in work_queue_run prior:

    0      56367.471      1123    50193    493695    50362    493791         0         0          0    TE   work_queue_run

BGP multipath info            :  1941844     48   110780992  1941844 110780992

2 full feeds in work_queue_run after change:

    1      52924.931      1296    40837    465968    41025    487390         0         0          1    TE   work_queue_run

BGP multipath info            :   970860     32    38836880   970866  38837120

Aproximately 4 seconds of saved cpu time for convergence and ~75 mb
smaller run time.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-10-01 12:25:57 -04:00
Donald Sharp
6ff85fc748 tests: Clean up some logging in test_bgp_default_originate_2links.py
Test was confusing.  Add some useful data and clean up some debugs

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-10-01 12:25:57 -04:00
Barry A. Trent
41fa154163 tests: enhance autorp topotest
Signed-off-by: Barry A. Trent <barry.trent@atcorp.com>
2024-09-27 13:39:50 -07:00
Donatas Abraitis
6e4bee2d33 tests: Check if match src-peer ... can be used for incoming route-map
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-27 23:01:07 +03:00
Donatas Abraitis
791e34258f tests: Test if match src-peer ... works
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-27 23:01:07 +03:00
Donatas Abraitis
f4c17673d1 tests: Check if we can see unmodified received-routes with soft inbound
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-27 14:04:59 +03:00
Y Bharath
5118fd1018 tests: catch exception during switch shutdown
Signed-off-by: y-bharath14 <y.bharath@samsung.com>
2024-09-25 19:03:31 +05:30
Nathan Bahr
dff1db9ef6 tests: Addition of AutoRP Discovery uncovered broken PIM test
With AutoRP discovery running by default, that adds a new
IGMP group that needs to be accounted for in IGMP output.

For pim.py
  The clear IGMP interfaces function is in a broken state. It was
  already ignoring any errors and returned true always, but with
  the addition of the AutoRP discovery group, you could end up
  with a different group order in the json which would cause a key
  error making the test fail. For now I just added a check to
  avoid the key error.

Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
2024-09-24 16:40:57 +00:00
Nathan Bahr
ec37f603a1 tests: Update existing tests for changes introduced by AutoRP Discovery
With AutoRP discovery running by default, that adds a new
IGMP group that needs to be accounted for in IGMP output.

For multicast_pim_sm_topo3:
  Ignore the total group number as it is unnecessary for the test.

Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
2024-09-24 16:40:57 +00:00
Nathan Bahr
af45a16fce tests: Added tests for new AutoRP functionality
Uses hardcoded sample AutoRP packets injected in to test
message parsing and proper application of AutoRP learned
RP info. Tests mix of AutoRP and static RP's.

Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
2024-09-24 16:40:55 +00:00
Donald Sharp
269d63a5c1
Merge pull request #16861 from btrent98/igmp-proxy2
Add igmp proxy support
2024-09-24 12:32:15 -04:00
Russ White
5cf4af6947
Merge pull request #16907 from opensourcerouting/fix/load_built-in_lua_functions
lib: Load built-in Lua functions
2024-09-24 10:56:25 -04:00
Russ White
9fa9e41613
Merge pull request #16906 from opensourcerouting/fix/match_peer_self
bgpd: Return NOMATCH only if both conf_if/group does not exist
2024-09-24 10:16:35 -04:00
Russ White
d86524951f
Merge pull request #16904 from louis-6wind/fix-zebra-rib-range
tests: fix zebra_rib range
2024-09-24 10:15:25 -04:00
Russ White
74aef8aabd
Merge pull request #16895 from opensourcerouting/fix/dual_as_topotest
tests: Simplify BGP dual-as topotest
2024-09-24 10:13:14 -04:00
Russ White
3c89cb638f
Merge pull request #16533 from acooks-at-bda/less-controversial-ospf6d-refactor-before-adding-tlvs
OSPF6: Refactor to prepare for E-LSA handling
2024-09-24 09:50:19 -04:00
Donatas Abraitis
623fb6d996 tests: Check if built-in Lua functions are working
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-24 13:40:37 +03:00
Donatas Abraitis
a4ed22b0b6 tests: Add a basic test to verify match peer ...
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-24 12:34:19 +03:00
Louis Scalbert
eb186bcdad tests: fix zebra_rib range
Range is wrong. We want values 1 and 2 but we only test 1.

> >>> for i in range(1, 2):
> ...     print(i)
> ...
> 1

Fixes: abd2a1ff3f ("tests: Test some basic kernel <-> zebra interactions")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-09-24 10:15:49 +02:00
Donald Sharp
ddbea65491 tests: Add v4/v6 forwarding off/on
There are no tests that ensured that turning off then on
v4 and v6 forwarding actually worked.  This does so.
This was found via looking at the code coverage.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-09-23 15:16:00 -04:00
Barry A. Trent
1425d4ac48 tests: add topotest for igmp proxy
Signed-off-by: Barry A. Trent <barry.trent@atcorp.com>
2024-09-23 11:43:40 -07:00
Donatas Abraitis
89644d5bf3 tests: Simplify BGP dual-as topotest
Test if we can establish a session with a global ASN directly.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-23 09:49:36 +03:00
Carmine Scarpitta
81de5a5a99 tests: Add testcase for SRv6 End.DT6
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-22 07:40:50 +02:00
Carmine Scarpitta
a963eecc4f tests: Add testcase for SRv6 End.DT4
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-22 07:40:50 +02:00
Carmine Scarpitta
31376097fc tests: Add testcase for SRv6 End.DX6
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-22 07:40:50 +02:00
Carmine Scarpitta
a158a561b8 tests: Fix unused variable warning
Fix warning unused variable `router_list`.

Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-22 07:40:50 +02:00
Jafar Al-Gharaibeh
be9ea8099e
Merge pull request #16889 from cscarpitta/fix/remove-duplicate-import-toopotest
tests: Remove duplicate `check_ping` import
2024-09-21 10:19:01 -05:00
Jafar Al-Gharaibeh
91a3d4dc32
Merge pull request #16888 from cscarpitta/fix/remove-log-monitor-cli
tests: Remove `log monitor XX ` from topotests
2024-09-21 10:18:34 -05:00
Carmine Scarpitta
253991771d tests: Remove duplicate check_ping import
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-21 11:17:01 +02:00
Carmine Scarpitta
372b8762eb tests: Remove log monitor XX from srv6_sid_manager test
`log monitor XX` command is deprecated and does nothing. Let's remove it.

Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-21 11:09:41 +02:00
Carmine Scarpitta
1ea13efac0 tests: Remove log monitor XX from srv6_sid_manager test
`log monitor XX` command is deprecated and does nothing. Let's remove it.

Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-21 11:09:41 +02:00
Carmine Scarpitta
ddd690968e tests: Remove log monitor XX from srv6_encap_src_addr test
`log monitor XX` command is deprecated and does nothing. Let's remove it.

Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-21 11:09:41 +02:00
Donald Sharp
8bb70ffb26 tests: Add a very basic dump bgp PATH.. topotest
None of the bgp dump code was even tested.  Add a bit
of basic stuff that it at least generates a dump file.
This can be extended at a future time.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-09-20 13:02:51 -04:00
Enke Chen
cb5e415c2a tests: adjust topotest after bgp_redistribute_add() fix
In ospf_multi_vrf_bgp_route_leak, the admin distance for the
redistributed ospf route should be 110, and should remain as 110 after
it's imported into another vrf, and then downloaded to zebra.

Signed-off-by: Enke Chen <enchen@paloaltonetworks.com>
2024-09-19 11:57:20 -07:00
Mark Stapp
f07579254a
Merge pull request #16857 from donaldsharp/logger_warning
tests: use logger.warning not logger.warn
2024-09-18 14:52:41 -04:00
Donald Sharp
8b25888ce8
Merge pull request #16816 from opensourcerouting/feature/bgp_dual_as
bgpd: Implement BGP dual-as feature
2024-09-18 11:59:16 -04:00
Donald Sharp
3d3c0e35eb tests: use logger.warning not logger.warn
Apparently logger.warn is being deprecated.  So let's
switch over to logger.warning.  Clearly it's better

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-09-18 11:56:42 -04:00
Christian Hopps
d5e4e2dfa5 tests: add test for new ietf-yang-library support
Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-17 22:27:36 -04:00
Donald Sharp
ade993b629
Merge pull request #16809 from louis-6wind/fix-rcap-double-free
isisd: fix rcap tlv double-free crash
2024-09-17 08:33:43 -04:00
Donald Sharp
5a589217f8 tests: When finding nexthops ensure that they are active
Do not accept a nexthop as valid unless it is marked as being
active.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-09-16 09:34:05 -04:00
Donald Sharp
aab2946088
Merge pull request #16828 from enkechen-panw/print-rnh
zebra: include the prefix in nht show command
2024-09-16 09:30:53 -04:00
Louis Scalbert
cfd050a0e5 tests: update isisd fuzz test
Since the previous commit, if a router capability subTLV is not
readable, the previously read subTLVs are kept.

Update of the ISIS fuzz test.

> $ wuschl rebuild tests/isisd/test_fuzz_isis_tlv
> $ gzip -9 tests/isisd/test_fuzz_isis_tlv_tests.h

> $ ./test_fuzz_isis_tlv 2>/dev/null | grep failed
> Test 139 failed, output differs.
> Test 150 failed, output differs.
> 2 of 405 tests failed.
>
> $ ./test_fuzz_isis_tlv 139 2>/dev/null
> Test 139 failed, output differs.
> Expected output:
> Unpack log:
> Unpacking 564 bytes of TLVs...
>   Unpacking TLV...
>     Found TLV of type 193 and len 13.
>     Skipping unknown TLV 193 (13 bytes)
>   Unpacking TLV...
>     Found TLV of type 0 and len 0.
>     Skipping unknown TLV 0 (0 bytes)
>   Unpacking TLV...
>     Found TLV of type 0 and len 0.
>     Skipping unknown TLV 0 (0 bytes)
>   Unpacking TLV...
>     Found TLV of type 242 and len 12.
>     Unpacking Router Capability TLV...
>     WARNING: Router Capability subTLV length too large compared to expected size
> Unpacked TLVs:
> Received output:
> Unpack log:
> Unpacking 564 bytes of TLVs...
>   Unpacking TLV...
>     Found TLV of type 193 and len 13.
>     Skipping unknown TLV 193 (13 bytes)
>   Unpacking TLV...
>     Found TLV of type 0 and len 0.
>     Skipping unknown TLV 0 (0 bytes)
>   Unpacking TLV...
>     Found TLV of type 0 and len 0.
>     Skipping unknown TLV 0 (0 bytes)
>   Unpacking TLV...
>     Found TLV of type 242 and len 12.
>     Unpacking Router Capability TLV...
>     WARNING: Router Capability subTLV length too large compared to expected size
> Unpacked TLVs:
> Router Capability: 253.212.128.242 , D:1, S:1
>
> $ ./test_fuzz_isis_tlv 150 2>/dev/null
> Test 150 failed, output differs.
> Expected output:
> Unpack log:
> Unpacking 403 bytes of TLVs...
>   Unpacking TLV...
>     Found TLV of type 129 and len 13.
>     Unpacking Protocols Supported TLV...
>       Protocols Supported: 73, 16, 255, 255, 255, 101, 10, 11, 11, 11, 11, 11, 11
>   Unpacking TLV...
>     Found TLV of type 11 and len 11.
>     Skipping unknown TLV 11 (11 bytes)
>   Unpacking TLV...
>     Found TLV of type 242 and len 12.
>     Unpacking Router Capability TLV...
>     WARNING: Router Capability subTLV length too large compared to expected size
> Unpacked TLVs:
> Protocols Supported: 73, 16, 255, 255, 255, 101, 10, 11, 11, 11, 11, 11, 11
> Received output:
> Unpack log:
> Unpacking 403 bytes of TLVs...
>   Unpacking TLV...
>     Found TLV of type 129 and len 13.
>     Unpacking Protocols Supported TLV...
>       Protocols Supported: 73, 16, 255, 255, 255, 101, 10, 11, 11, 11, 11, 11, 11
>   Unpacking TLV...
>     Found TLV of type 11 and len 11.
>     Skipping unknown TLV 11 (11 bytes)
>   Unpacking TLV...
>     Found TLV of type 242 and len 12.
>     Unpacking Router Capability TLV...
>     WARNING: Router Capability subTLV length too large compared to expected size
> Unpacked TLVs:
> Protocols Supported: 73, 16, 255, 255, 255, 101, 10, 11, 11, 11, 11, 11, 11
> Router Capability: 253.212.128.242 , D:1, S:1

Link: https://pypi.org/project/wuschl/
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-09-16 14:53:03 +02:00
Andrew Cooks
89e18bfad1 ospf6d: move lsa structs to ospf6_lsa.h
It will be cleaner to have the LSAs in a single header and the future
TLVs in a single header.

Signed-off-by: Andrew Cooks <acooks.at.bda@gmail.com>
2024-09-16 18:38:16 +10:00
Enke Chen
f6e28717ec zebra: include the prefix in nht show command
Include the prefix in "show ip nht" and "show ipv6 nht".

Signed-off-by: Enke Chen <enchen@paloaltonetworks.com>
2024-09-14 23:47:00 -07:00
Christian Hopps
98aaeab23c tests: fix spawning shells/vtysh on error in xdist mode
- Also fix the above and CLI when running in munet native mode

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-14 10:05:24 -04:00
Christian Hopps
68f25a1b74 tests: update munet 0.14.14, 0.14.15
- improvement to remote CLI
- 0.14.15 fixed a small bug in 0.14.14

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-14 10:05:19 -04:00
Christian Hopps
45e42c15df tests: update munet 0.14.13
- Improve remote CLI operation [improves xdist mode]

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-13 21:21:13 -04:00
Christian Hopps
bac68aba6c tests: update munet 0.14.12
- Adds retry_sleep (i.e., interval) parameter to native @retry decorator
- Fix --stdout and --stderr munet CLI args

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-13 21:21:13 -04:00
Donald Sharp
f3fc33e17b
Merge pull request #16438 from Jafaral/pim-10.1-cand-rp
PIM candidate BSR/RP support
2024-09-13 19:45:57 -04:00
Donald Sharp
5074633d05
Merge pull request #16815 from opensourcerouting/fix/adjust_wait_count_default_timers_if_too_low
tests: Adjust minimum wait/count timers for run_and_expect() if they are too low
2024-09-13 11:27:19 -04:00
Donatas Abraitis
e229b5bad3 tests: Test neighbor X no-prepend replace-as dual-as
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-13 11:28:09 +03:00
Donatas Abraitis
7cc6c9325e tests: Adjust minimum wait/count timers for run_and_expect() if they are too low
If the developer pass way too low timers, we end up with most likely false-positive
situations for random tests under a high load of the system.

It would be better to fallback to the minimum default values for such a cases.

E.g.:

```
WARNING: topo: Waiting time is too small (count=1, wait=0.5), using default values (count=20, wait=3)
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-13 10:23:51 +03:00
Donatas Abraitis
b916ed358c
Merge pull request #16779 from louis-6wind/fix-as-path-exclude
bgpd: fix as-path exclude modify crash
2024-09-13 09:38:15 +03:00
Louis Scalbert
2328d17121 tests: bgp_set_aspath_exclude extend timers
Extend timers in bgp_set_aspath_exclude in case of high load on the CI.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-09-11 18:02:52 +02:00
Louis Scalbert
e9c4b33119 tests: bgp_set_aspath_exclude check rule modif
No need to do 'no set as-path exclude' to replace the current rule by
another. The code is supposed to support the replacement.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-09-11 18:02:47 +02:00
Russ White
f48b05215a
Merge pull request #16748 from opensourcerouting/fix/issue_12502
bgpd: Validate imported routes next-hop that is in a default VRF
2024-09-10 10:17:24 -04:00
Russ White
add56c61dd
Merge pull request #15259 from dmytroshytyi-6WIND/nexthop_resolution
zebra: add LSP entry to nexthop via recursive (part 2)
2024-09-10 10:04:08 -04:00
Louis Scalbert
f102fb7aef tests: bgp_set_aspath_exclude check rule modif crash
Check that the following does not cause a crash:

> route-map r2 permit 6
>  set as-path exclude 65555
>  set as-path exclude as-path-access-list NON-EXISTING

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-09-10 15:18:00 +02:00
Jafar Al-Gharaibeh
571108e0e1 tests: don't set oif to a list if it is None
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2024-09-09 17:14:16 -05:00
Jafar Al-Gharaibeh
c1f8988a28 tests: add candidate BSR/RP topotest
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2024-09-09 17:14:16 -05:00
Christian Hopps
df2133f803 tests: add asyncio default config param to quiet warning
Update the topotest doc to the latest pytest* pkg versions
known to work together

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-09 16:35:28 -04:00
Russ White
80d3a2b120
Merge pull request #15679 from cscarpitta/test-srv6-sid-manager
tests: Add topotest to validate the sharing of an SRv6 locator among multiple protocols
2024-09-08 15:09:50 -04:00
Christian Hopps
956edf6fbf tests: log json diff output at debug level while retrying
Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-07 07:13:37 -04:00
Christian Hopps
987100333a tests: optionally pass seconds_left to retrying functions
This allows retrying functions to possibly change their logging level
for diagnostics.

In order to maintain backward compatibility with this longstanding
function we catch the specific exception of it not being handled by the
retrying function and call again w/o the argument.

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-07 07:09:27 -04:00
Carmine Scarpitta
c7f47536e6 tests: Add SRv6 SID Manager mem leak testcase
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:34 +02:00
Carmine Scarpitta
c6c8efb22c tests: Add SRv6 SID Manager ping testcase
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:34 +02:00
Carmine Scarpitta
f1a63df5a5 tests: Add SRv6 SID Manager VPN RIB testcase
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:34 +02:00
Carmine Scarpitta
d00be6af22 tests: Add SRv6 SID Manager SRv6 loc testcase
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:34 +02:00
Carmine Scarpitta
0a3be6a2bd tests: Add SRv6 SID Manager RIB IPv6 testcase
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:34 +02:00
Carmine Scarpitta
583c34c4ea tests: Add SRv6 SID Manager RIB IPv4 testcase
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:34 +02:00
Carmine Scarpitta
bbd59ed8a1 tests: Add SRv6 SID Manager ISIS adj testcase
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:34 +02:00
Carmine Scarpitta
55c9b65c89 tests: SRv6 SID Manager check rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:28 +02:00
Carmine Scarpitta
d6d8005395 tests: SRv6 SID Manager open json
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:24:11 +02:00
Carmine Scarpitta
1168c5a747 tests: SRv6 SID Manager check ping
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:23:56 +02:00
Carmine Scarpitta
d157212a21 tests: SRv6 SID Manager json cmp
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:23:37 +02:00
Carmine Scarpitta
fccfda2263 tests: SRv6 SID Manager teardown module
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:23:18 +02:00
Carmine Scarpitta
7d7678d251 tests: SRv6 SID Manager setup module
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:22:58 +02:00
Carmine Scarpitta
eea0da439d tests: SRv6 SID Manager build topology
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:22:39 +02:00
Carmine Scarpitta
9edf6005f6 tests: Add SRv6 SID Manager topotest
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:22:02 +02:00
Carmine Scarpitta
7b4de98caf tests: Add json to verify rt6 vpn rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
39acb03521 tests: Add json to verify rt6 vrf20 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
ac89710bc4 tests: Add json to verify rt6 vrf10 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
379dacdbe3 tests: Add json to verify rt6 ISIS adj
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
c9e42806ca tests: Add json to verify rt6 SRv6 locators
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
639e0c9b31 tests: Add json to verify rt6 ipv6 routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
459b974ad0 tests: Add json to verify rt6 ip routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
0b08195a31 tests: Add zebra configuration for rt6
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
e0e1dd8ac2 tests: Add sharp configuration for rt6
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
70e38f7450 tests: Add ISIS configuration for rt6
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
27d1fa8351 tests: Add BGP configuration for rt6
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
4e126ab88a tests: Add json to verify rt5 ISIS adj
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
0eb7062890 tests: Add json to verify rt5 SRv6 locators
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
1e885f0fd8 tests: Add json to verify rt5 ipv6 routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
7b156dd2c9 tests: Add json to verify rt5 ip routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
f5d8c37f0d tests: Add zebra configuration for rt5
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
42feb8d7c8 tests: Add ISIS configuration for rt5
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
a056dfd996 tests: Add json to verify rt4 ISIS adj
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
d13777e8ee tests: Add json to verify rt4 SRv6 locators
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
a7eb091662 tests: Add json to verify rt4 ipv6 routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
fa3d41963f tests: Add json to verify rt4 ip routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
f443c489d4 tests: Add zebra configuration for rt4
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
e2141d0d08 tests: Add ISIS configuration for rt4
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
25f0af0bd4 tests: Add json to verify rt3 ISIS adj
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
d23fca83f1 tests: Add json to verify rt3 SRv6 locators
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
58866a7c5b tests: Add json to verify rt3 ipv6 routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
51b5dce67a tests: Add json to verify rt3 ip routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
493b504817 tests: Add zebra configuration for rt3
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
1862b8d80c tests: Add ISIS configuration for rt3
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
5b12e45669 tests: Add json to verify rt2 ISIS adj
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
6c93cd401b tests: Add json to verify rt2 SRv6 locators
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
1e546db38e tests: Add json to verify rt2 ipv6 routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
06ca995dab tests: Add json to verify rt2 ip routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
a88d234d5c tests: Add zebra configuration for rt2
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
56a6958c92 tests: Add ISIS configuration for rt2
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
cc909c7266 tests: Add json to verify rt1 ISIS adj
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
5351018240 tests: Add json to verify rt1 SRv6 locators
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
af0499e028 tests: Add json to verify rt1 ipv6 routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
b8d40ea6d6 tests: Add json to verify rt1 ip routes
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
740c073692 tests: Add json to verify rt1 vpn rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
020fe7d766 tests: Add json to verify rt1 vrf20 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
cb968ad782 tests: Add json to verify rt1 vrf10 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
89b3886429 tests: Add zebra configuration for rt1
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
d305ff4e31 tests: Add sharp configuration for rt1
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
e61f48b902 tests: Add ISIS configuration for rt1
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
dc1b3c4869 tests: Add BGP configuration for rt1
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
613fd9a631 tests: Add zebra configuration for dst
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
e82f79ff75 tests: Add sharp configuration for dst
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
4de80634cc tests: Add json to verify ce6 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
2b62990b3b tests: Add zebra configuration for ce6
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
8d171d4d32 tests: Add BGP configuration for ce6
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
afbcc80db1 tests: Add json to verify ce5 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
f4231f36a8 tests: Add zebra configuration for ce5
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:03 +02:00
Carmine Scarpitta
fe0074ca56 tests: Add BGP configuration for ce5
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
153e5df38e tests: Add json to verify ce4 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
95ef7956cf tests: Add zebra configuration for ce4
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
b3dc1d4b4f tests: Add BGP configuration for ce4
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
948c3a37ca tests: Add json to verify ce3 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
9275d8423d tests: Add zebra configuration for ce3
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
7a907a9042 tests: Add BGP configuration for ce3
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
eb6458cec3 tests: Add json to verify ce2 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
b8cc37e6fe tests: Add zebra configuration for ce2
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
0c116a5e7a tests: Add BGP configuration for ce2
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
b8121539ac tests: Add json to verify ce1 rib
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
f88c7a7d73 tests: Add zebra configuration for ce1
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Carmine Scarpitta
220f7fd588 tests: Add BGP configuration for ce1
Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2024-09-06 23:08:02 +02:00
Donatas Abraitis
f3f96f95bd
Merge pull request #16746 from Jafaral/nhrp-test
tests: nhrp, use unified config, remove misleading error log
2024-09-06 09:43:00 +03:00
Donald Sharp
340d51fc3a
Merge pull request #16751 from opensourcerouting/fix/solo_peer-group
bgpd: Some peer-groups related changes/fixes
2024-09-05 17:42:20 -04:00
Martin Winter
97f14c5e5e
tests: Skip bgp_l3vpn vrf tests on 32bit systems
Tests may fail because of limited memory on 32bit system

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2024-09-05 15:57:35 +02:00
Donatas Abraitis
b63315f15d tests: Check if we can use solo with a peer-group
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-05 16:31:36 +03:00
Donatas Abraitis
014acb15d6 tests: Add valid, bestpath, and selectionReason to JSON files
They are expected in router_vrf_json_cmp_exact_filter(), because it has
exact=True.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-05 12:49:42 +03:00
Donatas Abraitis
34f7a5730b tests: Check if VPN routes can be imported with a next-hop in a default VRF
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-09-05 11:38:07 +03:00
Jafar Al-Gharaibeh
2054b49c40 tests: nhrp, use unified config, remove misleading error log
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2024-09-05 00:00:52 -05:00
Christian Hopps
a88f3c2d1c tests: improve example munet test
Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-03 00:45:55 -04:00
Christian Hopps
08253740ef tests: fix munet native topotest runs
Enabe/fix using a munet.yaml config file for topology configuration.
Easier test writing.

This also uses the standard `frrinit.sh` to launch and teardown
FRR, so we actually test what most users use.

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-09-03 00:45:48 -04:00
Jafar Al-Gharaibeh
745cd3e6bf
Merge pull request #16711 from donaldsharp/memory_type_stuff
Memory type stuff
2024-09-01 19:44:29 -04:00
Donatas Abraitis
2931b78537
Merge pull request #16698 from louis-6wind/fix-nhrp-redundancy
nhrpd, test: fix nhrp_redundancy topotest
2024-09-01 20:30:02 +03:00
Donald Sharp
d97c535c1e *: Create termtable specific temp memory
When trying to track down a MTYPE_TMP memory leak
it's harder to search for it when you happen to
have some usage of ttable_dump.  Let's just give
it it's own memory type so that we can avoid
confusion in the future.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-09-01 13:07:46 -04:00
Donald Sharp
3bf359b04e
Merge pull request #16701 from Jafaral/unified-config
tests: detect all daemons correctly when using frr.conf
2024-08-31 08:56:55 -04:00
Jafar Al-Gharaibeh
02256fd23b tests: detect all daemons correctly when using frr.conf
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2024-08-30 14:35:31 -05:00
Louis Scalbert
64ad1dca42 tests: use private addresses in nhrp_redundancy
Use private addresses in nhrp_redundancy.

> cd tests/topotests/nhrp_redundancy
> git grep 176.16  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|176.16|172.16|g' -i
> git grep 5.5.5.  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|5.5.5.|10.5.5.|g' -i
> git grep 4.4.4  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|4.4.4.|10.4.4.|g' -i

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:59:22 +02:00
Louis Scalbert
94ba96747b tests: check show ip nhrp shorcut in nhrp_redundancy
Check show ip nhrp shorcut in nhrp_redundancy

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:59:22 +02:00
Louis Scalbert
25e10819e3 tests: fix iptables command in nhrp_redundancy
Replace --nflog-range argument by --nflog-range due to:

> 2024-08-30 10:44:54,816 INFO: topo: input: iptables -A FORWARD -i nhs3-gre0 -o nhs3-gre0 -m hashlimit --hashlimit-upto 4/minute --hashlimit-burst 1 --hashlimit-mode srcip,dstip --hashlimit-srcmask 24 --hashlimit-dstmask 24 --hashlimit-name loglimit-0 -j NFLOG --nflog-group 1 --nflog-range 128
> 2024-08-30 10:44:54,819 INFO: topo: output: warn: --nflog-range has never worked and is no longer supported, please use --nflog-size insted

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:59:22 +02:00
Louis Scalbert
2933d7f236 tests: fix nhs1 down check in nhrp_redundancy
Fully check the NHRP convergence after setting nhs1 down. Otherwise the
ping may pass because the previous shortcut is still present.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:59:22 +02:00
Louis Scalbert
432b60d194 tests: fix nhc1 route check after nhs1 down
After setting down nhs1, the test is checking that nhc1 routing table
matches routes in nhc1/nhrp_route.json. It is incorrect because it
checks that the NHRP route to nhs1 is still present but it should have
disappeared.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:59:22 +02:00
Louis Scalbert
7a082e04f4 tests: simplify nhrp_redundancy convergence
Simplify nhrp_redundancy convergence code. Cosmetic change.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:59:22 +02:00
Louis Scalbert
76d84020a8 tests: rename router variables in nhrp_redundancy
Rename router variables in nhrp_redundancy to match the actual name.
Cosmetic change to help debugging.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:59:22 +02:00
Louis Scalbert
5f058cdef7 tests: rename routers in nhrp_redundancy
Rename routers in nhrp_redundancy to match the diagram. Cosmetic change.

> cd tests/topotests/nhrp_redundancy
> git grep r1  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|r1|nhs1|g' -i
> git grep r2  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|r2|nhs2|g' -i
> git grep r3  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|r3|nhs3|g' -i
> git grep r4  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|r4|nhc1|g' -i
> git grep r5  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|r5|nhc2|g' -i
> git grep r6  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|r6|router|g' -i
> git grep r7  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|r7|host|g' -i
>
> git grep R1  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|R1|nhs1|g' -i
> git grep R2  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|R2|nhs2|g' -i
> git grep R3  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|R3|nhs3|g' -i
> git grep R4  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|R4|nhc1|g' -i
> git grep R5  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|R5|nhc2|g' -i
> git grep R6  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|R6|router|g' -i
> git grep R7  | cut -f1 -d: | uniq | xargs -L1 sed -e 's|R7|host|g' -i
>
> mv r1 nhs1
> mv r2 nhs2
> mv r3 nhs3
> mv r4 nhc1
> mv r5 nhc2
> mv r6 router
> mv r7 host

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:59:07 +02:00
Louis Scalbert
f04191f559 tests: apply black nhrp_redundancy
Apply black nhrp_redundancy

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 14:55:34 +02:00
Louis Scalbert
43cc850def tests: fix prefix length in nhrp_redundancy
The expected prefix should be 5.5.5.0/24 otherwise the hosts behind NHRP
client 1 nhc1 (aka. r5) are not reachable via NHRP.

The issue was not seen in the FRR official CI because the tests were
skipped because iptables were missing in CI machines.

It solves the 16690 issue.

Fixes: https://github.com/FRRouting/frr/issues/16690
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2024-08-30 13:55:31 +02:00
Jafar Al-Gharaibeh
5752fc86ee tests: increase the timeout for packet padding check
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2024-08-29 11:40:50 -05:00
Jafar Al-Gharaibeh
77e1a26faa
Merge pull request #16664 from mjstapp/igor_debug_simplify
*: simplify frrlib debug
2024-08-29 11:51:53 -04:00
Mark Stapp
ac2d9bae5c
Merge pull request #16680 from donaldsharp/route_scale_minor_changes
tests: Fix route-scale at higher ecmp
2024-08-29 08:17:34 -04:00
Jafar Al-Gharaibeh
12a3d5a748
Merge pull request #16683 from donaldsharp/test_ospf_netns_vrf_failure
tests: ospf_netns_vrf should give more time for coming up
2024-08-29 01:12:40 -04:00
Jafar Al-Gharaibeh
648566c6fb
Merge pull request #16682 from donaldsharp/bgp_suppress_test
tests: Ensure bgp suppress fib has a chance to transmit data to peer
2024-08-29 01:12:17 -04:00
Jafar Al-Gharaibeh
216ed8c796
Merge pull request #16673 from donaldsharp/default_original_sin
tests: Fix bgp_default_originate_topo1_3
2024-08-28 15:30:12 -04:00
Donald Sharp
ce74a6b0a8 tests: Fix route-scale at higher ecmp
Recent commits moved the default retries to 60, but
the higher ecmp counts were over-riding to 40.  Let's
make it 80.

Noticed this when I went looking at failures on 386 platforms
in our ci.  Route scale is timing out when deleting routes.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-08-28 15:18:24 -04:00
Donald Sharp
d58c44cebe tests: ospf_netns_vrf should give more time for coming up
Test fails:

            test_func = partial(
                topotest.router_json_cmp,
                router,
                "show ip ospf vrf {0}-ospf-cust1 json".format(rname),
                expected,
            )
            _, diff = topotest.run_and_expect(test_func, None, count=10, wait=0.5)
            assertmsg = '"{}" JSON output mismatches'.format(rname)
>           assert diff is None, assertmsg
E           AssertionError: "r1" JSON output mismatches
E           assert Generated JSON diff error report:
E
E             > $->r1-ospf-cust1->areas->0.0.0.0->nbrFullAdjacentCounter: output has element with value '1' but in expected it has value '2'

/home/sharpd/frr2/tests/topotests/ospf_netns_vrf/test_ospf_netns_vrf.py:239: AssertionError

Support bundle has this data:
r1# show ip ospf vrf all neighbor
% 2024/08/28 14:55:54.763

VRF Name: r1-ospf-cust1

Neighbor ID     Pri State           Up Time         Dead Time Address         Interface                        RXmtL RqstL DBsmL
10.0.255.3        1 Full/DR         10.547s           39.456s 10.0.3.1        r1-eth1:10.0.3.2                     0     0     0
10.0.255.2        1 Full/Backup     0.543s            38.378s 10.0.3.3        r1-eth1:10.0.3.2                     1     0     0

So immediately after the test fails this test, the neighbor comes up.
Let's give the test a bit more time for failure to not happen

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-08-28 15:10:04 -04:00
Donald Sharp
3797454a2a tests: Ensure bgp suppress fib has a chance to transmit data to peer
Giving only 5 seconds to pass bgp data to peers on a heavily
loaded system is a recipe for not having fun.  Add more time.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-08-28 15:05:40 -04:00
Mark Stapp
8b23abf36e
Merge pull request #16300 from donaldsharp/local_connected
Local connected
2024-08-28 14:10:14 -04:00
Donald Sharp
598d9a1f17 tests: Fix bgp_default_originate_topo1_3
This test was killing bgp on r1 and r2
and then immediately testing that the
default route transitioned.  Unfortunately
the test was written that under load the
system might be in a bad state.  Let's
modify the code to check for a bgp version
change and then that the bgp state has
come back up

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-08-28 11:09:32 -04:00
Igor Ryzhov
82e52e0f21 lib: common debug config output
Implement common code for debug config output and remove daemon-specific
code that is duplicated everywhere.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2024-08-27 09:53:02 -04:00
Igor Ryzhov
5dac696154 lib: rework debug init
The debug library allows to register a `debug_set_all` callback which
should enable all debugs in a daemon. This callback is implemented
exactly the same in each daemon. Instead of duplicating the code, rework
the lib to allow registration of each debug type, and implement the
common code only once in the lib.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2024-08-27 09:53:02 -04:00
Mark Stapp
17fffbad1b
Merge pull request #16656 from donaldsharp/minor_fix_for_pim_dr_nondr
tests: Allow convergence before adding multicast routes
2024-08-27 08:17:46 -04:00
Donald Sharp
37dd51867f tests: Add some tests to show new behavior works as expected
a) A noprefix address by itself should not create a connected route.
   This was pre-existing.
b) A noprefix address with a corresponding route should result in a
   connected route.  This is how NetworkManager appears to work.
   This is new behavior, so a new test.
c) A route is added to the system from someone else.
   This is new behavior, so a new test.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-08-27 06:25:34 -04:00
Jafar Al-Gharaibeh
0d745741c9 tests: Fix frequent ospfv3 basic functionality test failure
The dead timer is set to 4 seconds, while the hello interval is set to 6535.
This test will only pass of the platform is fast enough for ospfv3 to
converge in 4 seconds. These timers were already tested multiple time earlier.
This test should just make sure that the boundary value 65535 is configurable,

Other changes in this commit:
  - add sequence numbers to the dead intervals tests to make it easier to
    track test faliures.
  - swap the config order in one test to match order with all other tests.

Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2024-08-26 16:35:37 -05:00
Donald Sharp
3c4ffcacfe tests: Allow convergence before adding multicast routes
Current code adds a new vlan interface, sets up ospf and
pim on it and immediately starts shoving data down the pipes.
This of course has the fun thing where the IGP and pim do not
always come up in a nice neat manner and the test is looking
for state from a nice neat come up, even though pim is `working`
correctly it is not correct for what the test wants.

Modify the code to ensure that ospf is up and has propagated
the route where it is needed as well as that pim neighbors have
properly come up, then initiate the multicast streams and igmp
reports.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-08-26 16:02:46 -04:00
Donald Sharp
3d8ccdb115
Merge pull request #16615 from Jafaral/revert-v4-v6-bgp
Revert ipv4-mapped ipv6 and 6vpe nexthop in BGP
2024-08-22 17:57:38 -04:00
Jafar Al-Gharaibeh
741c030395 Revert "Merge pull request #15368 from louis-6wind/fix-6pe"
This reverts commit df98e88368, reversing
changes made to b652119235.
2024-08-22 10:38:09 -05:00
Donald Sharp
05c17eff06
Merge pull request #16450 from nabahr/static_joins
PIM: Implement static IGMP joins without an IGMP report
2024-08-22 11:32:56 -04:00
Jafar Al-Gharaibeh
879460ce27
Merge pull request #16613 from donaldsharp/weight_issues
Weight issues
2024-08-22 11:19:54 -04:00
Jafar Al-Gharaibeh
db71bebc2a
Merge pull request #16620 from LabNConsulting/new-munet-0-14-10
tests: update munet to 0.14.10
2024-08-22 11:14:18 -04:00
Donatas Abraitis
18e2d0d1a9
Merge pull request #16621 from LabNConsulting/fix-grpc-client
tests: dont print sys.path when running grpc-query.py
2024-08-22 09:41:34 +02:00
Christian Hopps
436e4d9755 tests: dont print sys.path when running grpc-query.py
Don't print the sys.path when running grpc-query.py. Doing so
was causing tests to fail.

Signed-off-by: Christian Hopps <chopps@labn.net>
2024-08-21 22:07:25 -04:00