~cdwertmann/cumulus-frr/+git/trunk:rc/8.5.1

Last commit made on 2023-04-20
Get this branch:
git clone -b rc/8.5.1 https://git.launchpad.net/~cdwertmann/cumulus-frr/+git/trunk

Branch merges

Branch information

Name:
rc/8.5.1
Repository:
lp:~cdwertmann/cumulus-frr/+git/trunk

Recent commits

e82364f... by Jafar Al-Gharaibeh

FRR Release 8.5.1

* Bug Fixes

bgpd
  - Aggregate-address memory leak fix
  - Bmp fix peer-up ports byte order
  - Check 7 bytes for long-lived graceful-restart capability
  - Copy the password from the previous peer on peer_xfer_config()
  - Do not allow a `no router bgp xxx` when autoimport is happening
  - Do not allow l3vni changes when shutting down
  - Do not announce routes immediatelly on filter updates
  - Do not call bgp_soft_reconfig_in() twice in a row on policy change
  - Evpn-mh esi not active suppress ead-es route
  - Fix crash for `show bgp ... neighbor received-routes detail|prefix`
  - Fix debug output for route-map names when using a unsuppress-map
  - Fix ecommunity parsing for as4
  - Fix for ain->attr corruption during path update
  - Increase buffer size used for dumping bgp to mrt files
  - Limit flowspec to no attribute means a implicit withdrawal
  - Prevent null pointer deref when outputting data

lib
   - Adjust only `any` flag for prefix-list entries if destroying
   - Destroy `any` flag when creating a prefix-list entry with prefix
   - Fix clear route-map cmd using defpy
   - Fix link state memory leak
   - Include clippy generated commands for routemap.c
   - On bfd peer shutdown actually stop event

ospfd
   - Cleanup some memory leaks on shutdown in ospf_apiserver.c
   - Fix for vitual-link crash in signal handler
   - Fix ospf_lsa memory leak
   - Fix ospf_ti_lfa drop of an entire table
   - Fixing summary origination after range configuration
   - Free up q_space in early return path
   - Log adjacency changes with neighbor ip in addition to neighbor id

pbrd
   - Fix mismatching in match src-dst

pim6d
   - Fixing mroutes not created after disabling and enabling pimv6.

pimd
   - Fix use after free issue for ifp's moving vrfs
   - In_multicast needs host order
   - Process no-forward bsm packet

ripd
   - Fix malformed route-map
   - Fix memory leak for ripd's route-map

staticd
   - Tell bfd that we are shutting down

tools
   - Fix missing remote-as configuration when reload
   - Frr-reload fix list value not present
   - Make check flag really work for reload
   - Set correct directory of vtysh for frr-reload.py

zebrad
   - Add link_nsid to zebra interface
   - Cleanup ctx leak on shutdown and turn off event
   - Evpn mh sync mac install as inactive
   - Fix for heap-use-after-free in evpn
   - Fix race during shutdown
   - Install directly connected route after interface flap

Signed-off-by: Jafar Al-Gharaibeh <email address hidden>

16f8b0f... by Jafar Al-Gharaibeh

Merge pull request #13338 from FRRouting/mergify/bp/stable/8.5/pr-13329

bgpd: Fix for ain->attr corruption during path update (backport #13329)

ea004fb... by Pooja Jagadeesh Doijode <email address hidden>

bgpd: Fix for ain->attr corruption during path update

1. Consider a established L2VPN EVPN BGP peer with soft-reconfiguartion
   inbound configured

2. When the interface of this directly connected BGP peer is shutdown,
   bgp_soft_reconfig_table_update() is called, which memsets the evpn buffer
   and calls bgp_update() with received attributes stored in ain table(ain->attr).
   In bgp_update(), evpn_overlay attribute in ain->attr (which is an interned
   attr) was modified by doing a memcpy

3. Above action causes 2 attributes in the attrhash (which were previously different)
   to match!

4. Later during fsm change event of the peer, bgp_adj_in_remove() is called
   to clean up the ain->attr. But, because 2 attrs in attrhash match, it causes
   BGP to assert in bgp_attr_unintern()

Signed-off-by: Pooja Jagadeesh Doijode <email address hidden>
(cherry picked from commit 6e076ba5231cba2e22dcbdc48a9c13df046a2e47)

165ed0b... by Donatas Abraitis <email address hidden>

Merge pull request #13317 from FRRouting/mergify/bp/stable/8.5/pr-13312

zebra: EVPN MH ES-peer Sync MAC installed as inactive (backport #13312)

887362c... by Donatas Abraitis <email address hidden>

Merge pull request #13315 from FRRouting/mergify/bp/stable/8.5/pr-13302

tools: fix missing remote-as configuration when reload (backport #13302)

58ad9b3... by Chirag Shah <email address hidden>

zebra: evpn mh sync mac install as inactive

EVPN MH ES reduendant VTEPs need to install
sync MAC as notify inactive and generate
ND:Proxy stamped extended community on Type-2
route.

Ticket:#3436621
Issue:3436621

Testing Done:

tor-11 originates type-2 MAC route:

tor-11# bridge -d fdb show | grep 00:65:00:00:00:01
00:65:00:00:00:01 dev hostbond1 vlan 1000 notify master bridge static

tor-12 receives sync MAC route:

Before fix:
----------
tor-12:/# bridge -d fdb show | grep 00:65:00:00:00:01
00:65:00:00:00:01 dev hostbond1 vlan 1000 notify master bridge static

After fix: inactive is set to MAC entry
----------
tor-12:/#bridge -d fdb show | grep 00:65:00:00:00:01
00:65:00:00:00:01 dev hostbond1 vlan 1000 notify inactive master bridge
static

Notice the difference in `inactive` post notify on tor-12
with the fix.

Signed-off-by: Trey Aspelund <email address hidden>
Signed-off-by: Chirag Shah <email address hidden>
(cherry picked from commit 4a1f91a366bacc8178afcc3d2712e08a3ba3e1ba)

4218d98... by anlan_cs <email address hidden>

tools: Make check flag really work for reload

The check flag of `found_pg_cmd` is already there, but not used.
So, make it really work for reload.

Signed-off-by: anlan_cs <email address hidden>
(cherry picked from commit 9ea17a5d4978eb3d8ab3d192dd1cc8abf3e414e2)

8cbb683... by anlan_cs <email address hidden>

tools: fix missing remote-as configuration when reload

From commit `411d1a2`, `bgp_delete_nbr_remote_as_line()` is added to
remove some specific bgp neighbors. But, when reloading the following
configuration, it will wrongly remove some good ones:
`neighbor 66.66.66.6 remote-as internal`:

```
router bgp 66
 bgp router-id 172.16.204.6
 neighbor ANLAN peer-group
 neighbor ANLAN remote-as internal
 neighbor 66.66.66.6 remote-as internal <- LOST
 neighbor 66.66.66.60 peer-group ANLAN
```

The reason is that "66.66.66.6" is included in "66.66.66.60" literally,
then it is mistakenly thought to be a match. Just fix it with
excat match.

Signed-off-by: anlan_cs <email address hidden>
(cherry picked from commit a70895e83ae49b15f13e0801e0743d788b0cb595)

c323653... by Donald Sharp <email address hidden>

Merge pull request #13307 from FRRouting/mergify/bp/stable/8.5/pr-13297

ospf6d: missing ECMP NHs in certain topologies (backport #13297)

b1251df... by Donald Sharp <email address hidden>

Merge pull request #13305 from FRRouting/mergify/bp/stable/8.5/pr-13301

bgpd: Fix crash for `show bgp ... neighbor received-routes detail|PREFIX (backport #13301)