mirror_frr/bgpd
Donatas Abraitis 04f9372409 bgpd: Do not process VRF import/export to/from auto created VRF instances
Fixes the crash:

```
(gdb) bt
0  __pthread_kill_implementation (no_tid=0, signo=11, threadid=124583315603008) at ./nptl/pthread_kill.c:44
1  __pthread_kill_internal (signo=11, threadid=124583315603008) at ./nptl/pthread_kill.c:78
2  __GI___pthread_kill (threadid=124583315603008, signo=signo@entry=11) at ./nptl/pthread_kill.c:89
3  0x0000714ed0242476 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
4  0x0000714ed074cfb7 in core_handler (signo=11, siginfo=0x7ffe6d9792b0, context=0x7ffe6d979180) at lib/sigevent.c:258
5  <signal handler called>
6  0x000060f55e33ffdd in route_table_get_info (table=0x0) at ./lib/table.h:177
7  0x000060f55e340053 in bgp_dest_table (dest=0x60f56dabb840) at ./bgpd/bgp_table.h:156
8  0x000060f55e340c9f in is_route_injectable_into_vpn (pi=0x60f56dbc4a60) at ./bgpd/bgp_mplsvpn.h:331
9  0x000060f55e34507c in vpn_leak_from_vrf_update (to_bgp=0x60f56da52070, from_bgp=0x60f56da75af0, path_vrf=0x60f56dbc4a60) at bgpd/bgp_mplsvpn.c:1575
10 0x000060f55e346657 in vpn_leak_from_vrf_update_all (to_bgp=0x60f56da52070, from_bgp=0x60f56da75af0, afi=AFI_IP) at bgpd/bgp_mplsvpn.c:2028
11 0x000060f55e340c10 in vpn_leak_postchange (direction=BGP_VPN_POLICY_DIR_TOVPN, afi=AFI_IP, bgp_vpn=0x60f56da52070, bgp_vrf=0x60f56da75af0) at ./bgpd/bgp_mplsvpn.h:310
12 0x000060f55e34a692 in vpn_leak_postchange_all () at bgpd/bgp_mplsvpn.c:3737
13 0x000060f55e3d91fc in router_bgp (self=0x60f55e5cbc20 <router_bgp_cmd>, vty=0x60f56e2d7660, argc=3, argv=0x60f56da19830) at bgpd/bgp_vty.c:1601
14 0x0000714ed069ddf5 in cmd_execute_command_real (vline=0x60f56da32a80, vty=0x60f56e2d7660, cmd=0x0, up_level=0) at lib/command.c:1002
15 0x0000714ed069df6e in cmd_execute_command (vline=0x60f56da32a80, vty=0x60f56e2d7660, cmd=0x0, vtysh=0) at lib/command.c:1061
16 0x0000714ed069e51e in cmd_execute (vty=0x60f56e2d7660, cmd=0x60f56dbf07d0 "router bgp 100\n", matched=0x0, vtysh=0) at lib/command.c:1227
17 0x0000714ed076faa0 in vty_command (vty=0x60f56e2d7660, buf=0x60f56dbf07d0 "router bgp 100\n") at lib/vty.c:616
18 0x0000714ed07719c4 in vty_execute (vty=0x60f56e2d7660) at lib/vty.c:1379
19 0x0000714ed07740f0 in vtysh_read (thread=0x7ffe6d97c700) at lib/vty.c:2374
20 0x0000714ed07685c4 in event_call (thread=0x7ffe6d97c700) at lib/event.c:1995
21 0x0000714ed06e3351 in frr_run (master=0x60f56d1d2e40) at lib/libfrr.c:1232
22 0x000060f55e2c4b44 in main (argc=7, argv=0x7ffe6d97c978) at bgpd/bgp_main.c:555
(gdb)
```

Fixes https://github.com/FRRouting/frr/issues/16484

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2024-07-28 14:26:13 +03:00
..
rfapi bgpd: move labels from extra to extra->labels 2024-06-05 13:11:29 +02:00
rfp-example *: Convert struct event_master to struct event_loop 2023-03-24 08:32:17 -04:00
.gitignore
bgp_addpath_types.h bgpd: Implement neighbor X addpath-tx-best-selected command 2023-06-07 22:27:29 +03:00
bgp_addpath.c bgpd: Handle Addpath capability using dynamic capabilities 2023-10-03 17:44:19 +03:00
bgp_addpath.h bgpd: Avoid padding for bgp_paths_limit_capability struct 2024-03-14 09:50:49 +02:00
bgp_advertise.c bgpd: fix labels in adj-rib-in 2024-06-05 13:11:29 +02:00
bgp_advertise.h bgpd: fix label in adj-rib-out 2024-06-05 13:11:29 +02:00
bgp_aspath.c bgpd: fix "bgp as-pah access-list" with "set aspath exclude" set/unset issues 2024-05-16 17:49:42 +02:00
bgp_aspath.h bgpd: fix "bgp as-pah access-list" with "set aspath exclude" set/unset issues 2024-05-16 17:49:42 +02:00
bgp_attr_evpn.c bgpd: Move sticky, default_gw, router_flag into a single flags variable 2024-07-04 09:47:07 +03:00
bgp_attr_evpn.h bgpd: Move sticky, default_gw, router_flag into a single flags variable 2024-07-04 09:47:07 +03:00
bgp_attr.c Merge pull request #16345 from opensourcerouting/feature/bgp_remote-as_auto 2024-07-05 08:43:32 -04:00
bgp_attr.h bgpd: Move sticky, default_gw, router_flag into a single flags variable 2024-07-04 09:47:07 +03:00
bgp_bfd.c bgpd: fix disable bfd profile for neighbors. 2024-03-13 01:15:16 +03:00
bgp_bfd.h *: Convert struct event_master to struct event_loop 2023-03-24 08:32:17 -04:00
bgp_bmp.c bgpd: move labels from extra to extra->labels 2024-06-05 13:11:29 +02:00
bgp_bmp.h bgpd: add 'bmp stat send-experimental' command 2024-04-26 08:12:38 +02:00
bgp_btoa.c *: zebra.h should not have fcntl.h 2024-01-09 12:50:40 -05:00
bgp_clist.c bgpd: Return success if lcomm/comm/extcomm name or entry is not found 2024-05-24 11:25:00 -07:00
bgp_clist.h bgpd: Removed unused COMMUNITY_LIST_ERR_CANT_FIND_LIST 2024-05-24 11:25:16 -07:00
bgp_community_alias.c *: Add a hash_clean_and_free() function 2023-03-21 08:54:21 -04:00
bgp_community_alias.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_community.c bgpd: Remove deprecated COMMUNITY_INTERNET community 2023-08-03 17:12:19 +03:00
bgp_community.h bgpd: Remove deprecated COMMUNITY_INTERNET community 2023-08-03 17:12:19 +03:00
bgp_conditional_adv.c bgpd: Ensure community data is freed in some cases. 2024-03-13 19:28:11 -04:00
bgp_conditional_adv.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_damp.c bgpd: Put dest into work queue when the path is really withdrawn by dampening 2024-05-03 09:30:33 +03:00
bgp_damp.h bgpd: Pass the right reuse_list when handling it via bgp_reuse_timer thread 2024-05-03 09:30:33 +03:00
bgp_debug.c bgpd: store number of labels with 8 bits 2024-06-05 13:11:29 +02:00
bgp_debug.h bgpd: store number of labels with 8 bits 2024-06-05 13:11:29 +02:00
bgp_dump.c *: remove sys/stat.h from zebra.h 2024-01-09 12:39:23 -05:00
bgp_dump.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_ecommunity.c bgpd: Check against extended community unit size for link bandwidth 2024-06-11 10:03:17 +03:00
bgp_ecommunity.h bgpd: Update IPv6 extended community sub-type for extended link bandwidth 2024-04-23 08:55:00 +03:00
bgp_encap_tlv.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_encap_tlv.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_encap_types.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_errors.c Revert "bgpd: store bgp link-state prefixes" 2023-10-10 16:45:00 -04:00
bgp_errors.h Revert "bgpd: store bgp link-state prefixes" 2023-10-10 16:45:00 -04:00
bgp_evpn_mh.c Merge pull request #15900 from mikemallin/v6-vtep-lib-upstream 2024-06-07 14:34:11 -04:00
bgp_evpn_mh.h bgpd : backpressure - Handle BGP-Zebra(EPVN) Install evt Creation 2024-04-08 10:51:43 -07:00
bgp_evpn_private.h bgpd: Move sticky, default_gw, router_flag into a single flags variable 2024-07-04 09:47:07 +03:00
bgp_evpn_vty.c bgpd: Convert int to enum peer_asn_type 2024-07-04 23:07:01 +03:00
bgp_evpn_vty.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_evpn.c Merge pull request #16416 from raja-rajasekar/rajasekarr/fix_logs_bp 2024-07-25 21:09:39 +03:00
bgp_evpn.h Merge pull request #16059 from kacpekwasny/kkwasny/CLIC-139-4 2024-06-20 10:51:06 +03:00
bgp_filter.c bgpd: fix "bgp as-pah access-list" with "set aspath exclude" set/unset issues 2024-05-16 17:49:42 +02:00
bgp_filter.h bgpd: fix "bgp as-pah access-list" with "set aspath exclude" set/unset issues 2024-05-16 17:49:42 +02:00
bgp_flowspec_private.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_flowspec_util.c bgpd: add some flowspec sanity returns 2023-04-28 22:28:16 +02:00
bgp_flowspec_util.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_flowspec_vty.c *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
bgp_flowspec.c bgpd: Free temp memory 2023-05-29 13:39:14 +04:00
bgp_flowspec.h bgpd: Treat withdraw variable as a bool 2023-04-06 17:41:32 -04:00
bgp_fsm.c bgpd: Keep the last reset reason before we reset the peer 2024-07-25 13:22:27 +03:00
bgp_fsm.h bgpd: Streamline GR config, act on change immediately 2024-06-27 11:40:57 -07:00
bgp_io.c bgpd: bgp_fsm_change_status/BGP_TIMER_ON and BGP_EVENT_ADD 2023-09-10 08:31:25 -04:00
bgp_io.h bgpd: Convert bgp_io.c to take struct peer_connection 2023-08-18 09:29:04 -04:00
bgp_keepalives.c bgpd: make bgp_keepalives_on|off connection oriented 2023-09-10 08:31:25 -04:00
bgp_keepalives.h bgpd: make bgp_keepalives_on|off connection oriented 2023-09-10 08:31:25 -04:00
bgp_label.c bgpd: move labels from extra to extra->labels 2024-06-05 13:11:29 +02:00
bgp_label.h bgpd: move labels from extra to extra->labels 2024-06-05 13:11:29 +02:00
bgp_labelpool.c bgpd: bgp_sync_label_manager failure case 2024-01-06 20:26:14 -05:00
bgp_labelpool.h bgpd: Use synchronous way to get labels from Zebra 2023-06-20 20:50:10 +03:00
bgp_lcommunity.c bgpd: Fix lcom->str string length to correctly cover aliases 2023-04-20 16:51:56 -04:00
bgp_lcommunity.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_mac.c bgpd: move labels from extra to extra->labels 2024-06-05 13:11:29 +02:00
bgp_mac.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_main.c *: Add and use option for graceful (re)start 2024-07-01 13:02:52 -07:00
bgp_memory.c bgpd: add bgp_labels hash 2024-06-05 13:11:29 +02:00
bgp_memory.h bgpd: add bgp_labels hash 2024-06-05 13:11:29 +02:00
bgp_mpath.c bgpd: fix do not skip paths with same nexthop 2024-06-11 10:01:56 +02:00
bgp_mpath.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_mplsvpn_snmp.c bgpd: MTYPE_BGP was being overused split up 2023-11-21 12:41:18 -05:00
bgp_mplsvpn_snmp.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_mplsvpn.c bgpd: Do not process VRF import/export to/from auto created VRF instances 2024-07-28 14:26:13 +03:00
bgp_mplsvpn.h bgpd: do allocate vrf label only when necessary 2024-04-18 14:55:25 +02:00
bgp_network.c bgpd: Adjust terminology related to DSCP 2024-06-02 06:44:59 -04:00
bgp_network.h bgpd: Set TCP min MSS per listener 2023-09-18 22:34:45 +03:00
bgp_nexthop.c bgpd: add resolved_prefix visibility on nht 2024-03-29 17:20:31 +01:00
bgp_nexthop.h bgpd: add resolved_prefix visibility on nht 2024-03-29 17:20:31 +01:00
bgp_nhg.c bgpd: move l3nhg functions in separate bgp_nhg.[ch] file 2023-12-11 21:03:33 +01:00
bgp_nhg.h bgpd: move l3nhg functions in separate bgp_nhg.[ch] file 2023-12-11 21:03:33 +01:00
bgp_nht.c bgpd: add bgp_path_info_num_labels() 2024-06-05 11:08:46 +02:00
bgp_nht.h bgpd: move l3nhg functions in separate bgp_nhg.[ch] file 2023-12-11 21:03:33 +01:00
bgp_open.c bgpd: Refine OPEN debug logs for graceful restart 2024-07-01 13:02:52 -07:00
bgp_open.h bgpd: Add sanity check for capability lengths before processing them 2024-05-24 10:35:42 +03:00
bgp_packet.c bgpd: Do not increment treat-as-withdraw counters if debug is enabled 2024-07-25 13:41:23 +03:00
bgp_packet.h bgpd: First pass of BGP_EVENT_ADD 2023-09-10 08:31:25 -04:00
bgp_pbr.c bgpd: bgp_path_info_extra memory optimization 2023-08-08 10:48:07 +00:00
bgp_pbr.h *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
bgp_rd.c Merge pull request #12248 from pguibert6WIND/bgpasdot 2023-02-21 08:01:03 -05:00
bgp_rd.h bgpd: Optimize memory for rd_ip struct 2024-01-31 11:29:30 +02:00
bgp_regex.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_regex.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_route.c bgpd: Move sticky, default_gw, router_flag into a single flags variable 2024-07-04 09:47:07 +03:00
bgp_route.h bgpd: move labels from extra to extra->labels 2024-06-05 13:11:29 +02:00
bgp_routemap_nb_config.c bgpd: Implement draft-li-idr-link-bandwidth-ext-01 2024-04-22 17:50:08 +03:00
bgp_routemap_nb.c bgpd, yang: fix missing mandatory/default statements on some leafs 2024-02-26 01:03:27 +02:00
bgp_routemap_nb.h bgpd, yang: fix missing mandatory/default statements on some leafs 2024-02-26 01:03:27 +02:00
bgp_routemap.c Merge pull request #15838 from fdumontet6WIND/fix_regexx_exclude 2024-06-24 17:08:17 -04:00
bgp_rpki.c bgpd: move labels from extra to extra->labels 2024-06-05 13:11:29 +02:00
bgp_rpki.h bgpd: create cache server socket in vrf 2024-01-18 13:22:19 +01:00
bgp_script.c bgpd: Convert struct peer_connection to dynamically allocated 2023-08-18 09:29:04 -04:00
bgp_script.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_snmp_bgp4.c Revert "bgpd: fix pointer arithmetic in bgp snmp module" 2024-04-23 11:39:29 +02:00
bgp_snmp_bgp4.h bgpd: add snmp traps for bgp4-mibv2 2023-10-24 17:16:47 +02:00
bgp_snmp_bgp4v2.c bgpd: move mp_nexthop_prefer_global boolean attribute to nh_flags 2024-02-22 18:20:34 +01:00
bgp_snmp_bgp4v2.h bgpd: add snmp traps for bgp4-mibv2 2023-10-24 17:16:47 +02:00
bgp_snmp.c bgpd: fix new Formatting / Styling warning 2023-10-24 17:16:47 +02:00
bgp_snmp.h bgpd: add [no] bgp snmp traps bgp4-mibv2 command 2023-10-24 17:16:47 +02:00
bgp_table.c bgpd: When using dev build add pointer information to %pBD 2024-03-14 09:45:09 +00:00
bgp_table.h bgpd : backpressure - Handle BGP-Zebra(EPVN) Install evt Creation 2024-04-08 10:51:43 -07:00
bgp_trace.c *: Add missing SPDX-License-Identifier for some .c/.h files 2024-03-21 16:46:58 +02:00
bgp_trace.h bgpd: lttng tp add ethtag to macip zebra send 2023-12-27 18:01:50 -08:00
bgp_updgrp_adv.c bgpd: fix label in adj-rib-out 2024-06-05 13:11:29 +02:00
bgp_updgrp_packet.c bgpd: move labels from extra to extra->labels 2024-06-05 13:11:29 +02:00
bgp_updgrp.c bgpd: Implement neighbor X remote-as auto 2024-07-04 14:42:19 +03:00
bgp_updgrp.h bgpd: Drop periodic merge check functions 2024-03-20 16:44:13 +02:00
bgp_vnc_types.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_vpn.c bgpd: Fix display when using missing-as-worst 2024-04-15 12:33:53 -04:00
bgp_vpn.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
bgp_vty.c bgpd: Do not process VRF import/export to/from auto created VRF instances 2024-07-28 14:26:13 +03:00
bgp_vty.h bgpd: Convert int to enum peer_asn_type 2024-07-04 23:07:01 +03:00
bgp_zebra.c Merge pull request #16416 from raja-rajasekar/rajasekarr/fix_logs_bp 2024-07-25 21:09:39 +03:00
bgp_zebra.h bgpd: store number of labels with 8 bits 2024-06-05 13:11:29 +02:00
bgpd.c bgpd: Keep the last reset reason before we reset the peer 2024-07-25 13:22:27 +03:00
bgpd.h bgpd: Set the last_reset if we change the password also 2024-07-25 13:06:46 +03:00
Makefile
subdir.am bgpd: move l3nhg functions in separate bgp_nhg.[ch] file 2023-12-11 21:03:33 +01:00