Commit graph

38811 commits

Author SHA1 Message Date
Krishnasamy 7e8c18d0b0 zebra: change fpm_read to batch the messages
Make code changes in fpm_read to create a list of ctx and send it to
zebra for processing rather than sending individual ctx

Signed-off-by: Krishnasamy <krishnasamyr@nvidia.com>
2025-04-16 07:14:55 +00:00
Mark Stapp b256f2f1e9 tests: add nb test binary to .gitignore
Add a northbound unit-test binary product to .gitignore

Signed-off-by: Mark Stapp <mjs@cisco.com>
2025-04-15 13:16:07 -04:00
Mark Stapp da8fce3830 tests: use little-endian order for libyang api
Use the expected - little-endian - byte-order for a param
to one of the libyang apis; tests fail on LE architectures
otherwise.

Signed-off-by: Mark Stapp <mjs@cisco.com>
2025-04-15 13:15:09 -04:00
Russ White e190163413
Merge pull request #18592 from zmw12306/bfd_set_shutdown
bfdd: Set bfd.LocalDiag when transitioning to AdminDown
2025-04-15 11:34:28 -04:00
Russ White 796e1af6e2
Merge pull request #18540 from LabNConsulting/chopps/list-entry-done
lib: nb: add list_entry_done() callback to free resources
2025-04-15 11:30:50 -04:00
Christian Hopps f5a8b8aedf
Merge pull request #18610 from lsang6WIND/yang-isisd
fix yang commands that don't have yang attr
2025-04-15 10:25:51 -05:00
Donald Sharp fd9ff5e0e2 tests: Add ability to test ipv6 ra pref64 extension
This is the test to ensure that the ipv6 ra pref64
extension is working properly..

This is a very simple test.  Enables the feature
on r1 to send out the ra's once every 3 seconds
with the feature turned on.  Then on r2 ensure
that we see the ra with the appropriate values.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2025-04-15 14:20:28 +02:00
David Lamparter 5fd36a5818 tests: add external RFC8781 receiver tool
Otherwise pretty much impossible to test this within the current
limitations of topotests.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2025-04-15 14:20:23 +02:00
David Lamparter 38ea0258ae zebra: implement RFC8781 (NAT64 prefix in RAs)
This tells hosts on the subnet if (and which) NAT64 prefix is in use.
Useful for things like xlat464, or local dns64.

Updated from the previous -03 draft implementation.  (PLC field did not
exist before.)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2025-04-15 14:20:05 +02:00
Donatas Abraitis 7ef9394c33
Merge pull request #18653 from louis-6wind/fix-bgp-pbr-mem-leaks
bgpd: fix pbr memory leaks
2025-04-15 10:07:14 +03:00
Y Bharath bb6f2c2fb0 tests: Resource leak in common_config.py
Address pending changes from PR:18574

Signed-off-by: y-bharath14 <y.bharath@samsung.com>
2025-04-15 11:24:44 +05:30
Xiao Liang f84e89ec0d bgpd: Add function to filter extended communities
Support filtering extended communities with a callback. So that we can
strip multiple values in one pass.

Signed-off-by: Xiao Liang <shaw.leon@gmail.com>
2025-04-15 11:17:45 +08:00
Jafar Al-Gharaibeh 3da1473093
Merge pull request #18655 from mjstapp/fix_clang_lib_bgp
lib,bgpd: clean up clang warnings
2025-04-14 21:10:49 -05:00
Donald Sharp 417c82aadd
Merge pull request #18654 from chdxD1/v4-via-v6-nexthop
Add v4-via-v6 nexthop support to staticd
2025-04-14 19:28:48 -04:00
Jafar Al-Gharaibeh 0dc71bcfca
Merge pull request #18641 from donaldsharp/fpm_listener_storage
zebra: Add ability to dump routes received from fpm_listener
2025-04-14 15:21:13 -05:00
Mark Stapp 81b472bd79 lib,bgpd: clean up clang warnings
Clean up a couple of clang compiler warnings (this was
clang 18)

Signed-off-by: Mark Stapp <mjs@cisco.com>
2025-04-14 15:32:08 -04:00
Jafar Al-Gharaibeh c2ee9a360e
Merge pull request #18578 from ak503/pim6_use_source
pim6d: fix missing 'use-source' interface command
2025-04-14 14:07:26 -05:00
Christopher Dziomba 4e5d3b6857
topotests: introduce evpn next-hop tests
Adding tests in the bgp_evpn_rt5 topology to cover the changed
bgp -> zebra interaction that does no longer rely on withdrawing and
then re-installing the route. The newly introduced pathCount of EVPN
next-hops is checked. In addition the log is checked for MAC_DELETE or
NEIGH_DELETE during multipath flaps that must no longer be present for
the test to succeed.

Signed-off-by: Christopher Dziomba <christopher.dziomba@telekom.de>
2025-04-14 20:10:01 +02:00
Christopher Dziomba 86628752a5
doc: Add v4-over-v6 next-hop to staticd docs
GATEWAY can now be v4 or v6 for v4 routes, for v6 routes it
can only be v6 (like today).

Signed-off-by: Christopher Dziomba <christopher.dziomba@telekom.de>
2025-04-14 19:34:17 +02:00
Christopher Dziomba 438360e2bd
tests: Validating staticd v4-over-v6 nexthop
Introducing do_ipv6_nexthop to static_simple topotest. The test
configures IPv4 routes with IPv6 nexthop and validates that via
inet6 is visible in the Linux Kernel

Signed-off-by: Christopher Dziomba <christopher.dziomba@telekom.de>
2025-04-14 19:34:11 +02:00
Christopher Dziomba 8fc41e81f0
staticd: Add v4-via-v6 nexthop support
Routing v4 over an v6 nexthop is already well supported within zebra
(and FRR). This adds support to staticd, allowing an IPv6 nexthop to
be provided to ip route statements. For this the commands are
extended and the address family is parsed from the parameter.

When receiving nht updates from zebra, both AFIs are checked because
prefixes could exist in both. Additionally when route_node is known,
family of prefix is used instead of nexthop.

Signed-off-by: Christopher Dziomba <christopher.dziomba@telekom.de>
2025-04-14 19:22:39 +02:00
Louis Scalbert eb8281aeb8 bgpd: fix bgp_pbr_or_filter memory leaks
Note that bgp_pbr_policyroute_add_from_zebra() and
bgp_pbr_policyroute_remove_from_zebra() are only called from
bgp_pbr_handle_entry().

>  ==966967==ERROR: LeakSanitizer: detected memory leaks
>
> Direct leak of 40 byte(s) in 1 object(s) allocated from:
>     #0 0x7fd447ab4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fd44746f8dd in qcalloc lib/memory.c:105
>     #2 0x7fd44744401a in list_new lib/linklist.c:49
>     #3 0x560f8c094490 in bgp_pbr_handle_entry bgpd/bgp_pbr.c:2818
>     #4 0x560f8c095993 in bgp_pbr_update_entry bgpd/bgp_pbr.c:2941
>     #5 0x560f8c2164f3 in bgp_zebra_announce bgpd/bgp_zebra.c:1618
>     #6 0x560f8c0bd668 in bgp_process_main_one bgpd/bgp_route.c:3691
>     #7 0x560f8c0be7fe in process_subq_other_route bgpd/bgp_route.c:3856
>     #8 0x560f8c0bf280 in process_subq bgpd/bgp_route.c:3955
>     #9 0x560f8c0bf320 in meta_queue_process bgpd/bgp_route.c:3980
>     #10 0x7fd44759fdfc in work_queue_run lib/workqueue.c:282
>     #11 0x7fd4475779b2 in event_call lib/event.c:2011
>     #12 0x7fd447442ff1 in frr_run lib/libfrr.c:1216
>     #13 0x560f8bef0a15 in main bgpd/bgp_main.c:545
>     #14 0x7fd446e29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
>
> Direct leak of 40 byte(s) in 1 object(s) allocated from:
>     #0 0x7fd447ab4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fd44746f8dd in qcalloc lib/memory.c:105
>     #2 0x7fd44744401a in list_new lib/linklist.c:49
>     #3 0x560f8c09439d in bgp_pbr_handle_entry bgpd/bgp_pbr.c:2812
>     #4 0x560f8c095993 in bgp_pbr_update_entry bgpd/bgp_pbr.c:2941
>     #5 0x560f8c2164f3 in bgp_zebra_announce bgpd/bgp_zebra.c:1618
>     #6 0x560f8c0bd668 in bgp_process_main_one bgpd/bgp_route.c:3691
>     #7 0x560f8c0be7fe in process_subq_other_route bgpd/bgp_route.c:3856
>     #8 0x560f8c0bf280 in process_subq bgpd/bgp_route.c:3955
>     #9 0x560f8c0bf320 in meta_queue_process bgpd/bgp_route.c:3980
>     #10 0x7fd44759fdfc in work_queue_run lib/workqueue.c:282
>     #11 0x7fd4475779b2 in event_call lib/event.c:2011
>     #12 0x7fd447442ff1 in frr_run lib/libfrr.c:1216
>     #13 0x560f8bef0a15 in main bgpd/bgp_main.c:545
>     #14 0x7fd446e29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
>
> Direct leak of 4 byte(s) in 1 object(s) allocated from:
>     #0 0x7fd447ab4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fd44746f8dd in qcalloc lib/memory.c:105
>     #2 0x560f8c080cec in bgp_pbr_extract_enumerate_unary bgpd/bgp_pbr.c:362
>     #3 0x560f8c080f7e in bgp_pbr_extract_enumerate bgpd/bgp_pbr.c:400
>     #4 0x560f8c094530 in bgp_pbr_handle_entry bgpd/bgp_pbr.c:2819
>     #5 0x560f8c095993 in bgp_pbr_update_entry bgpd/bgp_pbr.c:2941
>     #6 0x560f8c2164f3 in bgp_zebra_announce bgpd/bgp_zebra.c:1618
>     #7 0x560f8c0bd668 in bgp_process_main_one bgpd/bgp_route.c:3691
>     #8 0x560f8c0be7fe in process_subq_other_route bgpd/bgp_route.c:3856
>     #9 0x560f8c0bf280 in process_subq bgpd/bgp_route.c:3955
>     #10 0x560f8c0bf320 in meta_queue_process bgpd/bgp_route.c:3980
>     #11 0x7fd44759fdfc in work_queue_run lib/workqueue.c:282
>     #12 0x7fd4475779b2 in event_call lib/event.c:2011
>     #13 0x7fd447442ff1 in frr_run lib/libfrr.c:1216
>     #14 0x560f8bef0a15 in main bgpd/bgp_main.c:545
>     #15 0x7fd446e29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
>
> Direct leak of 4 byte(s) in 1 object(s) allocated from:
>     #0 0x7fd447ab4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fd44746f8dd in qcalloc lib/memory.c:105
>     #2 0x560f8c080cec in bgp_pbr_extract_enumerate_unary bgpd/bgp_pbr.c:362
>     #3 0x560f8c080f7e in bgp_pbr_extract_enumerate bgpd/bgp_pbr.c:400
>     #4 0x560f8c09443d in bgp_pbr_handle_entry bgpd/bgp_pbr.c:2813
>     #5 0x560f8c095993 in bgp_pbr_update_entry bgpd/bgp_pbr.c:2941
>     #6 0x560f8c2164f3 in bgp_zebra_announce bgpd/bgp_zebra.c:1618
>     #7 0x560f8c0bd668 in bgp_process_main_one bgpd/bgp_route.c:3691
>     #8 0x560f8c0be7fe in process_subq_other_route bgpd/bgp_route.c:3856
>     #9 0x560f8c0bf280 in process_subq bgpd/bgp_route.c:3955
>     #10 0x560f8c0bf320 in meta_queue_process bgpd/bgp_route.c:3980
>     #11 0x7fd44759fdfc in work_queue_run lib/workqueue.c:282
>     #12 0x7fd4475779b2 in event_call lib/event.c:2011
>     #13 0x7fd447442ff1 in frr_run lib/libfrr.c:1216
>     #14 0x560f8bef0a15 in main bgpd/bgp_main.c:545
>     #15 0x7fd446e29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2025-04-14 13:52:02 +02:00
Louis Scalbert 442d8bce36 bgpd: fix bgp_pbr_rule memory leak
Fix bgp_pbr_rule memory leak. Found by code review.

Fixes: 27e376d4e1 ("bgpd: an hash list of pbr iprule is created")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2025-04-14 13:09:36 +02:00
Louis Scalbert 8d9df5cf04 bgpd: fix bgp_pbr_match memory leak
> Direct leak of 1144 byte(s) in 13 object(s) allocated from:
>     #0 0x7f3eedeb4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7f3eed86f8dd in qcalloc lib/memory.c:105
>     #2 0x55b32d236faf in bgp_pbr_match_alloc_intern bgpd/bgp_pbr.c:1074
>     #3 0x7f3eed817d79 in hash_get lib/hash.c:147
>     #4 0x55b32d242d9a in bgp_pbr_policyroute_add_to_zebra_unit bgpd/bgp_pbr.c:2486
>     #5 0x55b32d244436 in bgp_pbr_policyroute_add_to_zebra bgpd/bgp_pbr.c:2672
>     #6 0x55b32d245a05 in bgp_pbr_handle_entry bgpd/bgp_pbr.c:2843
>     #7 0x55b32d246912 in bgp_pbr_update_entry bgpd/bgp_pbr.c:2939
>     #8 0x55b32d3c7472 in bgp_zebra_announce bgpd/bgp_zebra.c:1618
>     #9 0x55b32d26e5e7 in bgp_process_main_one bgpd/bgp_route.c:3691
>     #10 0x55b32d26f77d in process_subq_other_route bgpd/bgp_route.c:3856
>     #11 0x55b32d2701ff in process_subq bgpd/bgp_route.c:3955
>     #12 0x55b32d27029f in meta_queue_process bgpd/bgp_route.c:3980
>     #13 0x7f3eed99fdd8 in work_queue_run lib/workqueue.c:282
>     #14 0x7f3eed97798e in event_call lib/event.c:2011
>     #15 0x7f3eed842ff1 in frr_run lib/libfrr.c:1216
>     #16 0x55b32d0a1a15 in main bgpd/bgp_main.c:545
>     #17 0x7f3eed229d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

Fixes: d114b0d739 ("bgpd: inject policy route entry from bgp into zebra pbr entries.")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2025-04-14 13:09:35 +02:00
Louis Scalbert 520518c3ad bgpd: fix bgp_pbr_match_entry memory leak
> ==238132==ERROR: LeakSanitizer: detected memory leaks
>
> Direct leak of 160 byte(s) in 1 object(s) allocated from:
>     #0 0x7fd79f0b4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fd79ea6f8dd in qcalloc lib/memory.c:105
>     #2 0x5586b26995f9 in bgp_pbr_match_entry_alloc_intern bgpd/bgp_pbr.c:1155
>     #3 0x7fd79ea17d79 in hash_get lib/hash.c:147
>     #4 0x5586b26a551d in bgp_pbr_policyroute_add_to_zebra_unit bgpd/bgp_pbr.c:2522
>     #5 0x5586b26a6436 in bgp_pbr_policyroute_add_to_zebra bgpd/bgp_pbr.c:2672
>     #6 0x5586b26a8089 in bgp_pbr_handle_entry bgpd/bgp_pbr.c:2876
>     #7 0x5586b26a8912 in bgp_pbr_update_entry bgpd/bgp_pbr.c:2939
>     #8 0x5586b2829472 in bgp_zebra_announce bgpd/bgp_zebra.c:1618
>     #9 0x5586b282ab4b in bgp_zebra_announce_table bgpd/bgp_zebra.c:1766
>     #10 0x5586b2824b99 in bgp_zebra_tm_connect bgpd/bgp_zebra.c:1091
>     #11 0x7fd79eb7798e in event_call lib/event.c:2011
>     #12 0x7fd79ea42ff1 in frr_run lib/libfrr.c:1216
>     #13 0x5586b2503a15 in main bgpd/bgp_main.c:545
>     #14 0x7fd79e429d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

Fixes: d114b0d739 ("bgpd: inject policy route entry from bgp into zebra pbr entries.")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2025-04-14 13:09:34 +02:00
Jafar Al-Gharaibeh ac56da1f50
Merge pull request #18649 from donaldsharp/rpki_testing_and_buf_fix
Rpki testing and bug fix
2025-04-12 22:26:19 -05:00
Donald Sharp dbff585b41 tests: Add more tests to bgp_rpki_topo1 test
Looking at the gcov of the rpki code, I noticed
that there was some functionality that is not
covered in our test suites.  Add the functionality.

Signed-off-by: Donald Sharp <donaldsharp72@gmail.com>
2025-04-12 17:00:02 -04:00
Donald Sharp dcf43ae009 bgpd: Prevent crash when issuing a show rpki connections
When attempting to check rpki status and the connection
has been turned off, let's check to see if we are connected
before we ask the rpki subsystem, else we will get a crash
in the rpki library.

Signed-off-by: Donald Sharp <donaldsharp72@gmail.com>
2025-04-12 16:59:56 -04:00
Dmitrii Turlupov 467e1ed597 pim6d: fix missing 'use-source' interface command
Signed-off-by: Dmitrii Turlupov <turlupov@bk.ru>
2025-04-12 09:54:19 +03:00
Donald Sharp bd8ee74b49
Merge pull request #18645 from louis-6wind/fix-zebra-pbr-leak
zebra: fix pbr_iptable memory leak
2025-04-11 19:54:03 -04:00
Donatas Abraitis 85bb2155db
Merge pull request #18574 from y-bharath14/srib-tests-v10
tests: Shadowing the built-in function
2025-04-11 18:54:01 +03:00
Carmine Scarpitta c5dfb9f5e5
Merge pull request #18628 from raja-rajasekar/rajasekarr/fix_frr_reload_srv6
tools: fix reload script for SRv6 locators and formats
2025-04-11 17:07:05 +02:00
Jafar Al-Gharaibeh 953d92b3b2
Merge pull request #18640 from donaldsharp/fpm_listener_nhg_data
zebra: modify fpm_listener to display data about nhgs
2025-04-11 10:06:55 -05:00
Carmine Scarpitta 5ad0ba3ee9
Merge pull request #18597 from pguibert6WIND/end_b6_encaps_extensions
lib, staticd, isisd: add B6.ENCAPS codepoint extensions
2025-04-11 17:00:13 +02:00
Louis Scalbert 55ea74d630 zebra: clean pbr_iptable interface_name_list free
Clean up code related to pbr_iptable->interface_name_list free. This is
a cosmetic change.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2025-04-11 15:52:42 +02:00
Louis Scalbert 92cddedffd zebra: fix pbr_iptable memory leak
We are obviously doing deleting on wrong object.

> Direct leak of 40 byte(s) in 1 object(s) allocated from:
>     #0 0x7fcf718b4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fcf7126f8dd in qcalloc lib/memory.c:105
>     #2 0x7fcf7124401a in list_new lib/linklist.c:49
>     #3 0x55771621d86d in pbr_iptable_alloc_intern zebra/zebra_pbr.c:1015
>     #4 0x7fcf71217d79 in hash_get lib/hash.c:147
>     #5 0x55771621dad3 in zebra_pbr_add_iptable zebra/zebra_pbr.c:1030
>     #6 0x55771614d00c in zread_iptable zebra/zapi_msg.c:4131
>     #7 0x55771614e586 in zserv_handle_commands zebra/zapi_msg.c:4424
>     #8 0x5577162dae2c in zserv_process_messages zebra/zserv.c:521
>     #9 0x7fcf7137798e in event_call lib/event.c:2011
>     #10 0x7fcf71242ff1 in frr_run lib/libfrr.c:1216
>     #11 0x5577160e4d6d in main zebra/main.c:540
>     #12 0x7fcf70c29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
>
> Indirect leak of 24 byte(s) in 1 object(s) allocated from:
>     #0 0x7fcf718b4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fcf7126f8dd in qcalloc lib/memory.c:105
>     #2 0x7fcf71244129 in listnode_new lib/linklist.c:71
>     #3 0x7fcf71244238 in listnode_add lib/linklist.c:92
>     #4 0x55771621d938 in pbr_iptable_alloc_intern zebra/zebra_pbr.c:1019
>     #5 0x7fcf71217d79 in hash_get lib/hash.c:147
>     #6 0x55771621dad3 in zebra_pbr_add_iptable zebra/zebra_pbr.c:1030
>     #7 0x55771614d00c in zread_iptable zebra/zapi_msg.c:4131
>     #8 0x55771614e586 in zserv_handle_commands zebra/zapi_msg.c:4424
>     #9 0x5577162dae2c in zserv_process_messages zebra/zserv.c:521
>     #10 0x7fcf7137798e in event_call lib/event.c:2011
>     #11 0x7fcf71242ff1 in frr_run lib/libfrr.c:1216
>     #12 0x5577160e4d6d in main zebra/main.c:540
>     #13 0x7fcf70c29d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

Fixes: f80ec7e3d6 ("zebra: handle iptable list of interfaces")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2025-04-11 15:52:30 +02:00
Louis Scalbert cd451ff4ef zebra: split up MTYPE_PBR_OBJ
Split up MTYPE_PBR_OBJ into dedicated MTYPE to clarify the memory
allocation and free.

Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2025-04-11 15:52:30 +02:00
Donald Sharp f163168c95
Merge pull request #18642 from louis-6wind/fix-asla-leak
isisd: fix asla memory leak
2025-04-11 09:07:27 -04:00
Donald Sharp 2c37a21743
Merge pull request #16735 from zmw12306/babel_nonzeroMBZ
babeld: Add MBZ and Reserved field checking
2025-04-11 08:42:45 -04:00
Donald Sharp f34ee05f8b
Merge pull request #18633 from y-bharath14/srib-tests-v11
tests: Fix potential issues in mcast-tester.py
2025-04-11 08:41:02 -04:00
Donald Sharp 01085bfbec
Merge pull request #18635 from opensourcerouting/support_bundle_ns
tools: Add pathspace option to generate_support_bundle
2025-04-11 08:40:34 -04:00
Louis Scalbert fe2a07aea4 isisd: fix asla memory leak
> ==713776==ERROR: LeakSanitizer: detected memory leaks
>
> Direct leak of 120 byte(s) in 1 object(s) allocated from:
>     #0 0x7fdfcbeb4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fdfcb86f8dd in qcalloc lib/memory.c:105
>     #2 0x55ce707739b6 in isis_tlvs_find_alloc_asla isisd/isis_tlvs.c:8500
>     #3 0x55ce7072fae0 in isis_link_params_update_asla isisd/isis_te.c:191
>     #4 0x55ce70733881 in isis_link_params_update isisd/isis_te.c:499
>     #5 0x55ce70693f2a in isis_circuit_up isisd/isis_circuit.c:776
>     #6 0x55ce7069a120 in isis_csm_state_change isisd/isis_csm.c:135
>     #7 0x55ce7068dd80 in isis_circuit_enable isisd/isis_circuit.c:79
>     #8 0x55ce70699346 in isis_ifp_create isisd/isis_circuit.c:1618
>     #9 0x7fdfcb81f47f in hook_call_if_real lib/if.c:55
>     #10 0x7fdfcb82056e in if_new_via_zapi lib/if.c:188
>     #11 0x7fdfcb9d17da in zclient_interface_add lib/zclient.c:2706
>     #12 0x7fdfcb9df842 in zclient_read lib/zclient.c:4843
>     #13 0x7fdfcb97798e in event_call lib/event.c:2011
>     #14 0x7fdfcb842ff1 in frr_run lib/libfrr.c:1216
>     #15 0x55ce7067cbf2 in main isisd/isis_main.c:360
>     #16 0x7fdfcb229d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
>
> Indirect leak of 8 byte(s) in 1 object(s) allocated from:
>     #0 0x7fdfcbeb4a57 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
>     #1 0x7fdfcb86f8dd in qcalloc lib/memory.c:105
>     #2 0x7fdfcb79a7b7 in admin_group_init lib/admin_group.c:186
>     #3 0x55ce707739ca in isis_tlvs_find_alloc_asla isisd/isis_tlvs.c:8501
>     #4 0x55ce7072fae0 in isis_link_params_update_asla isisd/isis_te.c:191
>     #5 0x55ce70733881 in isis_link_params_update isisd/isis_te.c:499
>     #6 0x55ce70693f2a in isis_circuit_up isisd/isis_circuit.c:776
>     #7 0x55ce7069a120 in isis_csm_state_change isisd/isis_csm.c:135
>     #8 0x55ce7068dd80 in isis_circuit_enable isisd/isis_circuit.c:79
>     #9 0x55ce70699346 in isis_ifp_create isisd/isis_circuit.c:1618
>     #10 0x7fdfcb81f47f in hook_call_if_real lib/if.c:55
>     #11 0x7fdfcb82056e in if_new_via_zapi lib/if.c:188
>     #12 0x7fdfcb9d17da in zclient_interface_add lib/zclient.c:2706
>     #13 0x7fdfcb9df842 in zclient_read lib/zclient.c:4843
>     #14 0x7fdfcb97798e in event_call lib/event.c:2011
>     #15 0x7fdfcb842ff1 in frr_run lib/libfrr.c:1216
>     #16 0x55ce7067cbf2 in main isisd/isis_main.c:360
>     #17 0x7fdfcb229d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58

PR: 95719
Fixes: 5749ac83a8 ("isisd: add ASLA support")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2025-04-11 09:57:18 +02:00
Philippe Guibert 27fa9ac4db lib, staticd, isisd: add B6.Encaps codepoint extensions
Add codepoint extensions for END.B6.Encaps instruction.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2025-04-11 09:36:29 +02:00
Donald Sharp 6299a89371 zebra: Add ability to dump routes received from fpm_listener
The fpm_listener currently has no ability to store the list
of prefixes that it has received.  Modify the code to store
the prefixes in a typesafe RB Tree.  Additionally modify
the code such that when a SIGUSR1 is received to dump
the routes out.  If the operator specifies a -z <filename>
then write the routes to that file.  It will overwrite
the last version of the file written.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2025-04-10 20:01:39 -04:00
Donald Sharp ef580f0e80 zebra: modify fpm_listener to display data about nhgs
Currently the fpm_listener completely ignores NHG's.
Let's start dumping some data about the nexthop groups:

[2025-04-10 16:55:12.939235306] FPM message - Type: 1, Length 52
[2025-04-10 16:55:12.939254252] Nexthop Group ID: 9, Protocol: Zebra(11), Contains 1 nexthops, Family: 2, Scope: 0
[2025-04-10 16:55:12.939260564] FPM message - Type: 1, Length 52
[2025-04-10 16:55:12.939263990] Nexthop Group ID: 10, Protocol: Zebra(11), Contains 1 nexthops, Family: 2, Scope: 0
[2025-04-10 16:55:12.939268659] FPM message - Type: 1, Length 56
[2025-04-10 16:55:12.939271635] Nexthop Group ID: 8, Protocol: Zebra(11), Contains 2 nexthops, Family: 0, Scope: 0

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2025-04-10 17:14:38 -04:00
Donatas Abraitis dc37bff8c0
Merge pull request #18376 from pguibert6WIND/show_bgp_neighbor_counter_tx
bgpd: fix add prefix sent in 'show bgp neighbor'
2025-04-10 19:38:59 +03:00
Donatas Abraitis cf351d6d05
Merge pull request #18611 from pguibert6WIND/bgp_usid
bgpd: add usid behavior for bgp srv6 instructions
2025-04-10 19:34:44 +03:00
Jafar Al-Gharaibeh fc3e1ec15f
Merge pull request #18472 from zmw12306/Update-TLV
babeld: Add input validation for update TLV.
2025-04-10 09:59:13 -05:00
Andrii Melnychenko 887bbf91fe docker/ubuntu-ci: Added iptables to the docker
The test "tests/topotests/ldp_establish_hello_topo1/test_establish_hello_topo1.py"
uses iptables to count the LDP packets.

Signed-off-by: Andrii Melnychenko <a.melnychenko@vyos.io>
2025-04-10 16:57:41 +02:00
Jafar Al-Gharaibeh 2355683c72
Merge pull request #18548 from zmw12306/request_subtlv_type
babeld: fix incorrect type assignment in parse_request_subtlv
2025-04-10 09:56:14 -05:00