]> git.proxmox.com Git - mirror_frr.git/log
mirror_frr.git
2 years agoMerge pull request #10853 from plsaranya/pim_assert_fixes
Donald Sharp [Wed, 20 Apr 2022 11:57:40 +0000 (07:57 -0400)]
Merge pull request #10853 from plsaranya/pim_assert_fixes

pimd: assert fixes

2 years agoMerge pull request #10961 from opensourcerouting/build-ms-ext
Donald Sharp [Wed, 20 Apr 2022 11:51:45 +0000 (07:51 -0400)]
Merge pull request #10961 from opensourcerouting/build-ms-ext

build: enable `-fms-extensions`

2 years agoMerge pull request #11052 from opensourcerouting/fix/log_dir_permissions
Donald Sharp [Wed, 20 Apr 2022 11:45:08 +0000 (07:45 -0400)]
Merge pull request #11052 from opensourcerouting/fix/log_dir_permissions

packaging: A couple of fixes for /var/log/frr

2 years agoMerge pull request #11023 from AbhishekNR/igmp_flag
Donald Sharp [Wed, 20 Apr 2022 11:43:09 +0000 (07:43 -0400)]
Merge pull request #11023 from AbhishekNR/igmp_flag

pimd: Changing PIM_OIF_FLAG_PROTO_IGMP to PIM_OIF_FLAG_PROTO_GM

2 years agoMerge pull request #11051 from donaldsharp/speell_more
Donatas Abraitis [Wed, 20 Apr 2022 08:04:14 +0000 (11:04 +0300)]
Merge pull request #11051 from donaldsharp/speell_more

Speell more

2 years agoMerge pull request #11045 from anlancs/fix/bgpd-cleanup-8-remove
mobash-rasool [Wed, 20 Apr 2022 07:58:17 +0000 (13:28 +0530)]
Merge pull request #11045 from anlancs/fix/bgpd-cleanup-8-remove

zebra: cleanup duplicated "extern"s for evpn-mh

2 years agoMerge pull request #11046 from opensourcerouting/fix/issue_template
Donald Sharp [Wed, 20 Apr 2022 00:01:54 +0000 (20:01 -0400)]
Merge pull request #11046 from opensourcerouting/fix/issue_template

github: Use checkboxes for issue templates

2 years agoMerge pull request #11048 from opensourcerouting/fix/fsync_before_fclose
Donald Sharp [Tue, 19 Apr 2022 22:37:18 +0000 (18:37 -0400)]
Merge pull request #11048 from opensourcerouting/fix/fsync_before_fclose

vtysh: Call fflush+fsync before calling fclose() when saving the config

2 years agoMerge pull request #11004 from volodymyrhuti/master
Donald Sharp [Tue, 19 Apr 2022 22:36:52 +0000 (18:36 -0400)]
Merge pull request #11004 from volodymyrhuti/master

zebra: set ZEBRA_IFC_DOWN on connected routes for inactive interfaces

2 years agozebra: set ZEBRA_IFC_DOWN on connected routes for inactive interfaces
Volodymyr Huti [Mon, 11 Apr 2022 03:58:14 +0000 (06:58 +0300)]
zebra: set ZEBRA_IFC_DOWN on connected routes for inactive interfaces

If you are in a situation where you have multiple addresses on an
interface, zebra creates one connected route for them.
The issue is that the rib entry is not created if addresses were
added before the interface was running.

We add the address to a running interface in a typical flow.
Therefore, we handle the route & rib creation within a single ADD event.
In the opposite case, we create the route entries without activating them.
These are considered to be active since ZEBRA_IFC_DOWN is not set.
On the following interface UP, we ignore the same ADDR_ADD as it overlaps
with the existing prefixes -> rib is never created.

The minimal reproducible setup:
-----------------------------------------
ip link add name dummy0 type dummy
ip addr flush dev dummy0
ip link set dummy0 down
ip addr add 192.168.1.7/24 dev dummy0
ip addr add 192.168.1.8/24 dev dummy0
ip link set dummy0 up
vtysh -c 'show ip route' | grep dummy0

Signed-off-by: Volodymyr Huti <v.huti@vyos.io>
2 years agoMerge pull request #11050 from opensourcerouting/fix/pathd_missing
Donald Sharp [Tue, 19 Apr 2022 18:57:46 +0000 (14:57 -0400)]
Merge pull request #11050 from opensourcerouting/fix/pathd_missing

packaging: Add pathd to logrotate

2 years agoMerge pull request #11049 from opensourcerouting/fix/usage_for_frrinit.sh
Donald Sharp [Tue, 19 Apr 2022 18:57:03 +0000 (14:57 -0400)]
Merge pull request #11049 from opensourcerouting/fix/usage_for_frrinit.sh

tools: Print usage for frrinit.sh when running without arguments

2 years agopackaging: Add pathd to logrotate
Donatas Abraitis [Tue, 19 Apr 2022 11:55:42 +0000 (14:55 +0300)]
packaging: Add pathd to logrotate

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #10908 from donaldsharp/proto_only_error
mobash-rasool [Tue, 19 Apr 2022 15:57:29 +0000 (21:27 +0530)]
Merge pull request #10908 from donaldsharp/proto_only_error

zebra: When `zebra nexthop proto only` limit errors

2 years agoMerge pull request #10977 from bobuhiro11/alloc_sid_based_on_prefix
Russ White [Tue, 19 Apr 2022 15:17:57 +0000 (11:17 -0400)]
Merge pull request #10977 from bobuhiro11/alloc_sid_based_on_prefix

bgpd: take SRv6 locator's prefix length into account when generating SIDs

2 years agoMerge pull request #10983 from pguibert6WIND/show_isis_nbr_bfd
Russ White [Tue, 19 Apr 2022 15:17:31 +0000 (11:17 -0400)]
Merge pull request #10983 from pguibert6WIND/show_isis_nbr_bfd

isisd: add bfd information on isis neighbor show command

2 years agoMerge pull request #11030 from ranjanyash54/minls
Russ White [Tue, 19 Apr 2022 15:13:05 +0000 (11:13 -0400)]
Merge pull request #11030 from ranjanyash54/minls

ospf6d: Check for MinLSInterval timer when adding to LSUpdate list

2 years agoMerge pull request #11040 from donaldsharp/bgp_type5_route_handling
Donatas Abraitis [Tue, 19 Apr 2022 14:35:22 +0000 (17:35 +0300)]
Merge pull request #11040 from donaldsharp/bgp_type5_route_handling

bgpd: Allow type 5 routes to be handled better when link is flapping

2 years agopackaging: Use 0640 (frr:frr) as permissions when running under logrotate
Donatas Abraitis [Tue, 19 Apr 2022 13:45:03 +0000 (16:45 +0300)]
packaging: Use 0640 (frr:frr) as permissions when running under logrotate

When we do "log file /var/log/frr/something", permissions are set to
0640 (frr:frr), but when the logrotate kicks in, we have 0640 (frr:frrvty).

I believe, we should have a consistent permissions.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agopackaging: Set default permissions for /var/log/frr to 0755
Donatas Abraitis [Tue, 19 Apr 2022 11:53:55 +0000 (14:53 +0300)]
packaging: Set default permissions for /var/log/frr to 0755

At the moment we set /var/log/frr permissions to 0750 (frr:frr), but the log
file is 0640 (root:adm) (unless logrotated) and that doesn't allow adm group
to even open the directory.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years ago*: Fix spelling of accidently
Donald Sharp [Tue, 19 Apr 2022 12:31:30 +0000 (08:31 -0400)]
*: Fix spelling of accidently

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of accomodate
Donald Sharp [Tue, 19 Apr 2022 12:29:58 +0000 (08:29 -0400)]
*: Fix spelling of accomodate

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agodoc: Fix spelling of choosen
Donald Sharp [Tue, 19 Apr 2022 12:28:47 +0000 (08:28 -0400)]
doc: Fix spelling of choosen

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agotests: Fix spelling of conjuction
Donald Sharp [Tue, 19 Apr 2022 12:28:09 +0000 (08:28 -0400)]
tests: Fix spelling of conjuction

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of overriden
Donald Sharp [Tue, 19 Apr 2022 12:27:02 +0000 (08:27 -0400)]
*: Fix spelling of overriden

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of Verfiy
Donald Sharp [Tue, 19 Apr 2022 12:26:00 +0000 (08:26 -0400)]
*: Fix spelling of Verfiy

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of atleast
Donald Sharp [Tue, 19 Apr 2022 12:25:03 +0000 (08:25 -0400)]
*: Fix spelling of atleast

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agotests: Fix spelling of Initilized
Donald Sharp [Tue, 19 Apr 2022 12:22:47 +0000 (08:22 -0400)]
tests: Fix spelling of Initilized

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of inteface
Donald Sharp [Tue, 19 Apr 2022 12:21:31 +0000 (08:21 -0400)]
*: Fix spelling of inteface

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of modifed
Donald Sharp [Tue, 19 Apr 2022 12:20:37 +0000 (08:20 -0400)]
*: Fix spelling of modifed

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of strucutre
Donald Sharp [Tue, 19 Apr 2022 12:19:37 +0000 (08:19 -0400)]
*: Fix spelling of strucutre

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of comparision
Donald Sharp [Tue, 19 Apr 2022 12:18:43 +0000 (08:18 -0400)]
*: Fix spelling of comparision

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of modfiy
Donald Sharp [Tue, 19 Apr 2022 12:17:58 +0000 (08:17 -0400)]
*: Fix spelling of modfiy

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of non-existant
Donald Sharp [Tue, 19 Apr 2022 12:16:45 +0000 (08:16 -0400)]
*: Fix spelling of non-existant

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of seperator
Donald Sharp [Tue, 19 Apr 2022 12:15:23 +0000 (08:15 -0400)]
*: Fix spelling of seperator

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of specifed
Donald Sharp [Tue, 19 Apr 2022 12:12:43 +0000 (08:12 -0400)]
*: Fix spelling of specifed

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years ago*: Fix spelling of neccessary
Donald Sharp [Tue, 19 Apr 2022 12:11:29 +0000 (08:11 -0400)]
*: Fix spelling of neccessary

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agotests: Fix spelling of 'registred'
Donald Sharp [Tue, 19 Apr 2022 12:09:36 +0000 (08:09 -0400)]
tests: Fix spelling of 'registred'

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agotools: Print usage for frrinit.sh when running without arguments
Donatas Abraitis [Tue, 19 Apr 2022 11:21:21 +0000 (14:21 +0300)]
tools: Print usage for frrinit.sh when running without arguments

```
root@spine1-debian-11:~/frr# /usr/lib/frr/frrinit.sh
Usage:
    /usr/lib/frr/frrinit.sh (start|stop|restart|force-reload|reload|status)
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agovtysh: Call fflush+fsync before calling fclose() when saving the config
Donatas Abraitis [Tue, 19 Apr 2022 11:01:13 +0000 (14:01 +0300)]
vtysh: Call fflush+fsync before calling fclose() when saving the config

A safety check we flushed the data to the storage.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agogithub: Use checkboxes for issue templates
Donatas Abraitis [Tue, 19 Apr 2022 10:23:22 +0000 (13:23 +0300)]
github: Use checkboxes for issue templates

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #11012 from anlancs/bgpd-mh-simplify-condition
Donatas Abraitis [Tue, 19 Apr 2022 10:04:43 +0000 (13:04 +0300)]
Merge pull request #11012 from anlancs/bgpd-mh-simplify-condition

zebra: simplify one check for evpn-mh

2 years agoMerge pull request #11043 from mobash-rasool/spell-fix
Donatas Abraitis [Tue, 19 Apr 2022 09:50:12 +0000 (12:50 +0300)]
Merge pull request #11043 from mobash-rasool/spell-fix

pimd, pim6d: Spelling fixes

2 years agozebra: cleanup duplicated "extern"s for evpn-mh
anlan_cs [Tue, 19 Apr 2022 08:57:59 +0000 (04:57 -0400)]
zebra: cleanup duplicated "extern"s for evpn-mh

There are some duplicated `extern`s in this header
file, just remove them.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agopim6d: Correct the spelling of Rendezvous
Mobashshera Rasool [Tue, 19 Apr 2022 06:15:34 +0000 (23:15 -0700)]
pim6d: Correct the spelling of Rendezvous

Rendevous --> Rendezvous
Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2 years agopimd: Correct the spelling of Rendezvous
Mobashshera Rasool [Tue, 19 Apr 2022 06:13:17 +0000 (23:13 -0700)]
pimd: Correct the spelling of Rendezvous

Rendevous --> Rendezvous
Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2 years agoMerge pull request #10993 from donaldsharp/more_watchfrr_info
Jafar Al-Gharaibeh [Tue, 19 Apr 2022 03:43:35 +0000 (22:43 -0500)]
Merge pull request #10993 from donaldsharp/more_watchfrr_info

watchfrr: Add some more information to `show watchfrr`

2 years agoMerge pull request #11032 from anlancs/fix/bgpd-evpn-mh-null-debug
Jafar Al-Gharaibeh [Tue, 19 Apr 2022 03:42:03 +0000 (22:42 -0500)]
Merge pull request #11032 from anlancs/fix/bgpd-evpn-mh-null-debug

bgpd: fix NULL deference in evpn-mh's log

2 years agoMerge pull request #11029 from rampxxxx/isis_mtu
Igor Ryzhov [Mon, 18 Apr 2022 23:17:25 +0000 (02:17 +0300)]
Merge pull request #11029 from rampxxxx/isis_mtu

2 years agobgpd: Allow type 5 routes to be handled better when link is flapping
Donald Sharp [Mon, 18 Apr 2022 18:06:26 +0000 (14:06 -0400)]
bgpd: Allow type 5 routes to be handled better when link is flapping

In some stress testing, we are seeing type-5 evpn routes being
left in a rejected state in zebra.

Sequence of events as I am seeing it:

a) Interface comes up that type5 routes nexthop depends on
b) zebra processes creates the connected and lets bgp know via nht
c) bgp installs the route to zebra
d) zebra processes and sends install to kernel
e) before route is installed, the interface the nexthop points at flaps
f) the route install is rejected, notify zebra
g) the interface comes up
h) zebra gets the notification about the route install rejection
i) zebra processes the down/up and turns it into a single up event
j) BGP never reinstalls the type 5 route

This up event does not translate into a nexthop tracking event
when the events happen quickly enough and/or zebra is extremelyh
busy and bgp would never see that the nexthops changed even very quickly.

This is the same thing that was going on with
https://github.com/FRRouting/frr/pull/7724
in PBR.

To fix this let's notice the interface up/down events for v4
in bgp now as well.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoisisd: Fix crash in ISIS when mtu mismatch occurs
lynnemorrison [Wed, 13 Apr 2022 20:07:44 +0000 (16:07 -0400)]
isisd: Fix crash in ISIS when mtu mismatch occurs

When lsp-mtu is configured larger than interface mtu and the interface
is brought up, the ISIS code would crash. When other vendors have this
misconfiguration they just continue ISIS running and allow the LSP
packets to be created but not sent. When the misconfiguration is corrected
the LSP packets start being sent. This change creates that same behavior
in FRR.

The startup issue I am hitting is when the isis lsp-mtu is larger that the interfaces mtu.
We run into this case when we are in the process of changing the mtu on a tunnel.
I issue a shutdown/no shutdown on the interface, because the tunnel MTU is smaller
than the lsp-mtu, it is considered an error and calls circuit_if_del. This deletes
part of the circuit information, which includes the circuit->ip_addr list. Later on we get
an address update from zebra and try to add the interface address to this list and crash.

2022/04/07 20:19:52.032 ISIS: [GTRPJ-X68CG] CSM_EVENT for tun_gw2: IF_UP_FROM_Z
calls isis_circuit_if_add
this initialize the circuit->ip_addrs
isis_circuit_up
has the mtu check circuit->area->lsp_mtu > isis_circuit_pdu_size(circuit) and fails
returns ISIS_ERROR
on failure call isis_circuit_if_del
this deletes the circiut->ip_addrs list <----

2022/04/07 20:19:52.032 ZEBRA: [NXYHN-ZKW2V] zebra_if_addr_update_ctx: INTF_ADDR_ADD: ifindex 3, addr 192.168.0.1/24
message to isisd to add address
isis_zebra_if_address_add
isis_circuit_add_addr
circuit->ip_addr we try to add the ip address to the list, but it was deleted above and isisd crashes

Signed-off-by: Lynne Morrison <lynne.morrison@ibm.com>
2 years agoMerge pull request #11001 from donaldsharp/system_route_recursion
Russ White [Mon, 18 Apr 2022 13:47:47 +0000 (09:47 -0400)]
Merge pull request #11001 from donaldsharp/system_route_recursion

zebra: Allow system routes to recurse through themselves

2 years agozebra: When `zebra nexthop proto only` limit errors
Donald Sharp [Mon, 28 Mar 2022 11:35:53 +0000 (07:35 -0400)]
zebra: When `zebra nexthop proto only` limit errors

Operators are seeing:

Mar 28 07:19:37 kingpin zebra[418]: [TZANK-DEMSE] netlink_nexthop_msg_encode: nhg_id 68 (zebra): proto-based nexthops only, ignoring
Mar 28 07:19:37 kingpin zebra[418]: [TZANK-DEMSE] netlink_nexthop_msg_encode: nhg_id 68 (zebra): proto-based nexthops only, ignoring
Mar 28 07:19:37 kingpin zebra[418]: [YXPF5-B2CE0] netlink_route_multipath_msg_encode: RTM_DELROUTE 2804:4d48:4000::/42 vrf 0(254)
Mar 28 07:19:37 kingpin zebra[418]: [YXPF5-B2CE0] netlink_route_multipath_msg_encode: RTM_NEWROUTE 2804:4d48:4000::/42 vrf 0(254)
Mar 28 07:19:37 kingpin zebra[418]: [TVM3E-A8ZAG] _netlink_route_build_singlepath: (single-path): 2804:4d48:4000::/42 nexthop via fe80::b6fb:e4ff:fe26:c5d5  if 2 vrf default(0)
Mar 28 07:19:37 kingpin zebra[418]: [HYEHE-CQZ9G] nl_batch_send: netlink-dp (NS 0), batch size=140, msg cnt=2
Mar 28 07:19:37 kingpin zebra[418]: [P2XBZ-RAFQ5][EC 4043309074] Failed to install Nexthop ID (68) into the kernel

When `zebra nexthop proto only` is turned on.

Effectively zebra intentionally does not do the nexthop group installation
and the dplane notification in zebra_nhg.c just assumes it was a failure
and prints an error message.  Since this act was intentional, let's
just notice that it was intentional and not report the message
as a failure.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agowatchfrr: Add some more information to `show watchfrr`
Donald Sharp [Wed, 6 Apr 2022 13:18:47 +0000 (09:18 -0400)]
watchfrr: Add some more information to `show watchfrr`

To allow people to know the state of watchfrr from vtysh,
let's add a bit more data to the output.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoospf6d: Check for MinLSInterval timer when adding to LSUpdate list
Yash Ranjan [Mon, 21 Mar 2022 11:30:22 +0000 (04:30 -0700)]
ospf6d: Check for MinLSInterval timer when adding to LSUpdate list

A router has some static routes and redistributes turned on.
"clear ipv6 ospf process" command is applied. Then static routes
are deleted. In 1 in 5 runs, AS-External LSAs are not getting removed
from the neighbors even though it gets removed from its own LSDB.

Because of the clear process command, MAX_AGE LSAs are advertised and
fresh LSAs are installed in the LSDB. When the MAX_LSAs are advertised
back to the same router as part of the flooding process, it gets added
to the LSUpdate list even though it comes inside the MinLSArrival time.
When the static routes get deleted, it removed the LSA from the
LSRetrans list but not from LSUpdate list. The LSAs present in the
LSUpdate list gets advertised when sending LS Updates.

When an old copy of an LSA is more recent than the new LSA, check if it
has come inside the MinLSArrival time before adding to the LSUpdate
list.

Signed-off-by: Yash Ranjan <ranjany@vmware.com>
2 years agoMerge pull request #11028 from ton31337/fix/pass_non_transitive_communities_via_rsclient
Russ White [Fri, 15 Apr 2022 20:04:04 +0000 (16:04 -0400)]
Merge pull request #11028 from ton31337/fix/pass_non_transitive_communities_via_rsclient

bgpd: Pass non-transitive ext-communities between Route Server and RS clients

2 years agobgpd: fix NULL deference in evpn-mh's log
anlan_cs [Thu, 14 Apr 2022 07:45:48 +0000 (03:45 -0400)]
bgpd: fix NULL deference in evpn-mh's log

Fix NULL deference issue in log. And change one word - "vtep",
it should be with lowercase letters like other places.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agobgpd: take SRv6 locator's prefix length into account when generating SIDs
Nobuhiro MIKI [Thu, 7 Apr 2022 07:09:02 +0000 (16:09 +0900)]
bgpd: take SRv6 locator's prefix length into account when generating SIDs

Until now, it has been hard-coded that the position at which the label
is inserted is from the 64th bits. Therefore, when the Locator prefix
was not /64, incorrect SIDs were generated. Also, SIDs are generated
in duplicate on Lines 604 & 613 in bgpd/bgp_mplsvpn.c.

In this patch, the position where the label is inserted is calculated
based on the sum of block_bits_length and node_bits_length (i.e., the
user-specified Locator prefix length). In addition, SID generation is
performed at one location in alloc_new_sid.

Signed-off-by: Nobuhiro MIKI <nmiki@yahoo-corp.jp>
2 years agobgpd: Pass non-transitive ext-communities between Route Server and RS clients
Donatas Abraitis [Wed, 13 Apr 2022 17:40:30 +0000 (20:40 +0300)]
bgpd: Pass non-transitive ext-communities between Route Server and RS clients

https://datatracker.ietf.org/doc/html/rfc7947#section-2.2

Optional recognized and unrecognized BGP attributes,
   whether transitive or non-transitive, SHOULD NOT be updated by the
   route server (unless enforced by local IXP operator configuration)
   and SHOULD be passed on to other route server clients.

By default LB ext-community works with iBGP peers. When we receive a route
from eBGP peer, we can send LB ext-community to iBGP peers.

With this patch, allow sending LB ext-community to iBGP/eBGP peers if they
are set as RS clients.

FRR does not send non-transitive ext-communities to eBGP peers, but for
example GoBGP sends and if it's set as RS client, we should pass those attributes
towards another RS client.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: fix memory leak
Nobuhiro MIKI [Thu, 7 Apr 2022 06:54:03 +0000 (15:54 +0900)]
bgpd: fix memory leak

Signed-off-by: Nobuhiro MIKI <nmiki@yahoo-corp.jp>
2 years agoMerge pull request #10910 from donaldsharp/doc_nht
Sri Mohana Singamsetty [Wed, 13 Apr 2022 19:28:43 +0000 (12:28 -0700)]
Merge pull request #10910 from donaldsharp/doc_nht

doc: Add `show ip nht..` documentation

2 years agoMerge pull request #10978 from anlancs/bgpd-cleanup-6
Russ White [Wed, 13 Apr 2022 19:27:39 +0000 (15:27 -0400)]
Merge pull request #10978 from anlancs/bgpd-cleanup-6

bgpd: cosmetic change for evpn-mh

2 years agoMerge pull request #10996 from donaldsharp/watchfrr_systemd_interactions
Sri Mohana Singamsetty [Wed, 13 Apr 2022 19:26:15 +0000 (12:26 -0700)]
Merge pull request #10996 from donaldsharp/watchfrr_systemd_interactions

watchfrr: Send operational state to systemd

2 years agoMerge pull request #10987 from opensourcerouting/fix/bgp_conditional_advertisements_r...
Russ White [Wed, 13 Apr 2022 19:00:14 +0000 (15:00 -0400)]
Merge pull request #10987 from opensourcerouting/fix/bgp_conditional_advertisements_rmap_change_peer_groups

bgpd: Do not forget to update conditional advertisements rmaps for peer-groups

2 years agoMerge pull request #11024 from anlancs/bgpd-fix-missing-newline
Russ White [Wed, 13 Apr 2022 18:56:00 +0000 (14:56 -0400)]
Merge pull request #11024 from anlancs/bgpd-fix-missing-newline

bgpd: fix wrong check for default VRF

2 years agoMerge pull request #11025 from anlancs/bgpd-remove-l3nhg-control
Russ White [Wed, 13 Apr 2022 18:55:29 +0000 (14:55 -0400)]
Merge pull request #11025 from anlancs/bgpd-remove-l3nhg-control

bgpd: remove unnecessary l3nhg knob for evpn-mh

2 years agoMerge pull request #11010 from opensourcerouting/feature/reuse_bgp_attr_set_community...
Russ White [Wed, 13 Apr 2022 18:54:30 +0000 (14:54 -0400)]
Merge pull request #11010 from opensourcerouting/feature/reuse_bgp_attr_set_community_for_flags

bgpd: Reuse bgp_attr_set_[el]community() for setting attribute flags

2 years agoMerge pull request #11009 from opensourcerouting/fix/med_for_aggregate-address
Russ White [Wed, 13 Apr 2022 18:53:14 +0000 (14:53 -0400)]
Merge pull request #11009 from opensourcerouting/fix/med_for_aggregate-address

bgpd: aggregate-address fixes

2 years agoMerge pull request #11013 from opensourcerouting/fix/convert_bgp_peer_sort_t_to_enum
Russ White [Wed, 13 Apr 2022 18:52:58 +0000 (14:52 -0400)]
Merge pull request #11013 from opensourcerouting/fix/convert_bgp_peer_sort_t_to_enum

bgpd: typedef enum to enum

2 years agoMerge pull request #10935 from anlancs/zebra-mh-esi-warning
Donatas Abraitis [Wed, 13 Apr 2022 12:45:07 +0000 (15:45 +0300)]
Merge pull request #10935 from anlancs/zebra-mh-esi-warning

zebra: adjust the warnings for ESI of evpn-mh

2 years agoMerge pull request #10931 from g-balaji1/pimv6-ssm-cmds
mobash-rasool [Wed, 13 Apr 2022 10:20:31 +0000 (15:50 +0530)]
Merge pull request #10931 from g-balaji1/pimv6-ssm-cmds

pim6d: Addition of ipv6 ssmpingd config commands

2 years agoMerge pull request #10972 from iqras23/default_originate
Donatas Abraitis [Wed, 13 Apr 2022 10:13:00 +0000 (13:13 +0300)]
Merge pull request #10972 from iqras23/default_originate

bgpd: Metric not set with default route

2 years agobgpd: remove unnecessary l3nhg knob for evpn-mh
anlan_cs [Wed, 13 Apr 2022 09:11:18 +0000 (05:11 -0400)]
bgpd: remove unnecessary l3nhg knob for evpn-mh

Remove unnecessary `install_l3nhg` knob because it has already
been controlled by the command: "[no$no] use-es-l3nhg".

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agobgpd: fix wrong check for default VRF
anlan_cs [Wed, 13 Apr 2022 08:51:38 +0000 (04:51 -0400)]
bgpd: fix wrong check for default VRF

Currently the warning is wrong:
```
root#show bgp vrf default vni
BGP instance for VRF default not foundACC1(config)#
```

Two changes for "show bgp vrf VRFNAME vni [json]":
- Correct the default VRF check
- Add newline for warning

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agopimd: Changing PIM_OIF_FLAG_PROTO_IGMP to PIM_OIF_FLAG_PROTO_GM
Abhishek N R [Wed, 13 Apr 2022 08:00:50 +0000 (01:00 -0700)]
pimd: Changing PIM_OIF_FLAG_PROTO_IGMP to PIM_OIF_FLAG_PROTO_GM

Modified marco name so that it can be reused in mld.

Signed-off-by: Abhishek N R <abnr@vmware.com>
2 years agoMerge pull request #10969 from donaldsharp/test_multicast_remove_support_bundle_colle...
mobash-rasool [Wed, 13 Apr 2022 06:42:41 +0000 (12:12 +0530)]
Merge pull request #10969 from donaldsharp/test_multicast_remove_support_bundle_collection

tests: Fix test_multicast_pim_sm_topo3.py from generating a support b…

2 years agobgpd: Metric not set with default route.
Abhinay Ramesh [Fri, 18 Feb 2022 07:36:45 +0000 (07:36 +0000)]
bgpd: Metric not set with default route.

Description:
- When default route is originated using the
  neighbor default-originate command, MED is
  not set as part of the update message
  attribute.

- Changes are done to set the MED value and MED
  flag for default route.

Co-authored-by: Abhinay Ramesh <rabhinay@vmware.com>
Signed-off-by: Iqra Siddiqui <imujeebsiddi@vmware.com>
2 years agobgpd: Apply frrbot styling
Donatas Abraitis [Tue, 12 Apr 2022 19:15:17 +0000 (22:15 +0300)]
bgpd: Apply frrbot styling

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Convert bpacket_attr_vec_type to enum
Donatas Abraitis [Tue, 12 Apr 2022 08:42:27 +0000 (11:42 +0300)]
bgpd: Convert bpacket_attr_vec_type to enum

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Convert bgp_attr_parse_ret_t to enum
Donatas Abraitis [Tue, 12 Apr 2022 08:40:11 +0000 (11:40 +0300)]
bgpd: Convert bgp_attr_parse_ret_t to enum

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Convert vpn_policy_direction_t to enum
Donatas Abraitis [Tue, 12 Apr 2022 08:34:27 +0000 (11:34 +0300)]
bgpd: Convert vpn_policy_direction_t to enum

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Convert bgp_policy_type_e to enum
Donatas Abraitis [Tue, 12 Apr 2022 08:32:23 +0000 (11:32 +0300)]
bgpd: Convert bgp_policy_type_e to enum

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Convert bgp_peer_sort_t to enum
Donatas Abraitis [Tue, 12 Apr 2022 08:29:40 +0000 (11:29 +0300)]
bgpd: Convert bgp_peer_sort_t to enum

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Fix styling, drop braces for single statement block
Donatas Abraitis [Tue, 12 Apr 2022 19:12:16 +0000 (22:12 +0300)]
bgpd: Fix styling, drop braces for single statement block

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Reuse bgp_attr_set_ecommunity() for setting attribute flags
Donatas Abraitis [Tue, 12 Apr 2022 08:06:52 +0000 (11:06 +0300)]
bgpd: Reuse bgp_attr_set_ecommunity() for setting attribute flags

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Reuse bgp_attr_set_[l]community() for setting attribute flags
Donatas Abraitis [Mon, 11 Apr 2022 15:09:35 +0000 (18:09 +0300)]
bgpd: Reuse bgp_attr_set_[l]community() for setting attribute flags

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #10994 from opensourcerouting/fix/autocomplete_for_advertise_map
Russ White [Tue, 12 Apr 2022 18:40:33 +0000 (14:40 -0400)]
Merge pull request #10994 from opensourcerouting/fix/autocomplete_for_advertise_map

bgpd: Use autocomplete for route-map under conditional advertisements CLI

2 years agoMerge pull request #10999 from opensourcerouting/fix/bgp_aliases_with_community
Russ White [Tue, 12 Apr 2022 18:37:58 +0000 (14:37 -0400)]
Merge pull request #10999 from opensourcerouting/fix/bgp_aliases_with_community

bgpd: Allow setting BGP [large]community in route-maps

2 years agoMerge pull request #11000 from opensourcerouting/feature/show_conditional_adv_timer_i...
Mark Stapp [Tue, 12 Apr 2022 15:54:16 +0000 (11:54 -0400)]
Merge pull request #11000 from opensourcerouting/feature/show_conditional_adv_timer_in_neighbor_cli

bgpd: Show conditional advertisement timers in neighbor CLI output

2 years agoMerge pull request #10989 from opensourcerouting/pim-options-remove
mobash-rasool [Tue, 12 Apr 2022 15:40:44 +0000 (21:10 +0530)]
Merge pull request #10989 from opensourcerouting/pim-options-remove

pimd: remove pim_interface->options

2 years agobgpd: correct a few comments for evpn-mh
anlan_cs [Tue, 12 Apr 2022 06:11:57 +0000 (02:11 -0400)]
bgpd: correct a few comments for evpn-mh

Correct a few evpn-mh omissions mainly on type-1 and type-4.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agopim6d: Addition of ipv6 ssmpingd config commands
Balaji Gurudoss [Mon, 4 Apr 2022 13:01:50 +0000 (18:31 +0530)]
pim6d: Addition of ipv6 ssmpingd config commands

Signed-off-by: Balaji Gurudoss <G_Balaji1@dell.com>
2 years agoMerge pull request #11003 from anlancs/bgpd-mh-trival-remove
Donatas Abraitis [Tue, 12 Apr 2022 06:00:08 +0000 (09:00 +0300)]
Merge pull request #11003 from anlancs/bgpd-mh-trival-remove

bgpd: correct one flag name on comment for evpn-mh

2 years agozebra: simplify one check for evpn-mh
anlan_cs [Fri, 8 Apr 2022 01:04:51 +0000 (21:04 -0400)]
zebra: simplify one check for evpn-mh

An simplification for one check in
`zebra_evpn_mh_uplink_oper_flags_update()`.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agoMerge pull request #11006 from opensourcerouting/fix/remove_&routemap_optimization_cmd
Igor Ryzhov [Mon, 11 Apr 2022 20:22:41 +0000 (23:22 +0300)]
Merge pull request #11006 from opensourcerouting/fix/remove_&routemap_optimization_cmd

lib: Remove deprecated routemap_optimization_cmd

2 years agobgpd: Fix styling for aggregate_addressv4_cmd
Donatas Abraitis [Mon, 11 Apr 2022 14:53:42 +0000 (17:53 +0300)]
bgpd: Fix styling for aggregate_addressv4_cmd

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Add autocomplete for `aggregate-address ... route-map X`
Donatas Abraitis [Mon, 11 Apr 2022 14:47:52 +0000 (17:47 +0300)]
bgpd: Add autocomplete for `aggregate-address ... route-map X`

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Send MED attribute when aggregate prefix is created
Donatas Abraitis [Mon, 11 Apr 2022 14:46:04 +0000 (17:46 +0300)]
bgpd: Send MED attribute when aggregate prefix is created

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #11007 from mobash-rasool/fixes
Donatas Abraitis [Mon, 11 Apr 2022 11:28:15 +0000 (14:28 +0300)]
Merge pull request #11007 from mobash-rasool/fixes

pimd: correct the show ip igmp sources output

2 years agopimd: correct the show ip igmp sources output
Mobashshera Rasool [Mon, 11 Apr 2022 07:14:22 +0000 (00:14 -0700)]
pimd: correct the show ip igmp sources output

frr(config-if)# ip igmp join 232.1.1.1 10.10.10.10
frr(config-if)# do sh ip igmp sources
Interface        Address         Group           Source          Timer Fwd Uptime
ens192           232.1.1.1       10.10.10.10     04:10   N 00:00:10
frr(config-if)#

The above output is misaligned and is having Address field which is not
required here.

Fixing it.

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>