]> git.puffer.fish Git - mirror/frr.git/log
mirror/frr.git
2 years agobgpd: Allow `network XXX` to work with bgp suppress-fib-pending 12131/head
Donald Sharp [Wed, 12 Oct 2022 18:53:21 +0000 (14:53 -0400)]
bgpd: Allow `network XXX` to work with bgp suppress-fib-pending

When bgp is using `bgp suppress-fib-pending` and the end
operator is using network statements, bgp was not sending
the network'ed prefix'es to it's peers.  Fix this.

Also update the test cases for bgp_suppress_fib to test
this new corner case( I am sure that there are going to
be others that will need to be added ).

Fixes: #12112
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit 4801fc4670020406fc609dedabc7482d88e3b656)

2 years agoMerge pull request #12119 from FRRouting/mergify/bp/dev/8.4/pr-12108
Donatas Abraitis [Thu, 13 Oct 2022 07:27:31 +0000 (10:27 +0300)]
Merge pull request #12119 from FRRouting/mergify/bp/dev/8.4/pr-12108

General mayhem (backport #12108)

2 years agozebra: Cleanup memory leaks on shutdown 12119/head
Donald Sharp [Tue, 11 Oct 2022 20:26:42 +0000 (16:26 -0400)]
zebra: Cleanup memory leaks on shutdown

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit 54fcc739b8a605c56540bc3ac478d1a15bf0a8c9)

2 years agoripngd: Cleanup memory allocations on shutdown
Donald Sharp [Tue, 11 Oct 2022 20:21:44 +0000 (16:21 -0400)]
ripngd: Cleanup memory allocations on shutdown

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit b1d29673ca16e558aea5d632da181555c83980cf)

2 years agoripd: Cleanup memory allocations on shutdown
Donald Sharp [Tue, 11 Oct 2022 20:21:30 +0000 (16:21 -0400)]
ripd: Cleanup memory allocations on shutdown

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit 3d1588d8ed537e3dbf120e1b2a5ad5b3c00c7897)

2 years agozebra: zrouter.mh_info is leaked on shutdown
Donald Sharp [Tue, 11 Oct 2022 19:22:04 +0000 (15:22 -0400)]
zebra: zrouter.mh_info is leaked on shutdown

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit 823d80d15553ee15777242d3e6185d3dcf0cf04d)

2 years agolib: Free some memory in scripting subsystem at shutdown
Donald Sharp [Tue, 11 Oct 2022 17:21:03 +0000 (13:21 -0400)]
lib: Free some memory in scripting subsystem at shutdown

Pre:
staticd: showing active allocations in memory group libfrr
staticd: memstats:  Scripting                     :     16 * (variably sized)
staticd: memstats:  Hash                          :      2 * (variably sized)
staticd: memstats:  Hash Bucket                   :      8 *         32
staticd: memstats:  Hash Index                    :      1 * (variably sized)
staticd: memstats:  Link List                     :      1 *         40
staticd: memstats:  Link Node                     :      1 *         24
staticd: showing active allocations in memory group logging subsystem
staticd: memstats:  log file target               :      1 *         88
staticd: showing active allocations in memory group staticd

Post:
staticd: showing active allocations in memory group libfrr
staticd: showing active allocations in memory group logging subsystem
staticd: memstats:  log file target               :      1 *         88
staticd: showing active allocations in memory group staticd

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit ca28a0f6faef1e0b547966fef49d6987903684b0)

2 years agostaticd: Clean up zclient on shutdown
Donald Sharp [Tue, 11 Oct 2022 16:57:57 +0000 (12:57 -0400)]
staticd: Clean up zclient on shutdown

The zclient data structure was not being cleaned up on shutdown.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit 08040409cce0f64b9c78e34584b9b915b2620fb5)

2 years agoMerge pull request #12101 from FRRouting/mergify/bp/dev/8.4/pr-12087
Donatas Abraitis [Wed, 12 Oct 2022 20:17:24 +0000 (23:17 +0300)]
Merge pull request #12101 from FRRouting/mergify/bp/dev/8.4/pr-12087

bgpd: fix "no match rpki" in route-map (backport #12087)

2 years agoMerge pull request #12110 from FRRouting/mergify/bp/dev/8.4/pr-12105
Donatas Abraitis [Wed, 12 Oct 2022 20:17:01 +0000 (23:17 +0300)]
Merge pull request #12110 from FRRouting/mergify/bp/dev/8.4/pr-12105

tools: Handle sequence numbers for BGP community (large/ext) in frr-reload.py (backport #12105)

2 years agotools: Apply black formatting for frr-reload.py 12110/head
Donatas Abraitis [Tue, 11 Oct 2022 19:38:30 +0000 (22:38 +0300)]
tools: Apply black formatting for frr-reload.py

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
(cherry picked from commit 63f99a91c8371bb5e03d5dc59d4ec0f197aefc90)

2 years agotools: Handle sequence numbers for BGP community (large/ext) in frr-reload.py
Donatas Abraitis [Tue, 11 Oct 2022 19:36:26 +0000 (22:36 +0300)]
tools: Handle sequence numbers for BGP community (large/ext) in frr-reload.py

If we add/modify community/large/ext lists without sequence numbers, and
doing frr-reload.py, then rules with sequence numbers (show running-config
always adds sequence numbers) will be deleted and new ones will be re-added.

This could lead to blackholing for some time.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
(cherry picked from commit 8bcbee1999176a46cd82b80002e4111c2cdd5084)

2 years agobgpd: fix "no match rpki" in route-map 12101/head
Alexander Chernavin [Mon, 10 Oct 2022 13:17:54 +0000 (13:17 +0000)]
bgpd: fix "no match rpki" in route-map

With this fix, make "no match rpki" in a route-map actually remove the
node in the candidate configuration instead of creating it.

Signed-off-by: Alexander Chernavin <achernavin@netgate.com>
(cherry picked from commit 87c3ed1bf82ae84eae6c9848b4c53de721671401)

2 years agoMerge pull request #12092 from FRRouting/mergify/bp/dev/8.4/pr-12084
Donatas Abraitis [Tue, 11 Oct 2022 09:45:09 +0000 (12:45 +0300)]
Merge pull request #12092 from FRRouting/mergify/bp/dev/8.4/pr-12084

bgpd: fix display bgp large-community exact-match (backport #12084)

2 years agobgpd: fix display bgp large-community exact-match 12092/head
Your Name [Mon, 10 Oct 2022 10:51:27 +0000 (13:51 +0300)]
bgpd: fix display bgp large-community exact-match

Before patch:
frr# show bgp large-community 1:1:1 exact-match
% Large-community malformed

After patch:
frr# show bgp large-community 1:1:1 exact-match

Signed-off-by: Dmitrii Turlupov <dturlupov@factor-ts.ru>
(cherry picked from commit 1857760c1ed38250d6be0d92502f9dc816d4e4cc)

2 years agoMerge pull request #12080 from FRRouting/mergify/bp/dev/8.4/pr-11656
Donatas Abraitis [Sat, 8 Oct 2022 19:20:45 +0000 (22:20 +0300)]
Merge pull request #12080 from FRRouting/mergify/bp/dev/8.4/pr-11656

Some memory (backport #11656)

2 years agoMerge pull request #12067 from FRRouting/mergify/bp/dev/8.4/pr-12060
Donald Sharp [Fri, 7 Oct 2022 19:21:11 +0000 (15:21 -0400)]
Merge pull request #12067 from FRRouting/mergify/bp/dev/8.4/pr-12060

zebra: Allow tunneldump data to work properly on non-supported kernels (backport #12060)

2 years agobgpd: Make sure hdr length is at a minimum of what is expected 12080/head
Donald Sharp [Thu, 21 Jul 2022 12:11:58 +0000 (08:11 -0400)]
bgpd: Make sure hdr length is at a minimum of what is expected

Ensure that if the capability length specified is enough data.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit ff6db1027f8f36df657ff2e5ea167773752537ed)

2 years agoisisd: Ensure rcap is freed in error case
Donald Sharp [Wed, 20 Jul 2022 20:49:09 +0000 (16:49 -0400)]
isisd: Ensure rcap is freed in error case

unpack_tlv_router_cap allocates memory that in the error
case is not being freed.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit 49efc80d342d8e8373c8af040580bd7940808730)

2 years agoospfclient: Ensure ospf_apiclient_lsa_originate cannot accidently write into stack
Donald Sharp [Wed, 20 Jul 2022 20:43:17 +0000 (16:43 -0400)]
ospfclient: Ensure ospf_apiclient_lsa_originate cannot accidently write into stack

Even though OSPF_MAX_LSA_SIZE is quite large and holds the upper bound
on what can be written into a lsa, let's add a small check to ensure
it is not possible to do a bad thing.

This wins one of the long standing bug awards.  2003!

Fixes: #11602
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit d2aeac38708d93fb028d6a53e6eea317f0c06d1b)

2 years agozebra: Allow tunneldump data to work properly on non-supported kernels 12067/head
Donald Sharp [Tue, 4 Oct 2022 12:51:38 +0000 (08:51 -0400)]
zebra: Allow tunneldump data to work properly on non-supported kernels

When zebra requests tunnel data it is sending a RTM_GETTUNNEL per
interface that is a VXLAN tunnel.  If the kernel that is being
used does not support the particular request type then zebra
will get a error message per tunnel request back.  Unfortunately
netlink_parse_info *stops* reading on the first error message.
Therefor one kernels that are returning an error message
let's gather all of those errors.  This will allow things
like route reads to actually work properly

Fixes: #12056
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit 451165eb57cd12795d8260ef927ce3d5ee4af9ed)

2 years agoMerge pull request #12065 from FRRouting/mergify/bp/dev/8.4/pr-11838
Donatas Abraitis [Thu, 6 Oct 2022 09:19:43 +0000 (12:19 +0300)]
Merge pull request #12065 from FRRouting/mergify/bp/dev/8.4/pr-11838

bgpd: BGP does not update next-hop when global V6 address is configured (backport #11838)

2 years agobgpd: BGP does not update next-hop when global V6 address is configured 12065/head
Pdoijode [Thu, 29 Sep 2022 22:28:38 +0000 (15:28 -0700)]
bgpd: BGP does not update next-hop when global V6 address is configured

When primary global v6 unicast address is configured on an
unnumbered interface, BGP does not re-advertise updates out
with the new global v6 address as the nexthop

Signed-off-by: Pdoijode <pdoijode@nvidia.com>
(cherry picked from commit bc6d1b151f45f93ac0cad8fd36f49321eaf56dc1)

2 years agoMerge pull request #12058 from donaldsharp/fabricd_excessive_debugs base_8.4
Donatas Abraitis [Tue, 4 Oct 2022 18:28:27 +0000 (21:28 +0300)]
Merge pull request #12058 from donaldsharp/fabricd_excessive_debugs

fabricd:  Turn off excessive logging when peering will not come up

2 years agoMerge pull request #12061 from mruprich/show-bgp-graceful-restart-typo
Donatas Abraitis [Tue, 4 Oct 2022 18:26:45 +0000 (21:26 +0300)]
Merge pull request #12061 from mruprich/show-bgp-graceful-restart-typo

bgpd: show ip bgp neighbors graceful-restart typo

2 years agobgpd: show ip bgp neighbors graceful-restart typo 12061/head
Michal Ruprich [Tue, 4 Oct 2022 13:14:48 +0000 (15:14 +0200)]
bgpd: show ip bgp neighbors graceful-restart typo

Noticed a typo in the definition of
show_ip_bgp_neighbors_graceful_restart function.

Signed-off-by: Michal Ruprich <mruprich@redhat.com>
2 years agoMerge pull request #12047 from donaldsharp/bgp_nexthop_individual
Russ White [Tue, 4 Oct 2022 11:41:58 +0000 (07:41 -0400)]
Merge pull request #12047 from donaldsharp/bgp_nexthop_individual

bgpd: Fix `show bgp nexthop A.B.C.D`

2 years agofabricd: Turn off excessive logging when peering will not come up 12058/head
Donald Sharp [Tue, 4 Oct 2022 11:28:51 +0000 (07:28 -0400)]
fabricd:  Turn off excessive logging when peering will not come up

When fabricd is configured to use an interface and there will be
no peers out that interface, the log file is filling up with:

Oct 04 10:50:03 host2 fabricd[1444769]: [HHXDJ-1DA93] ISIS-Adj (1): Threeway state change Initializing to Up
Oct 04 10:50:03 host2 fabricd[1444769]: [R18GA-MS9R7] OpenFabric: Started initial synchronization with 1111.1111.1111 on enp1s0f1np1
Oct 04 10:50:06 host2 fabricd[1444769]: [HHXDJ-1DA93] ISIS-Adj (1): Threeway state change Up to Initializing
Oct 04 10:50:07 host2 fabricd[1444769]: [NT6J7-1RYRF] OpenFabric: Initial synchronization on enp1s0f1np1 timed out!
Oct 04 10:50:07 host2 fabricd[1444769]: [R18GA-MS9R7] OpenFabric: Started initial synchronization with 3333.3333.3333 on enp1s0f0np0
Oct 04 10:50:08 host2 fabricd[1444769]: [HHXDJ-1DA93] ISIS-Adj (1): Threeway state change Up to Initializing
Oct 04 10:50:11 host2 fabricd[1444769]: [NT6J7-1RYRF] OpenFabric: Initial synchronization on enp1s0f0np0 timed out!
Oct 04 10:50:11 host2 fabricd[1444769]: [HHXDJ-1DA93] ISIS-Adj (1): Threeway state change Initializing to Up
Oct 04 10:50:11 host2 fabricd[1444769]: [R18GA-MS9R7] OpenFabric: Started initial synchronization with 1111.1111.1111 on enp1s0f1np1
Oct 04 10:50:14 host2 fabricd[1444769]: [HHXDJ-1DA93] ISIS-Adj (1): Threeway state change Up to Initializing
Oct 04 10:50:15 host2 fabricd[1444769]: [NT6J7-1RYRF] OpenFabric: Initial synchronization on enp1s0f1np1 timed out!
Oct 04 10:50:16 host2 fabricd[1444769]: [R18GA-MS9R7] OpenFabric: Started initial synchronization with 1111.1111.1111 on enp1s0f1np1
Oct 04 10:50:18 host2 fabricd[1444769]: [HHXDJ-1DA93] ISIS-Adj (1): Threeway state change Initializing to Up

The `Threeway state change..` message is guarded by a debug, but the other 2 are not.
Let's guard those with debugs since the log will be filled up rather quickly
with any sort of aggressive timers.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #12043 from donaldsharp/bgp_hate
Donatas Abraitis [Sat, 1 Oct 2022 17:40:15 +0000 (20:40 +0300)]
Merge pull request #12043 from donaldsharp/bgp_hate

Bgp hate

2 years agobgpd: Fix `show bgp nexthop A.B.C.D` 12047/head
Donald Sharp [Fri, 30 Sep 2022 18:58:21 +0000 (14:58 -0400)]
bgpd: Fix `show bgp nexthop A.B.C.D`

The issuing of `show bgp nexthop A.B.C.D` fails even if that
nexthop exists:

eva# show bgp nexthop 192.168.119.120
specified nexthop does not have entry

Fixed:

eva# show bgp nexthop 192.168.119.120
 192.168.119.120 valid [IGP metric 0], #paths 0, peer 192.168.119.120
  if enp39s0
  Last update: Fri Sep 30 14:55:13 2022

  Paths:

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agobgpd: Ensure FRR has enough data to read 2 bytes in bgp_open_option_parse 12043/head
Donald Sharp [Fri, 30 Sep 2022 12:57:43 +0000 (08:57 -0400)]
bgpd: Ensure FRR has enough data to read 2 bytes in bgp_open_option_parse

In bgp_open_option_parse the code is checking that the
stream has at least 2 bytes to read ( the opt_type and
the opt_length).  However if BGP_OPEN_EXT_OPT_PARAMS_CAPABLE(peer)
is configured then FRR is reading 3 bytes.  Which is not good
since the packet could be badly formateed.  Ensure that
FRR has the appropriate data length to read the data.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agobgpd: Ensure FRR has enough data to read 2 bytes in peek_for_as4_capability
Donald Sharp [Fri, 30 Sep 2022 12:51:45 +0000 (08:51 -0400)]
bgpd: Ensure FRR has enough data to read 2 bytes in peek_for_as4_capability

In peek_for_as4_capability the code is checking that the
stream has at least 2 bytes to read ( the opt_type and the
opt_length ).  However if BGP_OPEN_EXT_OPT_PARAMS_CAPABLE(peer)
is configured then FRR is reading 3 bytes.  Which is not good
since the packet could be badly formated.  Ensure that
FRR has the appropriate data length to read the data.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #12035 from donaldsharp/pim6_write_non_integrated
Donatas Abraitis [Thu, 29 Sep 2022 11:47:10 +0000 (14:47 +0300)]
Merge pull request #12035 from donaldsharp/pim6_write_non_integrated

pimd: Allow v6 to do non-integrated configuration

2 years agopimd: Remove some unused defines in pimd.h 12035/head
Donald Sharp [Tue, 27 Sep 2022 16:30:26 +0000 (12:30 -0400)]
pimd: Remove some unused defines in pimd.h

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agopimd: Assign a vty port value for v6
Donald Sharp [Tue, 27 Sep 2022 16:29:36 +0000 (12:29 -0400)]
pimd: Assign a vty port value for v6

Let's use 2620

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #12036 from opensourcerouting/fix/show_single_allow-reserved-ranges
Donald Sharp [Wed, 28 Sep 2022 12:24:52 +0000 (08:24 -0400)]
Merge pull request #12036 from opensourcerouting/fix/show_single_allow-reserved-ranges

vtysh: Show allow-reserved-ranges once in config

2 years agoMerge pull request #12028 from mobash-rasool/igmp-querier
Donald Sharp [Tue, 27 Sep 2022 19:45:27 +0000 (15:45 -0400)]
Merge pull request #12028 from mobash-rasool/igmp-querier

pimd: IGMP Querier election is not correct in LAN scenario

2 years agovtysh: Show allow-reserved-ranges once in config 12036/head
Donatas Abraitis [Tue, 27 Sep 2022 18:39:50 +0000 (21:39 +0300)]
vtysh: Show allow-reserved-ranges once in config

Before:

```
donatas-pc# sh run | include allow-reserved-ranges
allow-reserved-ranges
allow-reserved-ranges
allow-reserved-ranges
allow-reserved-ranges
allow-reserved-ranges
allow-reserved-ranges
donatas-pc#
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #11990 from spk-hebbar/patch-1
Donald Sharp [Tue, 27 Sep 2022 16:40:37 +0000 (12:40 -0400)]
Merge pull request #11990 from spk-hebbar/patch-1

Update setup.rst

2 years agopimd: Allow v6 to do non-integrated configuration
Donald Sharp [Tue, 27 Sep 2022 16:24:16 +0000 (12:24 -0400)]
pimd: Allow v6 to do non-integrated configuration

Proof:
eva# conf
eva(config)# no service integrated-vtysh-config
eva(config)# end
eva# wr mem
Note: this version of vtysh never writes vtysh.conf
Building Configuration...
Configuration saved to /etc/frr/zebra.conf
Configuration saved to /etc/frr/ripd.conf
Configuration saved to /etc/frr/ripngd.conf
Configuration saved to /etc/frr/ospfd.conf
Configuration saved to /etc/frr/ospf6d.conf
Configuration saved to /etc/frr/bgpd.conf
Configuration saved to /etc/frr/isisd.conf
Configuration saved to /etc/frr/pimd.conf
Configuration saved to /etc/frr/nhrpd.conf
Configuration saved to /etc/frr/eigrpd.conf
Configuration saved to /etc/frr/babeld.conf
Configuration saved to /etc/frr/sharpd.conf
Configuration saved to /etc/frr/fabricd.conf
Configuration saved to /etc/frr/pbrd.conf
Configuration saved to /etc/frr/staticd.conf
Configuration saved to /etc/frr/bfdd.conf
Configuration saved to /etc/frr/vrrpd.conf
Configuration saved to /etc/frr/pim6d.conf
eva#

Fixes: #12011
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #12018 from pguibert6WIND/pathd_warning_noted
Donald Sharp [Tue, 27 Sep 2022 15:39:46 +0000 (11:39 -0400)]
Merge pull request #12018 from pguibert6WIND/pathd_warning_noted

pathd: change the vty output, when no ted is enabled on pathd

2 years agoMerge pull request #12029 from donaldsharp/cputime_stats
Donatas Abraitis [Tue, 27 Sep 2022 15:39:06 +0000 (18:39 +0300)]
Merge pull request #12029 from donaldsharp/cputime_stats

Cputime stats

2 years agoMerge pull request #11985 from opensourcerouting/fix/thread_off_llgr
Russ White [Tue, 27 Sep 2022 15:29:54 +0000 (11:29 -0400)]
Merge pull request #11985 from opensourcerouting/fix/thread_off_llgr

bgpd: Stop LLGR thread when deleting a peer and/or GR flags changed

2 years agoMerge pull request #12006 from opensourcerouting/fix/doc_for_rfc9072
Russ White [Tue, 27 Sep 2022 15:28:06 +0000 (11:28 -0400)]
Merge pull request #12006 from opensourcerouting/fix/doc_for_rfc9072

doc: Add `neighbor PEER extended-optional-parameters` command

2 years agoMerge pull request #12010 from opensourcerouting/fix/logging_for_route_refresh
Russ White [Tue, 27 Sep 2022 15:27:12 +0000 (11:27 -0400)]
Merge pull request #12010 from opensourcerouting/fix/logging_for_route_refresh

bgpd: Print hostname for peer as well when marking as stale for route-refresh

2 years agoMerge pull request #12016 from opensourcerouting/fix/route_map_show_json
Russ White [Tue, 27 Sep 2022 15:26:28 +0000 (11:26 -0400)]
Merge pull request #12016 from opensourcerouting/fix/route_map_show_json

lib: Fix `show route-map NAME json` command and memory leak

2 years agodoc: Update setup.rst 11990/head
Spoorthi K [Tue, 27 Sep 2022 14:21:42 +0000 (19:51 +0530)]
doc: Update setup.rst

Signed-off-by: Spoorthi K <spk@redhat.com>
2 years agovtysh: Properly handle `service cputime-warning XX` in config 12029/head
Donald Sharp [Tue, 27 Sep 2022 13:05:30 +0000 (09:05 -0400)]
vtysh: Properly handle `service cputime-warning XX` in config

Prevent duplicate lines from each daemon in vtysh output.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agovtysh: Properly handle `[no] service cputime-stats` in config
Donald Sharp [Tue, 27 Sep 2022 13:02:26 +0000 (09:02 -0400)]
vtysh: Properly handle `[no] service cputime-stats` in config

Prevent duplicate lines from each daemon in vtysh output.

Fixes: #12022
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agopimd: IGMP Querier election is not correct in LAN scenario 12028/head
Mobashshera Rasool [Tue, 27 Sep 2022 11:49:34 +0000 (04:49 -0700)]
pimd: IGMP Querier election is not correct in LAN scenario

When more than 2 routers are present in LAN and the querier
goes down, the other routers will wait for other querier
present timer to expire to elect a new querier.
This issue will be seen when the router having next lower ip
address expires the other querier present timer first and it
starts sending the query message. Now on the other non-querier
routers it will receive this query and reset its other
querier present timer but the querier is still the old one
and since it is lowest ip, it never gets updated to the newly
elected querier.

Reset the other querier timer only if query is received from
the previously elected querier or a better new querier
This will make sure that non-querier elects the new querier
whose ip address is higher than the old querier
when the old querier goes down via other querier querier
timer expiry

Issue: #12027

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2 years agoMerge pull request #11989 from maduri111/bgpd-cond-adv-peer-unset
Donatas Abraitis [Tue, 27 Sep 2022 12:03:58 +0000 (15:03 +0300)]
Merge pull request #11989 from maduri111/bgpd-cond-adv-peer-unset

bgpd: conditional advertise-map unset on peer not re-advertising with…

2 years agoMerge pull request #11910 from fdumontet6WIND/NAI_Adj
Olivier Dugeon [Tue, 27 Sep 2022 09:24:53 +0000 (11:24 +0200)]
Merge pull request #11910 from fdumontet6WIND/NAI_Adj

 pathd: nai adjacency fix query type f for IPV6

2 years agoMerge pull request #12009 from AbhishekNR/json_last-member-query-count
Donatas Abraitis [Tue, 27 Sep 2022 06:42:11 +0000 (09:42 +0300)]
Merge pull request #12009 from AbhishekNR/json_last-member-query-count

pim6d: Adding last member query count field in "show ipv6 mld interface [ifname] json" command.

2 years agopathd: change the vty output, when no ted is enabled on pathd 12018/head
Philippe Guibert [Mon, 26 Sep 2022 15:12:02 +0000 (17:12 +0200)]
pathd: change the vty output, when no ted is enabled on pathd

Change the vty output, in case ted is not enabled.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2 years agoMerge pull request #12002 from opensourcerouting/fix/add_doc_missing_bgp_implemented_rf
Donald Sharp [Mon, 26 Sep 2022 13:07:22 +0000 (09:07 -0400)]
Merge pull request #12002 from opensourcerouting/fix/add_doc_missing_bgp_implemented_rf

doc: Update supported BGP RFC list

2 years agoMerge pull request #12000 from opensourcerouting/fix/remove_deprecated_ospf_command
Donald Sharp [Mon, 26 Sep 2022 12:44:40 +0000 (08:44 -0400)]
Merge pull request #12000 from opensourcerouting/fix/remove_deprecated_ospf_command

ospfd: Remove deprecated command `graceful-restart helper-only`

2 years agoMerge pull request #12003 from anlancs/fix/fpm-crash
Donald Sharp [Mon, 26 Sep 2022 12:43:40 +0000 (08:43 -0400)]
Merge pull request #12003 from anlancs/fix/fpm-crash

zebra: fix fpm crash

2 years agolib: Fix `show route-map NAME json` command and memory leak 12016/head
Donatas Abraitis [Mon, 26 Sep 2022 11:49:54 +0000 (14:49 +0300)]
lib: Fix `show route-map NAME json` command and memory leak

JSON object was generated, but not printed, because the function returned
immediatelly, even without freeing the memory.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Print hostname for peer as well when marking as stale for route-refresh 12010/head
Donatas Abraitis [Mon, 26 Sep 2022 08:07:01 +0000 (11:07 +0300)]
bgpd: Print hostname for peer as well when marking as stale for route-refresh

Before:

```
2022/09/26 10:13:35.261 BGP: [QCZ1W-VKS36] 192.168.0.1(r0) sending REFRESH_REQ for afi/safi: IPv4/unicast
2022/09/26 10:13:35.262 BGP: [VF3QY-FP1PP] 192.168.0.1: route-refresh for IPv4/unicast, marking prefix 172.16.1.1/32 as stale
2022/09/26 10:13:35.262 BGP: [VF3QY-FP1PP] 192.168.0.1: route-refresh for IPv4/unicast, marking prefix 192.168.0.0/24 as stale
2022/09/26 10:13:35.262 BGP: [SDZS7-XVC4W] 192.168.0.1(r0) rcvd route-refresh (BoRR) for IPv4/unicast, triggering timer for 360 seconds
2022/09/26 10:13:35.362 BGP: [Y6XKR-PF89P] 192.168.0.1(r0) rcvd route-refresh (EoRR) for IPv4/unicast, stopping BoRR timer
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agopim6d: Adding last member query count field in "show ipv6 mld interface [ifname]... 12009/head
Abhishek N R [Mon, 26 Sep 2022 06:58:51 +0000 (23:58 -0700)]
pim6d: Adding last member query count field in "show ipv6 mld interface [ifname] json" command.

Fixes: #12004
Signed-off-by: Abhishek N R <abnr@vmware.com>
2 years agodoc: Add `neighbor PEER extended-optional-parameters` command 12006/head
Donatas Abraitis [Sun, 25 Sep 2022 18:02:06 +0000 (21:02 +0300)]
doc: Add `neighbor PEER extended-optional-parameters` command

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agodoc: Update supported BGP RFC list 12002/head
Donatas Abraitis [Fri, 23 Sep 2022 19:37:41 +0000 (22:37 +0300)]
doc: Update supported BGP RFC list

Added such RFCs (missing):

https://datatracker.ietf.org/doc/html/rfc2385
https://datatracker.ietf.org/doc/html/rfc2918
https://datatracker.ietf.org/doc/html/rfc4360
https://datatracker.ietf.org/doc/html/rfc4456
https://datatracker.ietf.org/doc/html/rfc4724
https://datatracker.ietf.org/doc/html/rfc4760
https://datatracker.ietf.org/doc/html/rfc5065
https://datatracker.ietf.org/doc/html/rfc5291
https://datatracker.ietf.org/doc/html/rfc5292
https://datatracker.ietf.org/doc/html/rfc6472
https://datatracker.ietf.org/doc/html/rfc5492
https://datatracker.ietf.org/doc/html/rfc7911
https://datatracker.ietf.org/doc/html/rfc6996
https://datatracker.ietf.org/doc/html/rfc6938
https://datatracker.ietf.org/doc/html/rfc8093
https://datatracker.ietf.org/doc/html/rfc7947
https://datatracker.ietf.org/doc/html/rfc9012
https://datatracker.ietf.org/doc/html/rfc8669
https://datatracker.ietf.org/doc/html/rfc8050

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #12001 from donaldsharp/use_integrated
Donatas Abraitis [Sun, 25 Sep 2022 08:44:42 +0000 (11:44 +0300)]
Merge pull request #12001 from donaldsharp/use_integrated

doc: Align docs to recommend integrated config

2 years agobgpd: conditional advertise-map unset on peer fixing warning messages 11989/head
Madhuri Kuruganti [Sun, 25 Sep 2022 06:07:00 +0000 (11:37 +0530)]
bgpd: conditional advertise-map unset on peer fixing warning messages

Signed-off-by: Madhuri Kuruganti <maduri111@gmail.com>
2 years agobgpd: conditional advertise-map unset on peer not re-advertising withdrawn routes
Madhuri Kuruganti [Wed, 21 Sep 2022 16:14:13 +0000 (21:44 +0530)]
bgpd: conditional advertise-map unset on peer not re-advertising withdrawn routes

Signed-off-by: Madhuri Kuruganti <maduri111@gmail.com>
2 years agozebra: fix fpm crash 12003/head
anlan_cs [Sat, 24 Sep 2022 23:00:14 +0000 (19:00 -0400)]
zebra: fix fpm crash

Fix issue#11996.

When removing VRF ( all routes of this VRF), zebra mistakenly forgot to check
whether its routes are in update queue of FPM.  So FPM module will crash during
its dealing with these routes, which are already freed.

Add a new HOOK `rib_shutdown()`, `zebra_rtable_node_cleanup()` will use it
to remove these routes from update queue of FPM module before freeing them.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agodoc: Align docs to recommend integrated config 12001/head
Donald Sharp [Fri, 23 Sep 2022 19:16:40 +0000 (15:16 -0400)]
doc: Align docs to recommend integrated config

Docs were recommending both integrated and non-integrated
config in different sections.  Remove the recommendation
for non-integrated config from vtysh.rst.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoospfd: Remove deprecated command `graceful-restart helper-only` 12000/head
Donatas Abraitis [Fri, 23 Sep 2022 19:10:05 +0000 (22:10 +0300)]
ospfd: Remove deprecated command `graceful-restart helper-only`

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #11982 from samanvithab/bgp_mem_fix
Donatas Abraitis [Fri, 23 Sep 2022 14:54:33 +0000 (17:54 +0300)]
Merge pull request #11982 from samanvithab/bgp_mem_fix

bgpd: multiple memory leak issue fixes

2 years agobgpd: Cleanup memory leaks associated with t_deferral_timer 11982/head
Samanvitha B Bhargav [Wed, 21 Sep 2022 10:18:06 +0000 (03:18 -0700)]
bgpd: Cleanup memory leaks associated with t_deferral_timer

We are allocating temporary memory for information about
what to process in this thread, which is not being cleaned
up on thread cancelling.

Signed-off-by: Samanvitha B Bhargav <bsmanvitha@vmware.com>
2 years agoMerge pull request #11997 from sri-mohan1/sri-zebra-dbg1
Donatas Abraitis [Fri, 23 Sep 2022 07:04:25 +0000 (10:04 +0300)]
Merge pull request #11997 from sri-mohan1/sri-zebra-dbg1

zebra: changes for code maintainability

2 years agozebra: changes for code maintainability 11997/head
sri-mohan1 [Thu, 22 Sep 2022 18:34:40 +0000 (00:04 +0530)]
zebra: changes for code maintainability

these changes are for improving the code maintainability

Signed-off-by: sri-mohan1 <sri.mohan@samsung.com>
2 years agoMerge pull request #11993 from opensourcerouting/feature/printfrr_pRD
Donald Sharp [Thu, 22 Sep 2022 13:30:51 +0000 (09:30 -0400)]
Merge pull request #11993 from opensourcerouting/feature/printfrr_pRD

bgpd: Use %pRD for prefix_rd2str()

2 years agoMerge pull request #11979 from opensourcerouting/fix/stop_conditional_adv_thread
Donald Sharp [Thu, 22 Sep 2022 13:30:01 +0000 (09:30 -0400)]
Merge pull request #11979 from opensourcerouting/fix/stop_conditional_adv_thread

bgpd: Stop conditional advertisements thread when terminating

2 years agobgpd: Use %pRD for prefix_rd2str() 11993/head
Donatas Abraitis [Thu, 22 Sep 2022 08:17:49 +0000 (11:17 +0300)]
bgpd: Use %pRD for prefix_rd2str()

Convert a bunch of prefix_rd2str() for json/vty stuff.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Stop conditional advertisements thread when terminating 11979/head
Donatas Abraitis [Tue, 20 Sep 2022 20:47:55 +0000 (23:47 +0300)]
bgpd: Stop conditional advertisements thread when terminating

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #11986 from opensourcerouting/fix/drop_outdated_files
Donald Sharp [Wed, 21 Sep 2022 16:56:25 +0000 (12:56 -0400)]
Merge pull request #11986 from opensourcerouting/fix/drop_outdated_files

bgpd: Drop out-of-date files

2 years agobgpd: Drop out-of-date files 11986/head
Donatas Abraitis [Wed, 21 Sep 2022 14:21:31 +0000 (17:21 +0300)]
bgpd: Drop out-of-date files

Just not maintained for > 18 years.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #11977 from opensourcerouting/fix/docker_alpine_apk
Donald Sharp [Wed, 21 Sep 2022 14:15:49 +0000 (10:15 -0400)]
Merge pull request #11977 from opensourcerouting/fix/docker_alpine_apk

docker: Keep and copy .apk files after they are built

2 years agobgpd: Stop LLGR thread when deleting a peer and/or GR flags changed 11985/head
Donatas Abraitis [Wed, 21 Sep 2022 14:13:28 +0000 (17:13 +0300)]
bgpd: Stop LLGR thread when deleting a peer and/or GR flags changed

Also valid when shutting down a BGP instance.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: memory leak issue fix
Samanvitha B Bhargav [Wed, 21 Sep 2022 08:57:09 +0000 (01:57 -0700)]
bgpd: memory leak issue fix

Memory allocated when 'import vrf route maps <>' is configured,
wasn't being freed when the entire bgp config
was deleted through 'no router bgp'.

Signed-off-by: Samanvitha B Bhargav <bsmanvitha@vmware.com>
2 years agobgpd: memory leak issue fix
Samanvitha B Bhargav [Wed, 21 Sep 2022 08:45:41 +0000 (01:45 -0700)]
bgpd: memory leak issue fix

In ecommunity_del_val(), ecommunity was not being freed
when the last value in the ecommunity was being deleted.

Signed-off-by: Samanvitha B Bhargav <bsmanvitha@vmware.com>
2 years agobgpd: memory leak issue fix
Samanvitha B Bhargav [Wed, 21 Sep 2022 07:54:14 +0000 (00:54 -0700)]
bgpd: memory leak issue fix

When router id is changed through config, new RD is auto generated.
However new export RT was being assigned without freeing
the older RT from VRF.

Signed-off-by: Samanvitha B Bhargav <bsmanvitha@vmware.com>
2 years agoMerge pull request #11802 from AbhishekNR/ttable_pim_state
Donatas Abraitis [Wed, 21 Sep 2022 08:00:40 +0000 (11:00 +0300)]
Merge pull request #11802 from AbhishekNR/ttable_pim_state

pimd, pim6d: Using ttable for displaying "show ip/ipv6 pim state" command output.

2 years agoMerge pull request #11918 from patrasar/show_ipv6_mld_interface_fix
Donatas Abraitis [Wed, 21 Sep 2022 07:19:33 +0000 (10:19 +0300)]
Merge pull request #11918 from patrasar/show_ipv6_mld_interface_fix

pim6d: "show ipv6 mld interface" command

2 years agoMerge pull request #11968 from donaldsharp/isis_plist_mem_leak
mobash-rasool [Wed, 21 Sep 2022 02:52:33 +0000 (08:22 +0530)]
Merge pull request #11968 from donaldsharp/isis_plist_mem_leak

isisd: Fix memory leak on shutdown with prefix lists

2 years agodocker: Keep and copy .apk files after they are built 11977/head
Donatas Abraitis [Tue, 20 Sep 2022 20:23:55 +0000 (23:23 +0300)]
docker: Keep and copy .apk files after they are built

For debugging purposes and/or to distribute them somewhere else.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #11972 from pguibert6WIND/mpls_te_on
Donald Sharp [Tue, 20 Sep 2022 16:16:56 +0000 (12:16 -0400)]
Merge pull request #11972 from pguibert6WIND/mpls_te_on

pathd: 'no mpls-te on' command was not working

2 years agoMerge pull request #11952 from anlancs/fix/cleanup-20
Russ White [Tue, 20 Sep 2022 15:17:32 +0000 (11:17 -0400)]
Merge pull request #11952 from anlancs/fix/cleanup-20

include: clean up some white spaces

2 years agoMerge pull request #11956 from opensourcerouting/fix/bgpd_unlocks
Russ White [Tue, 20 Sep 2022 15:17:03 +0000 (11:17 -0400)]
Merge pull request #11956 from opensourcerouting/fix/bgpd_unlocks

bgpd: Don't forget bgp_dest_unlock_node before return

2 years agoisisd: Fix memory leak on shutdown with prefix lists 11968/head
Donald Sharp [Mon, 19 Sep 2022 16:34:18 +0000 (12:34 -0400)]
isisd: Fix memory leak on shutdown with prefix lists

==2623619==
==2623619== 6 bytes in 1 blocks are definitely lost in loss record 3 of 75
==2623619==    at 0x483877F: malloc (vg_replace_malloc.c:307)
==2623619==    by 0x4B55E4A: strdup (strdup.c:42)
==2623619==    by 0x493C992: qstrdup (memory.c:128)
==2623619==    by 0x1A9212: isis_instance_fast_reroute_level_1_remote_lfa_prefix_list_modify (isis_nb_config.c:1599)
==2623619==    by 0x494837C: nb_callback_modify (northbound.c:1083)
==2623619==    by 0x4948C6E: nb_callback_configuration (northbound.c:1352)
==2623619==    by 0x494919D: nb_transaction_process (northbound.c:1473)
==2623619==    by 0x4947DA9: nb_candidate_commit_apply (northbound.c:906)
==2623619==    by 0x4947EBA: nb_candidate_commit (northbound.c:938)
==2623619==    by 0x494EB9E: nb_cli_classic_commit (northbound_cli.c:64)
==2623619==    by 0x494F3DC: nb_cli_apply_changes_internal (northbound_cli.c:250)
==2623619==    by 0x494F4E2: nb_cli_apply_changes (northbound_cli.c:268)
==2623619==    by 0x1BEF0F: isis_frr_remote_lfa_plist_magic (isis_cli.c:1899)
==2623619==    by 0x1B7636: isis_frr_remote_lfa_plist (isis_cli_clippy.c:3406)
==2623619==    by 0x48EBA75: cmd_execute_command_real (command.c:997)
==2623619==    by 0x48EBD4E: cmd_execute_command_strict (command.c:1108)
==2623619==    by 0x48EC1E6: command_config_read_one_line (command.c:1268)
==2623619==    by 0x48EC35B: config_from_file (command.c:1313)
==2623619==    by 0x4999CC1: vty_read_file (vty.c:2347)
==2623619==    by 0x499A4AF: vty_read_config (vty.c:2567)
==2623619==    by 0x4924B12: frr_config_read_in (libfrr.c:984)
==2623619==    by 0x498F5E3: thread_call (thread.c:2008)
==2623619==    by 0x49253DA: frr_run (libfrr.c:1198)
==2623619==    by 0x14FC53: main (isis_main.c:273)

Fix this memory leak

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #11954 from opensourcerouting/fix/ecommunity_memory_leak
Donald Sharp [Tue, 20 Sep 2022 12:18:47 +0000 (08:18 -0400)]
Merge pull request #11954 from opensourcerouting/fix/ecommunity_memory_leak

bgpd: Free ecommunity before returning on warning/error

2 years agopathd: 'no mpls-te on' command was not working 11972/head
Philippe Guibert [Thu, 15 Sep 2022 15:18:42 +0000 (17:18 +0200)]
pathd: 'no mpls-te on' command was not working

Fix the 'no mpls-te on' command.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2 years agoMerge pull request #11971 from opensourcerouting/fix/coccinelle_route_map_apply
Donald Sharp [Tue, 20 Sep 2022 11:32:22 +0000 (07:32 -0400)]
Merge pull request #11971 from opensourcerouting/fix/coccinelle_route_map_apply

bgpd: Use route_map_result_t for route_map_apply() as return type

2 years agobgpd: Use route_map_result_t for route_map_apply() as return type 11971/head
Donatas Abraitis [Tue, 20 Sep 2022 07:45:02 +0000 (10:45 +0300)]
bgpd: Use route_map_result_t for route_map_apply() as return type

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #11958 from AbhishekNR/ttable_show
Donatas Abraitis [Tue, 20 Sep 2022 06:47:09 +0000 (09:47 +0300)]
Merge pull request #11958 from AbhishekNR/ttable_show

pimd, pim6d: Using ttable for displaying show command outputs

2 years agoMerge pull request #11872 from AbhishekNR/const_igmp_gm
Donatas Abraitis [Mon, 19 Sep 2022 14:48:24 +0000 (17:48 +0300)]
Merge pull request #11872 from AbhishekNR/const_igmp_gm

pimd, pim6d: Changing IGMP to GM in few macro's.

2 years agoMerge pull request #11940 from sri-mohan1/sri-zebra-dbg1
Mark Stapp [Mon, 19 Sep 2022 14:43:38 +0000 (10:43 -0400)]
Merge pull request #11940 from sri-mohan1/sri-zebra-dbg1

zebra: changes for code maintainability

2 years agoMerge pull request #11953 from AbhishekNR/issue_11925
Donatas Abraitis [Mon, 19 Sep 2022 14:37:04 +0000 (17:37 +0300)]
Merge pull request #11953 from AbhishekNR/issue_11925

pim6d: (*,G) mroutes not learnt after pim6d daemon restart

2 years agoMerge pull request #11945 from leonshaw/bgp-refresh-eor
Donatas Abraitis [Mon, 19 Sep 2022 14:32:46 +0000 (17:32 +0300)]
Merge pull request #11945 from leonshaw/bgp-refresh-eor

bgpd: Handle route-refresh request received before EoR