-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bgpd: Fix bgp core with a possible Intf delete (backport #17624) #17628
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Although trigger unknown, based on the backtrace in one of the internal testing, we do see some delete in the Intf where we can have the peer ifp pointer null and we try to dereference it while trying to install the route leading to a crash Skip updating the ifindex in such cases and since the nexthop is not properly updated, BGP skips sending it to zebra. BackTrace: 0 0x00007faef05e7ebc in ?? () from /lib/x86_64-linux-gnu/libc.so.6 1 0x00007faef0598fb2 in raise () from /lib/x86_64-linux-gnu/libc.so.6 2 0x00007faef09900dc in core_handler (signo=11, siginfo=0x7ffdde8cb4b0, context=<optimized out>) at lib/sigevent.c:274 3 <signal handler called> 4 0x00005560aad4b7d8 in update_ipv6nh_for_route_install (api_nh=0x7ffdde8cbe94, is_evpn=false, best_pi=0x5560b21187d0, pi=0x5560b21187d0, ifindex=0, nexthop=0x5560b03cb0dc, nh_bgp=0x5560ace04df0, nh_othervrf=0) at bgpd/bgp_zebra.c:1273 5 bgp_zebra_announce_actual (dest=dest@entry=0x5560afcfa950, info=0x5560b21187d0, bgp=0x5560ace04df0) at bgpd/bgp_zebra.c:1521 6 0x00005560aad4bc85 in bgp_handle_route_announcements_to_zebra (e=<optimized out>) at bgpd/bgp_zebra.c:1896 7 0x00007faef09a1c0d in thread_call (thread=thread@entry=0x7ffdde8d7580) at lib/thread.c:2008 8 0x00007faef095a598 in frr_run (master=0x5560ac7e5190) at lib/libfrr.c:1223 9 0x00005560aac65db6 in main (argc=<optimized out>, argv=<optimized out>) at bgpd/bgp_main.c:557 (gdb) f 4 4 0x00005560aad4b7d8 in update_ipv6nh_for_route_install (api_nh=0x7ffdde8cbe94, is_evpn=false, best_pi=0x5560b21187d0, pi=0x5560b21187d0, ifindex=0, nexthop=0x5560b03cb0dc, nh_bgp=0x5560ace04df0, nh_othervrf=0) at bgpd/bgp_zebra.c:1273 1273 in bgpd/bgp_zebra.c (gdb) p pi->peer->ifp $26 = (struct interface *) 0x0 Ticket :#4203904 Signed-off-by: Rajasekar Raja <rajasekarr@nvidia.com> (cherry picked from commit 9b0b9282d317a9aeab36d9a8b08a35fe9a172c4b) # Conflicts: # .clang-format # .git-blame-ignore-revs # .github/workflows/conflicts.yml # .github/workflows/freeze.yml # .gitignore # Makefile.am # alpine/APKBUILD.in # babeld/babel_interface.c # babeld/babel_interface.h # babeld/babel_main.c # babeld/babeld.c # babeld/babeld.h # babeld/kernel.c # babeld/message.c # babeld/neighbour.c # babeld/route.c # babeld/util.c # babeld/util.h # bfdd/bfd.c # bfdd/bfd.h # bfdd/bfd_packet.c # bfdd/bfdd.c # bfdd/bfdd_cli.c # bfdd/bfdd_nb_config.c # bfdd/bfdd_vty.c # bfdd/dplane.c # bfdd/ptm_adapter.c # bfdd/subdir.am # bgpd/bgp_addpath.c # bgpd/bgp_addpath.h # bgpd/bgp_advertise.c # bgpd/bgp_advertise.h # bgpd/bgp_aspath.c # bgpd/bgp_aspath.h # bgpd/bgp_attr.c # bgpd/bgp_attr.h # bgpd/bgp_attr_evpn.c # bgpd/bgp_attr_evpn.h # bgpd/bgp_bfd.c # bgpd/bgp_bmp.c # bgpd/bgp_bmp.h # bgpd/bgp_btoa.c # bgpd/bgp_clist.c # bgpd/bgp_clist.h # bgpd/bgp_community.c # bgpd/bgp_community_alias.c # bgpd/bgp_community_alias.h # bgpd/bgp_conditional_adv.c # bgpd/bgp_damp.c # bgpd/bgp_damp.h # bgpd/bgp_debug.c # bgpd/bgp_debug.h # bgpd/bgp_dump.c # bgpd/bgp_ecommunity.c # bgpd/bgp_ecommunity.h # bgpd/bgp_evpn.c # bgpd/bgp_evpn.h # bgpd/bgp_evpn_mh.c # bgpd/bgp_evpn_mh.h # bgpd/bgp_evpn_private.h # bgpd/bgp_evpn_vty.c # bgpd/bgp_filter.c # bgpd/bgp_filter.h # bgpd/bgp_flowspec.c # bgpd/bgp_flowspec_util.c # bgpd/bgp_flowspec_vty.c # bgpd/bgp_fsm.c # bgpd/bgp_fsm.h # bgpd/bgp_io.c # bgpd/bgp_label.c # bgpd/bgp_label.h # bgpd/bgp_labelpool.c # bgpd/bgp_mac.c # bgpd/bgp_main.c # bgpd/bgp_memory.c # bgpd/bgp_memory.h # bgpd/bgp_mpath.c # bgpd/bgp_mpath.h # bgpd/bgp_mplsvpn.c # bgpd/bgp_mplsvpn.h # bgpd/bgp_mplsvpn_snmp.c # bgpd/bgp_network.c # bgpd/bgp_network.h # bgpd/bgp_nexthop.c # bgpd/bgp_nexthop.h # bgpd/bgp_nht.c # bgpd/bgp_nht.h # bgpd/bgp_open.c # bgpd/bgp_open.h # bgpd/bgp_packet.c # bgpd/bgp_packet.h # bgpd/bgp_pbr.c # bgpd/bgp_pbr.h # bgpd/bgp_rd.h # bgpd/bgp_route.c # bgpd/bgp_route.h # bgpd/bgp_routemap.c # bgpd/bgp_routemap_nb.c # bgpd/bgp_routemap_nb.h # bgpd/bgp_routemap_nb_config.c # bgpd/bgp_rpki.c # bgpd/bgp_rpki.h # bgpd/bgp_script.h # bgpd/bgp_snmp.c # bgpd/bgp_snmp.h # bgpd/bgp_snmp_bgp4.c # bgpd/bgp_snmp_bgp4.h # bgpd/bgp_snmp_bgp4v2.c # bgpd/bgp_snmp_bgp4v2.h # bgpd/bgp_table.c # bgpd/bgp_table.h # bgpd/bgp_trace.c # bgpd/bgp_trace.h # bgpd/bgp_updgrp.c # bgpd/bgp_updgrp.h # bgpd/bgp_updgrp_adv.c # bgpd/bgp_updgrp_packet.c # bgpd/bgp_vpn.c # bgpd/bgp_vty.c # bgpd/bgp_vty.h # bgpd/bgp_zebra.c # bgpd/bgp_zebra.h # bgpd/bgpd.c # bgpd/bgpd.h # bgpd/rfapi/bgp_rfapi_cfg.c # bgpd/rfapi/rfapi.c # bgpd/rfapi/rfapi_import.c # bgpd/rfapi/rfapi_import.h # bgpd/rfapi/rfapi_monitor.c # bgpd/rfapi/rfapi_rib.c # bgpd/rfapi/rfapi_vty.c # bgpd/rfapi/vnc_export_bgp.c # bgpd/rfapi/vnc_import_bgp.c # bgpd/rfapi/vnc_zebra.c # bgpd/subdir.am # buildtest.sh # configure.ac # debian/changelog # debian/control # debian/copyright # debian/frr.install # debian/frr.pam # debian/frr.postinst # debian/rules # doc/developer/.readthedocs.yaml # doc/developer/bgpd.rst # doc/developer/building-docker.rst # doc/developer/building-frr-for-archlinux.rst # doc/developer/building-frr-for-centos6.rst # doc/developer/building-frr-for-centos7.rst # doc/developer/building-frr-for-centos8.rst # doc/developer/building-frr-for-debian12.rst # doc/developer/building-frr-for-debian8.rst # doc/developer/building-frr-for-debian9.rst # doc/developer/building-frr-for-freebsd10.rst # doc/developer/building-frr-for-freebsd11.rst # doc/developer/building-frr-for-freebsd13.rst # doc/developer/building-frr-for-freebsd9.rst # doc/developer/building-frr-for-netbsd6.rst # doc/developer/building-frr-for-netbsd7.rst # doc/developer/building-frr-for-openbsd6.rst # doc/developer/building-frr-for-opensuse.rst # doc/developer/building-frr-for-ubuntu1404.rst # doc/developer/building-frr-for-ubuntu1604.rst # doc/developer/building-frr-for-ubuntu1804.rst # doc/developer/building-frr-for-ubuntu2004.rst # doc/developer/building-frr-for-ubuntu2204.rst # doc/developer/building-libyang.rst # doc/developer/building.rst # doc/developer/checkpatch.rst # doc/developer/conf.py # doc/developer/cross-compiling.rst # doc/developer/frr-release-procedure.rst # doc/developer/include-compile.rst # doc/developer/logging.rst # doc/developer/mgmtd-dev.rst # doc/developer/northbound/advanced-topics.rst # doc/developer/northbound/architecture.rst # doc/developer/northbound/demos.rst # doc/developer/northbound/links.rst # doc/developer/northbound/northbound.rst # doc/developer/northbound/operational-data-rpcs-and-notifications.rst # doc/developer/northbound/plugins-sysrepo.rst # doc/developer/northbound/ppr-basic-test-topology.rst # doc/developer/northbound/ppr-mpls-basic-test-topology.rst # doc/developer/northbound/retrofitting-configuration-commands.rst # doc/developer/northbound/transactional-cli.rst # doc/developer/northbound/yang-module-translator.rst # doc/developer/northbound/yang-tools.rst # doc/developer/ospf.rst # doc/developer/packaging-debian.rst # doc/developer/packaging-redhat.rst # doc/developer/process-architecture.rst # doc/developer/rcu.rst # doc/developer/scripting.rst # doc/developer/static-linking.rst # doc/developer/subdir.am # doc/developer/topotests-markers.rst # doc/developer/topotests.rst # doc/developer/workflow.rst # doc/developer/zebra.rst # doc/manpages/bfd-options.rst # doc/manpages/conf.py # doc/user/.readthedocs.yaml # doc/user/babeld.rst # doc/user/basic.rst # doc/user/bfd.rst # doc/user/bgp.rst # doc/user/bmp.rst # doc/user/conf.py # doc/user/eigrpd.rst # doc/user/evpn.rst # doc/user/filter.rst # doc/user/index.rst # doc/user/installation.rst # doc/user/isisd.rst # doc/user/ldpd.rst # doc/user/mgmtd.rst # doc/user/nhrpd.rst # doc/user/ospf6d.rst # doc/user/ospf_fundamentals.rst # doc/user/ospfd.rst # doc/user/pathd.rst # doc/user/pbr.rst # doc/user/pim.rst # doc/user/pimv6.rst # doc/user/ripd.rst # doc/user/ripngd.rst # doc/user/routemap.rst # doc/user/rpki.rst # doc/user/sharp.rst # doc/user/snmptrap.rst # doc/user/static.rst # doc/user/subdir.am # doc/user/vrrp.rst # doc/user/vtysh.rst # doc/user/zebra.rst # docker/alpine/Dockerfile # docker/alpine/libyang/APKBUILD # docker/debian/Dockerfile # docker/ubi8-minimal/Dockerfile # docker/ubuntu-ci/Dockerfile # docker/ubuntu-ci/docker-start # docker/ubuntu20-ci/README.md # docker/ubuntu22-ci/README.md # eigrpd/eigrp_cli.c # eigrpd/eigrp_const.h # eigrpd/eigrp_interface.c # eigrpd/eigrp_main.c # eigrpd/eigrp_network.c # eigrpd/eigrp_northbound.c # eigrpd/eigrp_routemap.c # eigrpd/eigrp_routemap.h # eigrpd/eigrp_zebra.c # fpm/fpm.h # fpm/fpm.proto # fpm/fpm_pb.c # fpm/fpm_pb.h # gdb/lib.txt # grpc/subdir.am # include/subdir.am # isisd/isis_adjacency.c # isisd/isis_adjacency.h # isisd/isis_affinitymap.c # isisd/isis_bpf.c # isisd/isis_circuit.c # isisd/isis_cli.c # isisd/isis_events.c # isisd/isis_lfa.c # isisd/isis_lfa.h # isisd/isis_lsp.c # isisd/isis_lsp.h # isisd/isis_main.c # isisd/isis_misc.c # isisd/isis_mt.c # isisd/isis_nb_config.c # isisd/isis_nb_state.c # isisd/isis_pdu.c # isisd/isis_route.c # isisd/isis_route.h # isisd/isis_snmp.c # isisd/isis_spf.c # isisd/isis_spf.h # isisd/isis_sr.c # isisd/isis_sr.h # isisd/isis_srv6.c # isisd/isis_srv6.h # isisd/isis_te.c # isisd/isis_te.h # isisd/isis_tlvs.c # isisd/isis_vty_fabricd.c # isisd/isis_zebra.c # isisd/isis_zebra.h # isisd/isisd.c # isisd/isisd.h # ldpd/control.c # ldpd/init.c # ldpd/lde.c # ldpd/ldp.h # ldpd/ldp_vty_exec.c # ldpd/ldp_zebra.c # ldpd/ldpd.c # ldpd/ldpd.h # ldpd/ldpe.c # ldpd/log.h # ldpd/neighbor.c # ldpd/socket.c # ldpd/subdir.am # lib/.gitignore # lib/affinitymap.c # lib/affinitymap.h # lib/affinitymap_cli.c # lib/affinitymap_northbound.c # lib/agentx.c # lib/atomlist.h # lib/base64.c # lib/base64.h # lib/bfd.c # lib/bfd.h # lib/bitfield.h # lib/buffer.h # lib/checksum.c # lib/checksum.h # lib/command.c # lib/command.h # lib/command_graph.c # lib/command_graph.h # lib/command_match.c # lib/command_py.c # lib/compiler.h # lib/csv.c # lib/darr.c # lib/darr.h # lib/debug.c # lib/debug.h # lib/defun_lex.l # lib/distribute.c # lib/distribute.h # lib/elf_py.c # lib/event.c # lib/explicit_bzero.c # lib/filter.c # lib/filter.h # lib/filter_cli.c # lib/filter_nb.c # lib/flex_algo.c # lib/flex_algo.h # lib/frr_pthread.c # lib/frr_pthread.h # lib/frr_zmq.c # lib/frrcu.c # lib/frrcu.h # lib/frrevent.h # lib/frrlua.c # lib/frrlua.h # lib/frrscript.c # lib/frrscript.h # lib/frrstr.c # lib/frrstr.h # lib/grammar_sandbox_main.c # lib/hash.c # lib/hash.h # lib/hook.h # lib/if.c # lib/if.h # lib/if_rmap.c # lib/imsg-buffer.c # lib/ipaddr.h # lib/jhash.c # lib/keychain.c # lib/keychain.h # lib/ldp_sync.h # lib/lib_errors.c # lib/lib_errors.h # lib/libfrr.c # lib/libfrr.h # lib/libfrr_trace.c # lib/libospf.h # lib/link_state.c # lib/link_state.h # lib/linklist.h # lib/log.c # lib/log_vty.c # lib/memory.c # lib/memory.h # lib/mgmt.proto # lib/mgmt_be_client.c # lib/mgmt_be_client.h # lib/mgmt_fe_client.c # lib/mgmt_fe_client.h # lib/mgmt_msg.c # lib/mgmt_msg.h # lib/mlag.c # lib/mlag.h # lib/module.c # lib/module.h # lib/netns_linux.c # lib/netns_other.c # lib/network.c # lib/nexthop.c # lib/nexthop.h # lib/nexthop_group.c # lib/nexthop_group.h # lib/northbound.c # lib/northbound.h # lib/northbound_cli.c # lib/northbound_cli.h # lib/northbound_grpc.cpp # lib/northbound_sysrepo.c # lib/ntop.c # lib/openbsd-queue.h # lib/openbsd-tree.h # lib/pbr.h # lib/pid_output.c # lib/plist.c # lib/prefix.c # lib/prefix.h # lib/printf/README # lib/printf/printf-pos.c # lib/printf/printflocal.h # lib/printf/vfprintf.c # lib/privs.c # lib/ptm_lib.c # lib/pullwr.c # lib/resolver.c # lib/resolver.h # lib/route_types.txt # lib/routemap.c # lib/routemap.h # lib/routemap_cli.c # lib/routemap_northbound.c # lib/routing_nb.c # lib/routing_nb.h # lib/routing_nb_config.c # lib/seqlock.c # lib/sigevent.c # lib/smux.h # lib/sockopt.c # lib/sockopt.h # lib/sockunion.c # lib/sockunion.h # lib/srv6.c # lib/srv6.h # lib/stream.c # lib/stream.h # lib/subdir.am # lib/systemd.c # lib/table.c # lib/table.h # lib/termtable.c # lib/termtable.h # lib/typerb.h # lib/typesafe.h # lib/vector.c # lib/vector.h # lib/vrf.c # lib/vrf.h # lib/vty.c # lib/vty.h # lib/wheel.c # lib/wheel.h # lib/workqueue.c # lib/workqueue.h # lib/yang.c # lib/yang.h # lib/yang_translator.c # lib/yang_wrappers.c # lib/yang_wrappers.h # lib/zclient.c # lib/zclient.h # lib/zebra.h # lib/zlog.c # lib/zlog.h # lib/zlog_5424.c # lib/zlog_5424_cli.c # lib/zlog_live.c # lib/zlog_targets.c # m4/.gitignore # mgmtd/.gitignore # mgmtd/mgmt.c # mgmtd/mgmt.h # mgmtd/mgmt_be_adapter.c # mgmtd/mgmt_be_adapter.h # mgmtd/mgmt_ds.c # mgmtd/mgmt_ds.h # mgmtd/mgmt_fe_adapter.c # mgmtd/mgmt_fe_adapter.h # mgmtd/mgmt_history.c # mgmtd/mgmt_main.c # mgmtd/mgmt_memory.c # mgmtd/mgmt_memory.h # mgmtd/mgmt_txn.c # mgmtd/mgmt_txn.h # mgmtd/mgmt_vty.c # mgmtd/subdir.am # mlag/subdir.am # nhrpd/debug.h # nhrpd/linux.c # nhrpd/netlink.h # nhrpd/netlink_arp.c # nhrpd/nhrp_interface.c # nhrpd/nhrp_main.c # nhrpd/nhrp_multicast.c # nhrpd/nhrp_nhs.c # nhrpd/nhrp_packet.c # nhrpd/nhrp_peer.c # nhrpd/nhrp_protocol.h # nhrpd/nhrp_route.c # nhrpd/nhrp_shortcut.c # nhrpd/nhrp_vc.c # nhrpd/nhrp_vty.c # nhrpd/nhrpd.h # nhrpd/os.h # nhrpd/reqid.c # nhrpd/subdir.am # nhrpd/vici.c # nhrpd/vici.h # ospf6d/ospf6_abr.c # ospf6d/ospf6_abr.h # ospf6d/ospf6_area.c # ospf6d/ospf6_asbr.c # ospf6d/ospf6_asbr.h # ospf6d/ospf6_auth_trailer.c # ospf6d/ospf6_auth_trailer.h # ospf6d/ospf6_flood.c # ospf6d/ospf6_gr.c # ospf6d/ospf6_gr.h # ospf6d/ospf6_gr_helper.c # ospf6d/ospf6_interface.c # ospf6d/ospf6_interface.h # ospf6d/ospf6_intra.c # ospf6d/ospf6_intra.h # ospf6d/ospf6_lsa.c # ospf6d/ospf6_lsa.h # ospf6d/ospf6_lsdb.c # ospf6d/ospf6_main.c # ospf6d/ospf6_message.c # ospf6d/ospf6_message.h # ospf6d/ospf6_neighbor.c # ospf6d/ospf6_neighbor.h # ospf6d/ospf6_nssa.c # ospf6d/ospf6_proto.h # ospf6d/ospf6_route.c # ospf6d/ospf6_route.h # ospf6d/ospf6_snmp.c # ospf6d/ospf6_spf.c # ospf6d/ospf6_top.c # ospf6d/ospf6_top.h # ospf6d/ospf6_zebra.c # ospf6d/ospf6d.c # ospf6d/subdir.am # ospfclient/subdir.am # ospfd/ospf_abr.c # ospfd/ospf_api.h # ospfd/ospf_apiserver.c # ospfd/ospf_apiserver.h # ospfd/ospf_asbr.c # ospfd/ospf_asbr.h # ospfd/ospf_ase.c # ospfd/ospf_auth.c # ospfd/ospf_ext.c # ospfd/ospf_flood.c # ospfd/ospf_flood.h # ospfd/ospf_gr.c # ospfd/ospf_interface.c # ospfd/ospf_interface.h # ospfd/ospf_ism.c # ospfd/ospf_ldp_sync.c # ospfd/ospf_lsa.c # ospfd/ospf_lsa.h # ospfd/ospf_lsdb.c # ospfd/ospf_lsdb.h # ospfd/ospf_main.c # ospfd/ospf_memory.c # ospfd/ospf_memory.h # ospfd/ospf_neighbor.c # ospfd/ospf_neighbor.h # ospfd/ospf_nsm.c # ospfd/ospf_opaque.c # ospfd/ospf_opaque.h # ospfd/ospf_packet.c # ospfd/ospf_packet.h # ospfd/ospf_ri.c # ospfd/ospf_snmp.c # ospfd/ospf_sr.c # ospfd/ospf_te.c # ospfd/ospf_vty.c # ospfd/ospf_zebra.c # ospfd/ospf_zebra.h # ospfd/ospfd.c # ospfd/ospfd.h # pathd/path_cli.c # pathd/path_main.c # pathd/path_nb.c # pathd/path_nb_config.c # pathd/path_pcep.c # pathd/path_pcep.h # pathd/path_pcep_cli.c # pathd/path_ted.c # pathd/path_ted.h # pathd/path_zebra.c # pathd/pathd.c # pathd/pathd.h # pbrd/pbr_debug.c # pbrd/pbr_debug.h # pbrd/pbr_main.c # pbrd/pbr_nht.c # pbrd/pbr_nht.h # pbrd/pbr_vrf.c # pbrd/pbr_vty.c # pbrd/pbr_zebra.c # pbrd/pbr_zebra.h # pceplib/pcep_session_logic_counters.c # pceplib/pcep_socket_comm_mock.c # pceplib/pcep_utils_counters.c # pceplib/pcep_utils_counters.h # pceplib/test/pcep_msg_messages_test.c # pceplib/test/pcep_msg_object_error_types_test.c # pceplib/test/pcep_msg_objects_test.c # pceplib/test/pcep_msg_tlvs_test.c # pceplib/test/pcep_msg_tools_test.c # pceplib/test/pcep_pcc_api_test.c # pceplib/test/pcep_utils_counters_test.c # pimd/pim6_cmd.c # pimd/pim6_cmd.h # pimd/pim6_main.c # pimd/pim6_mld.c # pimd/pim_addr.h # pimd/pim_bsm.c # pimd/pim_bsm.h # pimd/pim_cmd.c # pimd/pim_cmd.h # pimd/pim_cmd_common.c # pimd/pim_cmd_common.h # pimd/pim_hello.c # pimd/pim_iface.c # pimd/pim_iface.h # pimd/pim_ifchannel.c # pimd/pim_igmp.c # pimd/pim_igmp.h # pimd/pim_igmp_mtrace.c # pimd/pim_igmpv2.c # pimd/pim_igmpv3.c # pimd/pim_instance.c # pimd/pim_instance.h # pimd/pim_join.c # pimd/pim_main.c # pimd/pim_memory.c # pimd/pim_memory.h # pimd/pim_mlag.c # pimd/pim_mroute.c # pimd/pim_mroute.h # pimd/pim_msdp.c # pimd/pim_msdp.h # pimd/pim_msdp_packet.c # pimd/pim_msdp_packet.h # pimd/pim_msdp_socket.c # pimd/pim_msdp_socket.h # pimd/pim_msg.c # pimd/pim_msg.h # pimd/pim_nb.c # pimd/pim_nb.h # pimd/pim_nb_config.c # pimd/pim_nht.c # pimd/pim_nht.h # pimd/pim_pim.c # pimd/pim_pim.h # pimd/pim_rp.c # pimd/pim_rp.h # pimd/pim_rpf.c # pimd/pim_sock.c # pimd/pim_sock.h # pimd/pim_tib.c # pimd/pim_tib.h # pimd/pim_tlv.c # pimd/pim_upstream.c # pimd/pim_util.c # pimd/pim_util.h # pimd/pim_vty.c # pimd/pim_vxlan.c # pimd/pim_vxlan.h # pimd/pim_zebra.c # pimd/pim_zlookup.c # pimd/pimd.c # pimd/pimd.h # pimd/subdir.am # pkgsrc/bgpd.sh.in # pkgsrc/eigrpd.sh.in # pkgsrc/mgmtd.sh.in # pkgsrc/ospf6d.sh.in # pkgsrc/ospfd.sh.in # pkgsrc/ripd.sh.in # pkgsrc/ripngd.sh.in # pkgsrc/zebra.sh.in # python/clippy/__init__.py # python/clippy/elf.py # python/firstheader.py # python/makefile.py # python/xref2vtysh.py # python/xrelfo.py # qpb/qpb.c # qpb/qpb.h # redhat/frr.logrotate # redhat/frr.pam # redhat/frr.spec.in # ripd/rip_cli.c # ripd/rip_interface.c # ripd/rip_main.c # ripd/rip_nb.c # ripd/rip_nb.h # ripd/rip_nb_config.c # ripd/rip_nb_rpcs.c # ripd/rip_peer.c # ripd/rip_routemap.c # ripd/rip_snmp.c # ripd/rip_zebra.c # ripd/ripd.c # ripd/ripd.h # ripd/subdir.am # ripngd/ripng_cli.c # ripngd/ripng_interface.c # ripngd/ripng_main.c # ripngd/ripng_nb.c # ripngd/ripng_nb.h # ripngd/ripng_nb_config.c # ripngd/ripng_nb_rpcs.c # ripngd/ripng_peer.c # ripngd/ripng_routemap.c # ripngd/ripngd.c # ripngd/ripngd.h # ripngd/subdir.am # sharpd/sharp_logpump.c # sharpd/sharp_main.c # sharpd/sharp_nht.c # sharpd/sharp_nht.h # sharpd/sharp_vty.c # sharpd/sharp_zebra.c # sharpd/sharp_zebra.h # snapcraft/scripts/bfdd-service # snapcraft/snapcraft.yaml.in # staticd/static_bfd.c # staticd/static_debug.c # staticd/static_debug.h # staticd/static_main.c # staticd/static_nb.c # staticd/static_nb.h # staticd/static_nb_config.c # staticd/static_nht.c # staticd/static_routes.c # staticd/static_routes.h # staticd/static_vrf.c # staticd/static_vrf.h # staticd/static_vty.c # staticd/static_vty.h # staticd/static_zebra.c # tests/bgpd/subdir.am # tests/bgpd/test_aspath.c # tests/bgpd/test_capability.c # tests/bgpd/test_mp_attr.c # tests/bgpd/test_packet.c # tests/bgpd/test_peer_attr.c # tests/bgpd/test_peer_attr.py # tests/helpers/c/main.c # tests/helpers/c/prng.c # tests/isisd/test_fuzz_isis_tlv.c # tests/isisd/test_fuzz_isis_tlv_tests.h.gz # tests/isisd/test_isis_spf.c # tests/isisd/test_isis_spf.refout # tests/lib/cli/common_cli.c # tests/lib/cli/test_cli.refout.in # tests/lib/cli/test_commands.c # tests/lib/northbound/test_oper_data.c # tests/lib/northbound/test_oper_data.in # tests/lib/northbound/test_oper_data.refout # tests/lib/subdir.am # tests/lib/test_atomlist.c # tests/lib/test_darr.c # tests/lib/test_frrlua.c # tests/lib/test_frrscript.c # tests/lib/test_grpc.cpp # tests/lib/test_heavy_wq.c # tests/lib/test_printfrr.c # tests/lib/test_privs.c # tests/lib/test_seqlock.c # tests/lib/test_ttable.c # tests/lib/test_typelist.c # tests/lib/test_zmq.c # tests/ospf6d/test_lsdb.c # tests/ospfd/test_ospf_spf.c # tests/topotests/Dockerfile # tests/topotests/all_protocol_startup/r1/ip_nht.ref # tests/topotests/all_protocol_startup/r1/ipv4_routes.ref # tests/topotests/all_protocol_startup/r1/ipv6_nht.ref # tests/topotests/all_protocol_startup/r1/ipv6_routes.ref # tests/topotests/all_protocol_startup/r1/ospf6d.conf # tests/topotests/all_protocol_startup/r1/show_bgp_ipv4-post4.1.ref # tests/topotests/all_protocol_startup/r1/show_bgp_ipv4-post5.0.ref # tests/topotests/all_protocol_startup/r1/show_bgp_ipv4-post6.1.ref # tests/topotests/all_protocol_startup/r1/show_bgp_ipv4.ref # tests/topotests/all_protocol_startup/r1/show_bgp_ipv6-post4.1.ref # tests/topotests/all_protocol_startup/r1/show_bgp_ipv6.ref # tests/topotests/all_protocol_startup/r1/show_bgp_ipv6_post6.1.ref # tests/topotests/all_protocol_startup/r1/show_bgp_ipv6_summary.ref # tests/topotests/all_protocol_startup/r1/show_ip_bgp_summary.ref # tests/topotests/all_protocol_startup/r1/show_ip_ospf_interface.ref # tests/topotests/all_protocol_startup/r1/show_route_map.ref # tests/topotests/all_protocol_startup/test_all_protocol_startup.py # tests/topotests/analyze.py # tests/topotests/babel_topo1/test_babel_topo1.py # tests/topotests/bfd_bgp_cbit_topo3/r1/bgp_ipv6_routes_down.json # tests/topotests/bfd_bgp_cbit_topo3/r1/bgpd.conf # tests/topotests/bfd_bgp_cbit_topo3/r1/ipv6_routes.json # tests/topotests/bfd_bgp_cbit_topo3/r3/bgpd.conf # tests/topotests/bfd_bgp_cbit_topo3/test_bfd_bgp_cbit_topo3.py # tests/topotests/bfd_isis_topo1/rt1/step1/show_ipv6_route.ref # tests/topotests/bfd_isis_topo1/rt1/step3/show_ipv6_route_healthy.ref # tests/topotests/bfd_isis_topo1/rt1/step3/show_ipv6_route_rt2_down.ref # tests/topotests/bfd_isis_topo1/rt1/step3/show_ipv6_route_rt3_down.ref # tests/topotests/bfd_isis_topo1/rt1/zebra.conf # tests/topotests/bfd_isis_topo1/rt2/zebra.conf # tests/topotests/bfd_isis_topo1/rt3/zebra.conf # tests/topotests/bfd_isis_topo1/rt4/zebra.conf # tests/topotests/bfd_isis_topo1/rt5/zebra.conf # tests/topotests/bfd_ospf_topo1/rt1/ospf6d.conf # tests/topotests/bfd_ospf_topo1/rt1/step1/show_ipv6_route.ref # tests/topotests/bfd_ospf_topo1/rt1/step3/show_ipv6_route_healthy.ref # tests/topotests/bfd_ospf_topo1/rt1/step3/show_ipv6_route_rt2_down.ref # tests/topotests/bfd_ospf_topo1/rt1/step3/show_ipv6_route_rt3_down.ref # tests/topotests/bfd_ospf_topo1/rt1/zebra.conf # tests/topotests/bfd_ospf_topo1/rt2/ospf6d.conf # tests/topotests/bfd_ospf_topo1/rt2/zebra.conf # tests/topotests/bfd_ospf_topo1/rt3/ospf6d.conf # tests/topotests/bfd_ospf_topo1/rt3/zebra.conf # tests/topotests/bfd_ospf_topo1/rt4/ospf6d.conf # tests/topotests/bfd_ospf_topo1/rt4/zebra.conf # tests/topotests/bfd_ospf_topo1/rt5/ospf6d.conf # tests/topotests/bfd_ospf_topo1/rt5/zebra.conf # tests/topotests/bfd_ospf_topo1/test_bfd_ospf_topo1.py # tests/topotests/bfd_profiles_topo1/r2/bgpd.conf # tests/topotests/bfd_profiles_topo1/r3/bgpd.conf # tests/topotests/bfd_profiles_topo1/r4/bgpd.conf # tests/topotests/bfd_profiles_topo1/r4/ospf6d.conf # tests/topotests/bfd_profiles_topo1/r5/ospf6d.conf # tests/topotests/bfd_topo3/test_bfd_topo3.py # tests/topotests/bfd_vrf_topo1/test_bfd_vrf_topo1.py # tests/topotests/bfd_vrflite_topo1/test_bfd_vrflite_topo1.py # tests/topotests/bgp_accept_own/pe1/bgpd.conf # tests/topotests/bgp_accept_own/test_bgp_accept_own.py # tests/topotests/bgp_addpath_best_selected/test_bgp_addpath_best_selected.py # tests/topotests/bgp_aggregate_address_matching_med/test_bgp_aggregate_address_matching_med.py # tests/topotests/bgp_aggregate_address_origin/test_bgp_aggregate-address_origin.py # tests/topotests/bgp_aggregate_address_route_map/test_bgp_aggregate-address_route-map.py # tests/topotests/bgp_aggregate_address_topo1/r1/bgpd.conf # tests/topotests/bgp_aggregate_address_topo1/r2/bgpd.conf # tests/topotests/bgp_aggregator_zero/r1/bgpd.conf # tests/topotests/bgp_aggregator_zero/test_bgp_aggregator_zero.py # tests/topotests/bgp_aigp/r1/bgpd.conf # tests/topotests/bgp_aigp/r1/zebra.conf # tests/topotests/bgp_aigp/test_bgp_aigp.py # tests/topotests/bgp_as_allow_in/test_bgp_as_allow_in.py # tests/topotests/bgp_as_override/test_bgp_as_override.py # tests/topotests/bgp_as_wide_bgp_identifier/test_bgp_as_wide_bgp_identifier.py # tests/topotests/bgp_asdot_regex/test_bgp_asdot_regex.py # tests/topotests/bgp_aspath_zero/r1/bgpd.conf # tests/topotests/bgp_aspath_zero/test_bgp_aspath_zero.py # tests/topotests/bgp_auth/bgp_auth_common.py # tests/topotests/bgp_auth/test_bgp_auth1.py # tests/topotests/bgp_auth/test_bgp_auth2.py # tests/topotests/bgp_auth/test_bgp_auth3.py # tests/topotests/bgp_auth/test_bgp_auth4.py # tests/topotests/bgp_basic_functionality_topo1/test_bgp_basic_functionality.py # tests/topotests/bgp_bfd_down_cease_notification/r1/bfdd.conf # tests/topotests/bgp_bfd_down_cease_notification/r1/bgpd.conf # tests/topotests/bgp_bfd_down_cease_notification/test_bgp_bfd_down_cease_notification.py # tests/topotests/bgp_blackhole_community/test_bgp_blackhole_community.py # tests/topotests/bgp_color_extcommunities/r1/bgpd.conf # tests/topotests/bgp_color_extcommunities/test_bgp_color_extcommunities.py # tests/topotests/bgp_comm_list_delete/test_bgp_comm-list_delete.py # tests/topotests/bgp_comm_list_match/test_bgp_comm_list_match.py # tests/topotests/bgp_communities_topo1/test_bgp_communities_topo2.py # tests/topotests/bgp_community_alias/test_bgp-community-alias.py # tests/topotests/bgp_community_change_update/test_bgp_community_change_update.py # tests/topotests/bgp_conditional_advertisement/test_bgp_conditional_advertisement.py # tests/topotests/bgp_conditional_advertisement_static_route/test_bgp_conditional_advertisement_static_route.py # tests/topotests/bgp_conditional_advertisement_track_peer/test_bgp_conditional_advertisement_track_peer.py # tests/topotests/bgp_confed1/r2/bgpd.conf # tests/topotests/bgp_confed1/test_bgp_confed1.py # tests/topotests/bgp_confederation_astype/test_bgp_confederation_astype.py # tests/topotests/bgp_default_afi_safi/test_bgp-default-afi-safi.py # tests/topotests/bgp_default_originate/test_bgp_default_originate_2links.py # tests/topotests/bgp_default_originate/test_bgp_default_originate_topo1_1.py # tests/topotests/bgp_default_originate/test_bgp_default_originate_topo1_2.py # tests/topotests/bgp_default_originate/test_bgp_default_originate_topo1_3.py # tests/topotests/bgp_default_originate/test_default_orginate_vrf.py # tests/topotests/bgp_default_originate/test_default_originate_conditional_routemap.py # tests/topotests/bgp_default_originate_timer/test_bgp_default_originate_timer.py # tests/topotests/bgp_default_originate_withdraw/test_bgp_default_originate_withdraw.py # tests/topotests/bgp_default_route/test_bgp_default-originate.py # tests/topotests/bgp_default_route_route_map_match/test_bgp_default-originate_route-map_match.py # tests/topotests/bgp_default_route_route_map_match2/test_bgp_default-originate_route-map_match2.py # tests/topotests/bgp_default_route_route_map_match_set/test_bgp_default-originate_route-map_match_set.py # tests/topotests/bgp_default_route_route_map_set/r1/bgpd.conf # tests/topotests/bgp_default_route_route_map_set/r1/zebra.conf # tests/topotests/bgp_default_route_route_map_set/r2/bgpd.conf # tests/topotests/bgp_default_route_route_map_set/r2/zebra.conf # tests/topotests/bgp_default_route_route_map_set/test_bgp_default-originate_route-map_set.py # tests/topotests/bgp_disable_addpath_rx/test_disable_addpath_rx.py # tests/topotests/bgp_distance_change/test_bgp_admin_dist.py # tests/topotests/bgp_distance_change/test_bgp_distance_change.py # tests/topotests/bgp_dont_capability_negotiate/test_bgp_dont_capability_negotiate.py # tests/topotests/bgp_dynamic_capability/r1/frr.conf # tests/topotests/bgp_dynamic_capability/r2/frr.conf # tests/topotests/bgp_dynamic_capability/test_bgp_dynamic_capability_graceful_restart.py # tests/topotests/bgp_dynamic_capability/test_bgp_dynamic_capability_role.py # tests/topotests/bgp_dynamic_capability/test_bgp_dynamic_capability_software_version.py # tests/topotests/bgp_ebgp_common_subnet_nexthop_unchanged/test_bgp-ebgp-common-subnet-nexthop-unchanged.py # tests/topotests/bgp_ebgp_requires_policy/test_bgp_ebgp_requires_policy.py # tests/topotests/bgp_ecmp_topo1/exabgp.env # tests/topotests/bgp_ecmp_topo1/peer1/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer1/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer10/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer10/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer11/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer11/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer12/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer12/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer13/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer13/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer14/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer14/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer15/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer15/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer16/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer16/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer17/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer17/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer18/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer18/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer19/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer19/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer2/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer2/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer20/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer20/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer3/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer3/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer4/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer4/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer5/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer5/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer6/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer6/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer7/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer7/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer8/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer8/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/peer9/exa-send.py # tests/topotests/bgp_ecmp_topo1/peer9/exabgp.cfg # tests/topotests/bgp_ecmp_topo1/r1/bgpd.conf # tests/topotests/bgp_ecmp_topo1/test_bgp_ecmp_topo1.py # tests/topotests/bgp_ecmp_topo2/test_ibgp_ecmp_topo2.py # tests/topotests/bgp_evpn_mh/leaf1/evpn.conf # tests/topotests/bgp_evpn_mh/leaf2/evpn.conf # tests/topotests/bgp_evpn_mh/spine1/evpn.conf # tests/topotests/bgp_evpn_mh/spine2/evpn.conf # tests/topotests/bgp_evpn_mh/test_evpn_mh.py # tests/topotests/bgp_evpn_mh/torm11/evpn.conf # tests/topotests/bgp_evpn_mh/torm12/evpn.conf # tests/topotests/bgp_evpn_mh/torm21/evpn.conf # tests/topotests/bgp_evpn_mh/torm22/evpn.conf # tests/topotests/bgp_evpn_overlay_index_gateway/test_bgp_evpn_overlay_index_gateway.py # tests/topotests/bgp_evpn_rt5/r1/bgpd.conf # tests/topotests/bgp_evpn_rt5/r1/zebra.conf # tests/topotests/bgp_evpn_rt5/r2/bgpd.conf # tests/topotests/bgp_evpn_rt5/r2/zebra.conf # tests/topotests/bgp_evpn_rt5/test_bgp_evpn.py # tests/topotests/bgp_evpn_vxlan_svd_topo1/PE1/bgpd.conf # tests/topotests/bgp_evpn_vxlan_svd_topo1/PE1/evpn.vni.json # tests/topotests/bgp_evpn_vxlan_svd_topo1/PE1/zebra.conf # tests/topotests/bgp_evpn_vxlan_svd_topo1/PE2/evpn.vni.json # tests/topotests/bgp_evpn_vxlan_svd_topo1/test_bgp_evpn_vxlan_svd.py # tests/topotests/bgp_extcomm_list_delete/test_bgp_extcomm-list_delete.py # tests/topotests/bgp_extended_optional_parameters_length/test_bgp_extended_optional_parameters_length.py # tests/topotests/bgp_features/r1/ip_route.json # tests/topotests/bgp_features/r1/ip_route_norib.json # tests/topotests/bgp_features/r1/ospf6d.conf # tests/topotests/bgp_features/r2/ospf6d.conf # tests/topotests/bgp_features/r3/ospf6d.conf # tests/topotests/bgp_features/test_bgp_features.py # tests/topotests/bgp_flowspec/r1/bgpd.conf # tests/topotests/bgp_flowspec/test_bgp_flowspec_topo.py # tests/topotests/bgp_gr_functionality_topo1/test_bgp_gr_functionality_topo1-1.py # tests/topotests/bgp_gr_functionality_topo1/test_bgp_gr_functionality_topo1-2.py # tests/topotests/bgp_gr_functionality_topo1/test_bgp_gr_functionality_topo1-3.py # tests/topotests/bgp_gr_functionality_topo1/test_bgp_gr_functionality_topo1-4.py # tests/topotests/bgp_gr_functionality_topo2/test_bgp_gr_functionality_topo2-1.py # tests/topotests/bgp_gr_functionality_topo2/test_bgp_gr_functionality_topo2-2.py # tests/topotests/bgp_gr_functionality_topo2/test_bgp_gr_functionality_topo2-3.py # tests/topotests/bgp_gr_functionality_topo2/test_bgp_gr_functionality_topo2-4.py # tests/topotests/bgp_gr_functionality_topo3/test_bgp_gr_functionality_topo3.py # tests/topotests/bgp_gr_notification/r1/bgpd.conf # tests/topotests/bgp_gr_notification/r2/bgpd.conf # tests/topotests/bgp_gr_notification/test_bgp_gr_notification.py # tests/topotests/bgp_gr_restart_retain_routes/test_bgp_gr_restart_retain_routes.py # tests/topotests/bgp_gshut/test_bgp_gshut.py # tests/topotests/bgp_ipv4_class_e_peer/test_bgp_ipv4_class_e_peer.py # tests/topotests/bgp_ipv4_over_ipv6/test_rfc5549_ebgp_unnumbered_nbr.py # tests/topotests/bgp_ipv6_ll_peering/test_bgp_ipv6_ll_peering.py # tests/topotests/bgp_l3vpn_to_bgp_direct/scripts/add_routes.py # tests/topotests/bgp_l3vpn_to_bgp_direct/scripts/adjacencies.py # tests/topotests/bgp_l3vpn_to_bgp_vrf/customize.py # tests/topotests/bgp_l3vpn_to_bgp_vrf/r1/bgpd.conf # tests/topotests/bgp_l3vpn_to_bgp_vrf/r1/zebra.conf # tests/topotests/bgp_l3vpn_to_bgp_vrf/scripts/check_routes.py # tests/topotests/bgp_l3vpn_to_bgp_vrf/scripts/scale_down.py # tests/topotests/bgp_l3vpn_to_bgp_vrf/scripts/scale_up.py # tests/topotests/bgp_l3vpn_to_bgp_vrf/test_bgp_l3vpn_to_bgp_vrf.py # tests/topotests/bgp_labeled_unicast_addpath/test_bgp_labeled_unicast_addpath.py # tests/topotests/bgp_labeled_unicast_default_originate/test_bgp_labeled_unicast_default_originate.py # tests/topotests/bgp_large_comm_list_match/test_bgp_large_comm_list_match.py # tests/topotests/bgp_link_bw_ip/r1/ip-route-1.json # tests/topotests/bgp_link_bw_ip/r1/ip-route-2.json # tests/topotests/bgp_link_bw_ip/r1/ip-route-3.json # tests/topotests/bgp_link_bw_ip/r1/ip-route-6.json # tests/topotests/bgp_link_bw_ip/r1/ip-route-7.json # tests/topotests/bgp_link_bw_ip/r1/ip-route-8.json # tests/topotests/bgp_link_bw_ip/r1/ip-route-9.json # tests/topotests/bgp_link_bw_ip/r2/bgp-route-3.json # tests/topotests/bgp_link_bw_ip/r2/ip-route-2.json # tests/topotests/bgp_link_bw_ip/r5/bgpd.conf # tests/topotests/bgp_link_bw_ip/test_bgp_linkbw_ip.py # tests/topotests/bgp_llgr/test_bgp_llgr.py # tests/topotests/bgp_local_as/test_bgp_local_as.py # tests/topotests/bgp_local_as_dotplus_private_remove/test_bgp_local_as_dotplus_private_remove.py # tests/topotests/bgp_local_as_private_remove/test_bgp_local_as_private_remove.py # tests/topotests/bgp_local_asn/test_bgp_local_asn_agg.py # tests/topotests/bgp_local_asn/test_bgp_local_asn_ecmp.py # tests/topotests/bgp_local_asn/test_bgp_local_asn_topo1.py # tests/topotests/bgp_local_asn/test_bgp_local_asn_topo2.py # tests/topotests/bgp_local_asn/test_bgp_local_asn_vrf_topo1.py # tests/topotests/bgp_local_asn/test_bgp_local_asn_vrf_topo2.py # tests/topotests/bgp_local_asn_dot/test_bgp_local_asn_dot_agg.py # tests/topotests/bgp_local_asn_dot/test_bgp_local_asn_dot_ecmp.py # tests/topotests/bgp_local_asn_dot/test_bgp_local_asn_dot_topo1.py # tests/topotests/bgp_lu_explicitnull/test_bgp_lu_explicitnull.py # tests/topotests/bgp_lu_topo1/R2/labelpool.summ.json # tests/topotests/bgp_lu_topo1/R3/bgpd.conf # tests/topotests/bgp_lu_topo1/R3/zebra.conf # tests/topotests/bgp_lu_topo2/R3/bgpd.conf # tests/topotests/bgp_lu_topo2/R3/staticd.conf # tests/topotests/bgp_lu_topo2/R3/zebra.conf # tests/topotests/bgp_max_med_on_startup/r1/bgpd.conf # tests/topotests/bgp_max_med_on_startup/test_bgp_max_med_on_startup.py # tests/topotests/bgp_maximum_prefix_invalid_update/test_bgp_maximum_prefix_invalid_update.py # tests/topotests/bgp_maximum_prefix_out/test_bgp_maximum_prefix_out.py # tests/topotests/bgp_minimum_holdtime/test_bgp_minimum_holdtime.py # tests/topotests/bgp_multi_vrf_topo2/test_bgp_multi_vrf_topo2.py # tests/topotests/bgp_multiview_topo1/exabgp.env # tests/topotests/bgp_multiview_topo1/peer1/exa-send.py # tests/topotests/bgp_multiview_topo1/peer1/exabgp.cfg # tests/topotests/bgp_multiview_topo1/peer2/exa-send.py # tests/topotests/bgp_multiview_topo1/peer2/exabgp.cfg # tests/topotests/bgp_multiview_topo1/peer3/exa-send.py # tests/topotests/bgp_multiview_topo1/peer3/exabgp.cfg # tests/topotests/bgp_multiview_topo1/peer4/exa-send.py # tests/topotests/bgp_multiview_topo1/peer4/exabgp.cfg # tests/topotests/bgp_multiview_topo1/peer5/exa-send.py # tests/topotests/bgp_multiview_topo1/peer5/exabgp.cfg # tests/topotests/bgp_multiview_topo1/peer6/exa-send.py # tests/topotests/bgp_multiview_topo1/peer6/exabgp.cfg # tests/topotests/bgp_multiview_topo1/peer7/exa-send.py # tests/topotests/bgp_multiview_topo1/peer7/exabgp.cfg # tests/topotests/bgp_multiview_topo1/peer8/exa-send.py # tests/topotests/bgp_multiview_topo1/peer8/exabgp.cfg # tests/topotests/bgp_multiview_topo1/r1/bgpd.conf # tests/topotests/bgp_node_target_extcommunities/test_bgp_node_target_extcommunities.py # tests/topotests/bgp_orf/test_bgp_orf.py # tests/topotests/bgp_path_attribute_discard/r1/frr.conf # tests/topotests/bgp_path_attribute_discard/r2/frr.conf # tests/topotests/bgp_path_attribute_discard/test_bgp_path_attribute_discard.py # tests/topotests/bgp_path_attributes_topo1/test_bgp_path_attributes.py # tests/topotests/bgp_path_selection/test_bgp_path_selection.py # tests/topotests/bgp_peer_graceful_shutdown/test_bgp_peer_graceful_shutdown.py # tests/topotests/bgp_peer_group/test_bgp_peer-group.py # tests/topotests/bgp_peer_type_multipath_relax/exabgp.env # tests/topotests/bgp_peer_type_multipath_relax/peer1/exa_readpipe.py # tests/topotests/bgp_peer_type_multipath_relax/peer1/exabgp.cfg # tests/topotests/bgp_peer_type_multipath_relax/peer2/exa_readpipe.py # tests/topotests/bgp_peer_type_multipath_relax/peer2/exabgp.cfg # tests/topotests/bgp_peer_type_multipath_relax/peer3/exa_readpipe.py # tests/topotests/bgp_peer_type_multipath_relax/peer3/exabgp.cfg # tests/topotests/bgp_peer_type_multipath_relax/peer4/exa_readpipe.py # tests/topotests/bgp_peer_type_multipath_relax/peer4/exabgp.cfg # tests/topotests/bgp_peer_type_multipath_relax/r1/bgpd.conf # tests/topotests/bgp_peer_type_multipath_relax/r1/prefix1-eBGP-confed.json # tests/topotests/bgp_peer_type_multipath_relax/r1/prefix1-eBGP-iBGP.json # tests/topotests/bgp_peer_type_multipath_relax/r2/bgpd.conf # tests/topotests/bgp_peer_type_multipath_relax/test_bgp_peer-type_multipath-relax.py # tests/topotests/bgp_prefix_list_any/r1/bgpd.conf # tests/topotests/bgp_prefix_list_any/r2/bgpd.conf # tests/topotests/bgp_prefix_list_any/test_bgp_prefix_list_any.py # tests/topotests/bgp_prefix_sid/exabgp.env # tests/topotests/bgp_prefix_sid/peer1/exabgp.cfg # tests/topotests/bgp_prefix_sid/peer2/exabgp.cfg # tests/topotests/bgp_prefix_sid/r1/bgpd.conf # tests/topotests/bgp_prefix_sid/test_bgp_prefix_sid.py # tests/topotests/bgp_prefix_sid2/peer1/exabgp.cfg # tests/topotests/bgp_prefix_sid2/r1/bgpd.conf # tests/topotests/bgp_prefix_sid2/r1/vpnv6_rib_entry1.json # tests/topotests/bgp_prefix_sid2/r1/vpnv6_rib_entry2.json # tests/topotests/bgp_prefix_sid2/test_bgp_prefix_sid2.py # tests/topotests/bgp_recursive_route_ebgp_multi_hop/test_bgp_recursive_route_ebgp_multi_hop.py # tests/topotests/bgp_reject_as_sets/test_bgp_reject_as_sets.py # tests/topotests/bgp_remove_private_as/test_bgp_remove_private_as.py # tests/topotests/bgp_remove_private_as_route_map/test_bgp_remove_private_as_route_map.py # tests/topotests/bgp_rmap_extcommunity_none/test_bgp_rmap_extcommunity_none.py # tests/topotests/bgp_roles_capability/test_bgp_roles_capability.py # tests/topotests/bgp_roles_filtering/test_bgp_roles_filtering.py # tests/topotests/bgp_route_aggregation/test_bgp_aggregation.py # tests/topotests/bgp_route_map_delay_timer/test_bgp_route_map_delay_timer.py # tests/topotests/bgp_route_map_match_ipv6_nexthop/r1/bgpd.conf # tests/topotests/bgp_route_map_match_ipv6_nexthop/r2/bgpd.conf # tests/topotests/bgp_route_map_match_ipv6_nexthop/test_bgp_route_map_match_ipv6_nexthop.py # tests/topotests/bgp_route_map_match_source_protocol/test_bgp_route_map_match_source_protocol.py # tests/topotests/bgp_route_map_on_match_next/test_bgp_route_map_on_match_next.py # tests/topotests/bgp_route_map_vpn_import/test_bgp_route_map_vpn_import.py # tests/topotests/bgp_route_origin_parser/test_bgp_route_origin_parser.py # tests/topotests/bgp_route_server_client/r1/bgpd.conf # tests/topotests/bgp_route_server_client/r2/bgpd.conf # tests/topotests/bgp_route_server_client/r3/bgpd.conf # tests/topotests/bgp_route_server_client/test_bgp_route_server_client.py # tests/topotests/bgp_rr_ibgp/test_bgp_rr_ibgp_topo1.py # tests/topotests/bgp_sender_as_path_loop_detection/test_bgp_sender-as-path-loop-detection.py # tests/topotests/bgp_set_aspath_exclude/r1/bgpd.conf # tests/topotests/bgp_set_aspath_exclude/r3/zebra.conf # tests/topotests/bgp_set_aspath_exclude/test_bgp_set_aspath_exclude.py # tests/topotests/bgp_set_aspath_replace/test_bgp_set_aspath_replace.py # tests/topotests/bgp_set_local_preference_add_subtract/test_bgp_set_local-preference_add_subtract.py # tests/topotests/bgp_snmp_bgp4v2mib/r1/bgpd.conf # tests/topotests/bgp_snmp_bgp4v2mib/r2/bgpd.conf # tests/topotests/bgp_snmp_bgp4v2mib/r2/snmpd.conf # tests/topotests/bgp_snmp_bgp4v2mib/test_bgp_snmp_bgp4v2mib.py # tests/topotests/bgp_snmp_mplsl3vpn/ce1/bgpd.conf # tests/topotests/bgp_snmp_mplsl3vpn/ce1/zebra.conf # tests/topotests/bgp_snmp_mplsl3vpn/ce2/bgpd.conf # tests/topotests/bgp_snmp_mplsl3vpn/ce2/zebra.conf # tests/topotests/bgp_snmp_mplsl3vpn/ce3/bgpd.conf # tests/topotests/bgp_snmp_mplsl3vpn/ce3/zebra.conf # tests/topotests/bgp_snmp_mplsl3vpn/ce4/bgpd.conf # tests/topotests/bgp_snmp_mplsl3vpn/ce4/zebra.conf # tests/topotests/bgp_snmp_mplsl3vpn/r1/bgpd.conf # tests/topotests/bgp_snmp_mplsl3vpn/r2/zebra.conf # tests/topotests/bgp_snmp_mplsl3vpn/r3/zebra.conf # tests/topotests/bgp_snmp_mplsl3vpn/r4/bgpd.conf # tests/topotests/bgp_snmp_mplsl3vpn/r4/zebra.conf # tests/topotests/bgp_snmp_mplsl3vpn/test_bgp_snmp_mplsvpn.py # tests/topotests/bgp_software_version/test_bgp_software_version.py # tests/topotests/bgp_soo/test_bgp_soo.py # tests/topotests/bgp_srv6l3vpn_over_ipv6/r1/bgpd.conf # tests/topotests/bgp_srv6l3vpn_over_ipv6/r2/bgpd.conf # tests/topotests/bgp_srv6l3vpn_over_ipv6/r3/bgpd.conf # tests/topotests/bgp_srv6l3vpn_over_ipv6/test_bgp_srv6l3vpn_over_ipv6.py # tests/topotests/bgp_srv6l3vpn_route_leak/pe1/bgpd.conf # tests/topotests/bgp_srv6l3vpn_route_leak/pe1/results/vrf20_ipv4.json # tests/topotests/bgp_srv6l3vpn_route_leak/test_bgp_srv6l3vpn_route_leak.py # tests/topotests/bgp_srv6l3vpn_sid/r1/bgpd.conf # tests/topotests/bgp_srv6l3vpn_sid/r1/zebra.conf # tests/topotests/bgp_srv6l3vpn_sid/r2/bgpd.conf # tests/topotests/bgp_srv6l3vpn_sid/r2/zebra.conf # tests/topotests/bgp_srv6l3vpn_sid/test_bgp_srv6l3vpn_sid.py # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/bgpd.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/zebra.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/bgpd.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/zebra.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/test_bgp_srv6l3vpn_to_bgp_vrf.py # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/bgpd.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/vpnv4_rib.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/zebra.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/bgpd.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/vpnv4_rib.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/zebra.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/test_bgp_srv6l3vpn_to_bgp_vrf2.py # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/bgpd.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/vpnv4_rib.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/vpnv4_rib_sid_vpn_export_disabled.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/vpnv4_rib_sid_vpn_export_reenabled.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/vpnv6_rib.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/vpnv6_rib_sid_vpn_export_disabled.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/vpnv6_rib_sid_vpn_export_reenabled.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/zebra.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/bgpd.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/vpnv4_rib.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/vpnv4_rib_sid_vpn_export_disabled.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/vpnv4_rib_sid_vpn_export_reenabled.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/vpnv6_rib.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/vpnv6_rib_sid_vpn_export_disabled.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/vpnv6_rib_sid_vpn_export_reenabled.json # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/zebra.conf # tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/test_bgp_srv6l3vpn_to_bgp_vrf3.py # tests/topotests/bgp_suppress_fib/test_bgp_suppress_fib.py # tests/topotests/bgp_tcp_mss/r1/bgpd.conf # tests/topotests/bgp_tcp_mss/r1/zebra.conf # tests/topotests/bgp_tcp_mss/r2/bgpd.conf # tests/topotests/bgp_tcp_mss/r2/zebra.conf # tests/topotests/bgp_tcp_mss/test_bgp_tcp_mss.py # tests/topotests/bgp_tcp_mss/test_bgp_vrf_tcp_mss.py # tests/topotests/bgp_tcp_mss_passive/test_bgp_tcp_mss_passive.py # tests/topotests/bgp_unique_rid/test_bgp_unique_rid.py # tests/topotests/bgp_unnumbered/test_bgp_unnumbered.py # tests/topotests/bgp_update_delay/test_bgp_update_delay.py # tests/topotests/bgp_vpn_5549_route_map/test_bgp_vpn_5549_route_map.py # tests/topotests/bgp_vpnv4_asbr/r1/bgpd.conf # tests/topotests/bgp_vpnv4_asbr/r2/bgpd.conf # tests/topotests/bgp_vpnv4_asbr/r3/bgpd.conf # tests/topotests/bgp_vpnv4_asbr/test_bgp_vpnv4_asbr.py # tests/topotests/bgp_vpnv4_ebgp/r1/bgpd.conf # tests/topotests/bgp_vpnv4_ebgp/test_bgp_vpnv4_ebgp.py # tests/topotests/bgp_vpnv4_gre/test_bgp_vpnv4_gre.py # tests/topotests/bgp_vpnv4_noretain/r1/ipv4_vrf_all_routes_init.json # tests/topotests/bgp_vpnv4_noretain/r1/ipv4_vrf_all_routes_plus_r1_vrf1.json # tests/topotests/bgp_vpnv4_noretain/r1/ipv4_vrf_all_routes_plus_r2_vrf2.json # tests/topotests/bgp_vpnv4_noretain/r1/ipv4_vrf_all_routes_plus_r2_vrf3.json # tests/topotests/bgp_vpnv4_noretain/test_bgp_vpnv4_noretain.py # tests/topotests/bgp_vpnv4_per_nexthop_label/test_bgp_vpnv4_per_nexthop_label.py # tests/topotests/bgp_vpnv6_per_nexthop_label/test_bgp_vpnv6_per_nexthop_label.py # tests/topotests/bgp_vrf_dynamic_route_leak/test_bgp_vrf_dynamic_route_leak_topo2.py # tests/topotests/bgp_vrf_dynamic_route_leak_topo3/test_bgp_vrf_dynamic_route_leak_topo3.py # tests/topotests/bgp_vrf_dynamic_route_leak_topo4/test_bgp_vrf_dynamic_route_leak_topo4-1.py # tests/topotests/bgp_vrf_dynamic_route_leak_topo4/test_bgp_vrf_dynamic_route_leak_topo4-2.py # tests/topotests/bgp_vrf_dynamic_route_leak_topo4/test_bgp_vrf_dynamic_route_leak_topo4-3.py # tests/topotests/bgp_vrf_leaking_5549_routes/ce1/bgpd.conf # tests/topotests/bgp_vrf_leaking_5549_routes/pe1/bgpd.conf # tests/topotests/bgp_vrf_leaking_5549_routes/test_bgp_vrf_leaking.py # tests/topotests/bgp_vrf_lite_best_path_test/test_bgp_vrf_lite_best_path_topo1.py # tests/topotests/bgp_vrf_lite_best_path_test/test_bgp_vrf_lite_best_path_topo2.py # tests/topotests/bgp_vrf_md5_peering/peer1/exabgp.cfg # tests/topotests/bgp_vrf_netns/exabgp.env # tests/topotests/bgp_vrf_netns/peer1/exa-send.py # tests/topotests/bgp_vrf_netns/peer1/exabgp.cfg # tests/topotests/bgp_vrf_netns/r1/bgpd.conf # tests/topotests/bgp_vrf_netns/test_bgp_vrf_netns_topo.py # tests/topotests/bgp_vrf_route_leak_basic/r1/bgpd.conf # tests/topotests/bgp_vrf_route_leak_basic/r1/zebra.conf # tests/topotests/bgp_vrf_route_leak_basic/setup_vrfs # tests/topotests/bgp_vrf_route_leak_basic/test_bgp-vrf-route-leak-basic.py # tests/topotests/config_timing/test_config_timing.py # tests/topotests/conftest.py # tests/topotests/docker/README.md # tests/topotests/docker/build.sh # tests/topotests/docker/frr-topotests.sh # tests/topotests/docker/inner/compile_frr.sh # tests/topotests/docker/inner/entrypoint.sh # tests/topotests/eigrp_topo1/test_eigrp_topo1.py # tests/topotests/evpn_pim_1/test_evpn_pim_topo1.py # tests/topotests/evpn_type5_test_topo1/test_evpn_type5_topo1.py # tests/topotests/example_munet/r1/frr.conf # tests/topotests/example_munet/r2/frr.conf # tests/topotests/example_munet/r3/frr.conf # tests/topotests/example_munet/test_munet.py # tests/topotests/example_test/test_template.py # tests/topotests/grpc_basic/test_basic_grpc.py # tests/topotests/isis_advertise_high_metrics/test_isis_advertise_high_metrics.py # tests/topotests/isis_lfa_topo1/test_isis_lfa_topo1.py # tests/topotests/isis_lsp_bits_topo1/rt6/step1/show_yang_interface_isis_adjacencies.ref # tests/topotests/isis_lsp_bits_topo1/test_isis_lsp_bits_topo1.py # tests/topotests/isis_rlfa_topo1/test_isis_rlfa_topo1.py # tests/topotests/isis_snmp/test_isis_snmp.py # tests/topotests/isis_sr_flex_algo_topo1/rt1/zebra.conf # tests/topotests/isis_sr_flex_algo_topo1/rt2/zebra.conf # tests/topotests/isis_sr_flex_algo_topo1/rt3/zebra.conf # tests/topotests/isis_sr_flex_algo_topo1/test_isis_sr_flex_algo_topo1.py # tests/topotests/isis_sr_flex_algo_topo2/rt0/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt1/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt2/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt3/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt4/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt5/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt6/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt7/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt8/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/rt9/zebra.conf # tests/topotests/isis_sr_flex_algo_topo2/test_isis_sr_flex_algo_topo2.py # tests/topotests/isis_sr_te_topo1/test_isis_sr_te_topo1.py # tests/topotests/isis_sr_topo1/test_isis_sr_topo1.py # tests/topotests/isis_srv6_topo1/rt1/step1/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt1/step3/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt1/step5/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt1/step7/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt1/step9/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step1/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step2/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step3/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step4/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step5/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step6/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step7/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step8/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt2/step9/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step1/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step2/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step3/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step4/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step5/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step6/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step7/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step8/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt3/step9/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step1/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step2/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step3/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step4/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step5/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step6/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step7/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step8/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt4/step9/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step1/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step2/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step3/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step4/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step5/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step6/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step7/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step8/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt5/step9/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step1/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step2/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step3/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step4/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step5/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step6/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step7/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step8/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/rt6/step9/show_srv6_locator_table.ref # tests/topotests/isis_srv6_topo1/test_isis_srv6_topo1.py # tests/topotests/isis_te_topo1/test_isis_te_topo1.py # tests/topotests/isis_tilfa_topo1/rt1/step1/show_mpls_table.ref # tests/topotests/isis_tilfa_topo1/rt1/step1/show_yang_interface_isis_adjacencies.ref # tests/topotests/isis_tilfa_topo1/rt2/step1/show_ipv6_route.ref # tests/topotests/isis_tilfa_topo1/rt2/step1/show_mpls_table.ref # tests/topotests/isis_tilfa_topo1/rt3/step1/show_ipv6_route.ref # tests/topotests/isis_tilfa_topo1/rt3/step1/show_mpls_table.ref # tests/topotests/isis_tilfa_topo1/rt3/step1/show_yang_interface_isis_adjacencies.ref # tests/topotests/isis_tilfa_topo1/rt4/step1/show_ipv6_route.ref # tests/topotests/isis_tilfa_topo1/rt4/step1/show_mpls_table.ref # tests/topotests/isis_tilfa_topo1/rt5/step1/show_ipv6_route.ref # tests/topotests/isis_tilfa_topo1/rt5/step1/show_mpls_table.ref # tests/topotests/isis_tilfa_topo1/rt6/step1/show_ipv6_route.ref # tests/topotests/isis_tilfa_topo1/rt6/step1/show_mpls_table.ref # tests/topotests/isis_tilfa_topo1/rt6/zebra.conf # tests/topotests/isis_tilfa_topo1/test_isis_tilfa_topo1.py # tests/topotests/isis_topo1/r1/r1_topology.json # tests/topotests/isis_topo1/r2/r2_topology.json # tests/topotests/isis_topo1/r3/r3_topology.json # tests/topotests/isis_topo1/r4/r4_topology.json # tests/topotests/isis_topo1/r5/r5_topology.json # tests/topotests/isis_topo1/test_isis_topo1.py # tests/topotests/isis_topo1_vrf/r1/r1_topology.json # tests/topotests/isis_topo1_vrf/r2/r2_topology.json # tests/topotests/isis_topo1_vrf/r3/r3_topology.json # tests/topotests/isis_topo1_vrf/r4/r4_topology.json # tests/topotests/isis_topo1_vrf/r5/r5_topology.json # tests/topotests/isis_topo1_vrf/test_isis_topo1_vrf.py # tests/topotests/kinds.yaml # tests/topotests/ldp_oc_acl_topo1/test_ldp_oc_acl_topo1.py # tests/topotests/ldp_oc_topo1/test_ldp_oc_topo1.py # tests/topotests/ldp_snmp/test_ldp_snmp_topo1.py # tests/topotests/ldp_sync_isis_topo1/test_ldp_sync_isis_topo1.py # tests/topotests/ldp_sync_ospf_topo1/test_ldp_sync_ospf_topo1.py # tests/topotests/ldp_vpls_topo1/test_ldp_vpls_topo1.py # tests/topotests/lib/bgp.py # tests/topotests/lib/bgprib.py # tests/topotests/lib/bmp_collector/bgp/open/__init__.py # tests/topotests/lib/bmp_collector/bgp/update/__init__.py # tests/topotests/lib/bmp_collector/bgp/update/af.py # tests/topotests/lib/bmp_collector/bgp/update/nlri.py # tests/topotests/lib/bmp_collector/bgp/update/path_attributes.py # tests/topotests/lib/bmp_collector/bgp/update/rd.py # tests/topotests/lib/bmp_collector/bmp.py # tests/topotests/lib/checkping.py # tests/topotests/lib/common_config.py # tests/topotests/lib/grpc-query.py # tests/topotests/lib/ospf.py # tests/topotests/lib/pim.py # tests/topotests/lib/snmptest.py # tests/topotests/lib/topogen.py # tests/topotests/lib/topojson.py # tests/topotests/lib/topotest.py # tests/topotests/mgmt_config/test_config.py # tests/topotests/mgmt_config/test_regression.py # tests/topotests/mgmt_startup/test_bigconf.py # tests/topotests/mgmt_startup/test_cfgfile_var.py # tests/topotests/mgmt_startup/test_late_bigconf.py # tests/topotests/mgmt_startup/test_late_uniconf.py # tests/topotests/mgmt_startup/test_latestart.py # tests/topotests/mgmt_tests/test_yang_mgmt.py # tests/topotests/msdp_topo1/r1/pimd.conf # tests/topotests/msdp_topo1/r2/pimd.conf # tests/topotests/msdp_topo1/r4/pimd.conf # tests/topotests/msdp_topo1/test_msdp_topo1.py # tests/topotests/multicast_pim6_sm_topo1/test_multicast_pim6_sm1.py # tests/topotests/multicast_pim6_sm_topo1/test_multicast_pim6_sm2.py # tests/topotests/multicast_pim_bsm_topo1/test_mcast_pim_bsmp_01.py # tests/topotests/multicast_pim_bsm_topo2/test_mcast_pim_bsmp_02.py # tests/topotests/multicast_pim_dr_nondr_test/test_pim_dr_nondr_with_ospf_topo2.py # tests/topotests/multicast_pim_dr_nondr_test/test_pim_dr_nondr_with_transit_router_topo3.py # tests/topotests/multicast_pim_sm_topo1/test_multicast_pim_sm_topo1.py # tests/topotests/multicast_pim_sm_topo2/test_multicast_pim_sm_topo2.py # tests/topotests/multicast_pim_sm_topo3/igmp_group_all_detail.json # tests/topotests/multicast_pim_sm_topo3/igmp_single_if_group_all_brief.json # tests/topotests/multicast_pim_sm_topo3/igmp_single_if_group_all_detail.json # tests/topotests/multicast_pim_sm_topo3/igmp_single_if_single_group_brief.json # tests/topotests/multicast_pim_sm_topo3/igmp_single_if_single_group_detail.json # tests/topotests/multicast_pim_sm_topo3/test_multicast_pim_sm_topo3.py # tests/topotests/multicast_pim_sm_topo3/test_multicast_pim_sm_topo4.py # tests/topotests/multicast_pim_static_rp_topo1/test_multicast_pim_static_rp.py # tests/topotests/multicast_pim_static_rp_topo1/test_multicast_pim_static_rp1.py # tests/topotests/multicast_pim_static_rp_topo1/test_multicast_pim_static_rp2.py # tests/topotests/multicast_pim_uplink_topo1/test_multicast_pim_uplink_topo1.py # tests/topotests/multicast_pim_uplink_topo2/test_multicast_pim_uplink_topo2.py # tests/topotests/munet/__main__.py # tests/topotests/munet/base.py # tests/topotests/munet/cleanup.py # tests/topotests/munet/cli.py # tests/topotests/munet/linux.py # tests/topotests/munet/logconf-mutest.yaml # tests/topotests/munet/mucmd.py # tests/topotests/munet/mulog.py # tests/topotests/munet/munet-schema.json # tests/topotests/munet/mutest/__main__.py # tests/topotests/munet/mutest/userapi.py # tests/topotests/munet/mutini.py # tests/topotests/munet/native.py # tests/topotests/munet/parser.py # tests/topotests/munet/testing/fixtures.py # tests/topotests/munet/testing/hooks.py # tests/topotests/munet/testing/util.py # tests/topotests/nhrp_topo/r1/nhrpd.conf # tests/topotests/nhrp_topo/r1/zebra.conf # tests/topotests/nhrp_topo/r2/nhrp4_cache.json # tests/topotests/nhrp_topo/r2/nhrp_route4.json # tests/topotests/nhrp_topo/r2/nhrpd.conf # tests/topotests/nhrp_topo/r2/zebra.conf # tests/topotests/nhrp_topo/test_nhrp_topo.py # tests/topotests/ospf6_ecmp_inter_area/r5/ospf6d.conf # tests/topotests/ospf6_ecmp_inter_area/r6/ospf6d.conf # tests/topotests/ospf6_ecmp_inter_area/r7/ospf6d.conf # tests/topotests/ospf6_ecmp_inter_area/r7/zebra.conf # tests/topotests/ospf6_ecmp_inter_area/r8/ospf6d.conf # tests/topotests/ospf6_ecmp_inter_area/r8/zebra.conf # tests/topotests/ospf6_ecmp_inter_area/test_ospf6_ecmp_inter_area.py # tests/topotests/ospf6_gr_topo1/test_ospf6_gr_topo1.py # tests/topotests/ospf6_loopback_cost/test_ospf6_loopback_cost.py # tests/topotests/ospf6_topo1/r1/ospf6d.conf # tests/topotests/ospf6_topo1/r2/ospf6d.conf # tests/topotests/ospf6_topo1/r3/ospf6d.conf # tests/topotests/ospf6_topo1/r4/ospf6d.conf # tests/topotests/ospf6_topo1/test_ospf6_topo1.py # tests/topotests/ospf6_topo1_vrf/test_ospf6_topo1_vrf.py # tests/topotests/ospf_basic_functionality/test_ospf_asbr_summary_topo1.py # tests/topotests/ospf_basic_functionality/test_ospf_asbr_summary_type7_lsa.py # tests/topotests/ospf_basic_functionality/test_ospf_authentication.py # tests/topotests/ospf_basic_functionality/test_ospf_chaos.py # tests/topotests/ospf_basic_functionality/test_ospf_ecmp.py # tests/topotests/ospf_basic_functionality/test_ospf_flood_reduction.py # tests/topotests/ospf_basic_functionality/test_ospf_nssa.py # tests/topotests/ospf_basic_functionality/test_ospf_p2mp.py # tests/topotests/ospf_basic_functionality/test_ospf_routemaps.py # tests/topotests/ospf_basic_functionality/test_ospf_rte_calc.py # tests/topotests/ospf_basic_functionality/test_ospf_single_area.py # tests/topotests/ospf_dual_stack/test_ospf_dual_stack.py # tests/topotests/ospf_gr_helper/test_ospf_gr_helper1.py # tests/topotests/ospf_gr_helper/test_ospf_gr_helper2.py # tests/topotests/ospf_gr_helper/test_ospf_gr_helper3.py # tests/topotests/ospf_gr_topo1/test_ospf_gr_topo1.py # tests/topotests/ospf_instance_redistribute/r1/sharp_installed.json # tests/topotests/ospf_instance_redistribute/test_ospf_instance_redistribute.py # tests/topotests/ospf_metric_propagation/h1/frr.conf # tests/topotests/ospf_metric_propagation/h2/frr.conf # tests/topotests/ospf_metric_propagation/r1/frr.conf # tests/topotests/ospf_metric_propagation/r1/show_ip_route-1.json # tests/topotests/ospf_metric_propagation/r1/show_ip_route-2.json # tests/topotests/ospf_metric_propagation/r1/show_ip_route-3.json # tests/topotests/ospf_metric_propagation/r1/show_ip_route-4.json # tests/topotests/ospf_metric_propagation/r1/show_ip_route-5.json # tests/topotests/ospf_metric_propagation/r1/show_ip_route-6.json # tests/topotests/ospf_metric_propagation/r2/frr.conf # tests/topotests/ospf_metric_propagation/r3/frr.conf # tests/topotests/ospf_metric_propagation/r4/frr.conf # tests/topotests/ospf_metric_propagation/ra/frr.conf # tests/topotests/ospf_metric_propagation/rb/frr.conf # tests/topotests/ospf_metric_propagation/rc/frr.conf # tests/topotests/ospf_metric_propagation/test_ospf_metric_propagation.py # tests/topotests/ospf_multi_vrf_bgp_route_leak/r1/frr.conf # tests/topotests/ospf_multi_vrf_bgp_route_leak/r1/zebra-vrf-default.txt # tests/topotests/ospf_multi_vrf_bgp_route_leak/r1/zebra-vrf-neno.txt # tests/topotests/ospf_multi_vrf_bgp_route_leak/r2/frr.conf # tests/topotests/ospf_multi_vrf_bgp_route_leak/r2/zebra-vrf-default.txt # tests/topotests/ospf_multi_vrf_bgp_route_leak/r2/zebra-vrf-ray.txt # tests/topotests/ospf_multi_vrf_bgp_route_leak/r3/frr.conf # tests/topotests/ospf_multi_vrf_bgp_route_leak/r3/zebra-vrf-default.txt # tests/topotests/ospf_multi_vrf_bgp_route_leak/r4/frr.conf # tests/topotests/ospf_multi_vrf_bgp_route_leak/r4/zebra-vrf-default.txt # tests/topotests/ospf_multi_vrf_bgp_route_leak/test_ospf_multi_vrf_bgp_route_leak.py # tests/topotests/ospf_netns_vrf/r1/ospfd.conf # tests/topotests/ospf_netns_vrf/r1/zebra.conf # tests/topotests/ospf_netns_vrf/r1/zebraroute.txt # tests/topotests/ospf_netns_vrf/r1/zebraroutedown.txt # tests/topotests/ospf_netns_vrf/r2/ospfd.conf # tests/topotests/ospf_netns_vrf/r2/zebra.conf # tests/topotests/ospf_netns_vrf/r2/zebraroute.txt # tests/topotests/ospf_netns_vrf/r2/zebraroutedown.txt # tests/topotests/ospf_netns_vrf/r3/ospfd.conf # tests/topotests/ospf_netns_vrf/r3/zebra.conf # tests/topotests/ospf_netns_vrf/r3/zebraroute.txt # tests/topotests/ospf_netns_vrf/r3/zebraroutedown.txt # tests/topotests/ospf_netns_vrf/test_ospf_netns_vrf.py # tests/topotests/ospf_nssa_topo1/test_ospf_nssa_topo1.py # tests/topotests/ospf_prefix_suppression/r1/frr.conf # tests/topotests/ospf_prefix_suppression/r2/frr.conf # tests/topotests/ospf_prefix_suppression/r3/frr.conf # tests/topotests/ospf_prefix_suppression/test_ospf_prefix_suppression.py # tests/topotests/ospf_sr_te_topo1/test_ospf_sr_te_topo1.py # tests/topotests/ospf_sr_topo1/test_ospf_sr_topo1.py # tests/topotests/ospf_suppress_fa/r2/ospfd.conf # tests/topotests/ospf_suppress_fa/test_ospf_suppress_fa.py # tests/topotests/ospf_tilfa_topo1/test_ospf_tilfa_topo1.py # tests/topotests/ospf_topo1/r1/ospf6d.conf # tests/topotests/ospf_topo1/r2/ospf6d.conf # tests/topotests/ospf_topo1/r3/ospf6d.conf # tests/topotests/ospf_topo1/r4/ospf6d.conf # tests/topotests/ospf_topo1/test_ospf_topo1.py # tests/topotests/ospf_topo2/test_ospf_topo2.py # tests/topotests/ospf_unnumbered/test_ospf_unnumbered.py # tests/topotests/ospfapi/test_ospf_clientapi.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_asbr_summary_topo1.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_authentication.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_ecmp.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_ecmp_lan.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_nssa.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_nssa2.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_routemaps.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_rte_calc.py # tests/topotests/ospfv3_basic_functionality/test_ospfv3_single_area.py # tests/topotests/pim_acl/test_pim_acl.py # tests/topotests/pim_basic/test_pim.py # tests/topotests/pim_igmp_vrf/r1/ospfd.conf # tests/topotests/pim_igmp_vrf/r1/pimd.conf # tests/topotests/pim_igmp_vrf/r11/ospfd.conf # tests/topotests/pim_igmp_vrf/r12/ospfd.conf # tests/topotests/pim_igmp_vrf/test_pim_vrf.py # tests/topotests/pytest.ini # tests/topotests/rip_allow_ecmp/test_rip_allow_ecmp.py # tests/topotests/rip_bfd_topo1/test_rip_bfd_topo1.py # tests/topotests/rip_passive_interface/test_rip_passive_interface.py # tests/topotests/rip_topo1/r1/sho…
Cherry-pick of 9b0b928 has failed:
To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally |
Replaced by #17633. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Although trigger unknown, based on the backtrace in one of the internal testing, we do see some delete in the Intf where we can have the peer ifp pointer null and we try to dereference it while trying to install the route leading to a crash
Skip updating the ifindex in such cases and since the nexthop is not properly updated, BGP skips sending it to zebra.
BackTrace:
Ticket :#4203904
This is an automatic backport of pull request #17624 done by Mergify.