]> git.puffer.fish Git - mirror/frr.git/log
mirror/frr.git
4 years agolib, zebra: update interface name at netlink creation 6426/head
Philippe Guibert [Tue, 19 May 2020 11:57:08 +0000 (12:57 +0100)]
lib, zebra: update interface name at netlink creation

the interface name was not present in the hook in charge of updating the
interface context to the registered hook service. For that, update the
name before informing it.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
4 years agoMerge pull request #6344 from dslicenc/ospf6-routemap-delete
Russ White [Mon, 18 May 2020 22:52:46 +0000 (18:52 -0400)]
Merge pull request #6344 from dslicenc/ospf6-routemap-delete

ospf6d: withdraw redistributed prefixes based on prefix-list changes

4 years agoMerge pull request #6420 from vivek-cumulus/bgpd-paths-cleanup
Russ White [Mon, 18 May 2020 21:24:48 +0000 (17:24 -0400)]
Merge pull request #6420 from vivek-cumulus/bgpd-paths-cleanup

bgpd: Free non-best paths also during table cleanup

4 years agoMerge pull request #6421 from vivek-cumulus/zebra_trust_onlink
Russ White [Mon, 18 May 2020 21:23:57 +0000 (17:23 -0400)]
Merge pull request #6421 from vivek-cumulus/zebra_trust_onlink

zebra: Trust onlink flag for nexthop active resolution

4 years agoMerge pull request #6406 from donaldsharp/ospf_multi_instance_start_fix
Donatas Abraitis [Mon, 18 May 2020 11:51:17 +0000 (14:51 +0300)]
Merge pull request #6406 from donaldsharp/ospf_multi_instance_start_fix

tools: Only load instances or daemon

4 years agoMerge pull request #6422 from rudis/master
Donatas Abraitis [Sun, 17 May 2020 11:31:02 +0000 (14:31 +0300)]
Merge pull request #6422 from rudis/master

Doc: minor fixes

4 years agodoc: ospf_fundamentals: fix typos 6422/head
Simon Ruderich [Sat, 16 May 2020 08:16:53 +0000 (10:16 +0200)]
doc: ospf_fundamentals: fix typos

Signed-off-by: Simon Ruderich <simon@ruderich.org>
4 years agodoc: bgp: fix rst syntax
Simon Ruderich [Sat, 25 Apr 2020 06:41:49 +0000 (08:41 +0200)]
doc: bgp: fix rst syntax

Signed-off-by: Simon Ruderich <simon@ruderich.org>
4 years agodoc: wecmp_linkbw: fix typo
Simon Ruderich [Sat, 25 Apr 2020 06:41:41 +0000 (08:41 +0200)]
doc: wecmp_linkbw: fix typo

Signed-off-by: Simon Ruderich <simon@ruderich.org>
4 years agodoc: bgp: fix typos
Simon Ruderich [Sat, 25 Apr 2020 06:17:03 +0000 (08:17 +0200)]
doc: bgp: fix typos

Signed-off-by: Simon Ruderich <simon@ruderich.org>
4 years agodoc: zebra: use correct format for `show ip/ipv6 forward` command
Simon Ruderich [Sat, 25 Apr 2020 06:02:08 +0000 (08:02 +0200)]
doc: zebra: use correct format for `show ip/ipv6 forward` command

Signed-off-by: Simon Ruderich <simon@ruderich.org>
4 years agozebra: Trust onlink flag for nexthop active resolution 6421/head
vivek [Fri, 15 May 2020 23:22:01 +0000 (16:22 -0700)]
zebra: Trust onlink flag for nexthop active resolution

When checking if a nexthop is active, if it has been marked as onlink,
just check on the presence and status of the nexthop's interface. When
handling client request to create a route, if the client says that the
nexthop is onlink, trust it; when internally (in zebra) determining
that the nexthop is onlink, ensure it is only done in the case of an
interface with a /32 IP address which is the case for OSPF unnumbered.

Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com>
Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Reviewed-by: Stephen Worley <sworley@cumulusnetworks.com>
4 years agobgpd: Free non-best paths also during table cleanup 6420/head
vivek [Fri, 15 May 2020 21:32:38 +0000 (14:32 -0700)]
bgpd: Free non-best paths also during table cleanup

Non-best paths (path info structures) also need to be freed during
table cleanup not only to release their memory but to also ensure
any linkages are updated correctly. One such example is for EVPN
where there is a link between the imported path info (in a L2 or
L3 vrf instance) and its parent path info.

Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com>
4 years agoMerge pull request #6404 from FRRouting/dev_isis_sr
Donald Sharp [Fri, 15 May 2020 12:38:06 +0000 (08:38 -0400)]
Merge pull request #6404 from FRRouting/dev_isis_sr

isisd: IS-IS Segment Routing support

4 years agoMerge pull request #6401 from volta-networks/fix_c++_keywords
Donald Sharp [Fri, 15 May 2020 11:49:10 +0000 (07:49 -0400)]
Merge pull request #6401 from volta-networks/fix_c++_keywords

zebra: avoid using c++ keywords in headers

4 years agoMerge pull request #6400 from mjstapp/fix_sa_zebra_nb_state
Renato Westphal [Fri, 15 May 2020 02:52:14 +0000 (23:52 -0300)]
Merge pull request #6400 from mjstapp/fix_sa_zebra_nb_state

zebra: fix SA warning in zebra_nb_state.c

4 years agotools: Only load instances or daemon 6406/head
Donald Sharp [Thu, 14 May 2020 18:07:23 +0000 (14:07 -0400)]
tools: Only load instances or daemon

Original start/stop of FRR prior to David's rewrite in
PR 3507, when configuring multi-instance would
only start multi-instance (-1 -2 -3 -4...) or
just the daemon, not both.  If you happened
to start a ospfd instance of 1 then both
the default and instance 1 would react to cli.

Do not allow this, put it back to original behavior

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agoMerge pull request #6342 from Orange-OpenSource/dev_isis_sr dev_isis_sr 6404/head 6413/head
Renato Westphal [Thu, 14 May 2020 17:23:03 +0000 (14:23 -0300)]
Merge pull request #6342 from Orange-OpenSource/dev_isis_sr

isisd: Preparation to merge Segment-Routing into master

4 years agoMerge pull request #6377 from ton31337/fix/bgpd_statistics
Sri Mohana Singamsetty [Thu, 14 May 2020 17:00:07 +0000 (10:00 -0700)]
Merge pull request #6377 from ton31337/fix/bgpd_statistics

bgpd: Use default AFI_IP6/SAFI_UNICAST when displaying statistics

4 years agozebra: avoid using c++ keywords in headers 6401/head
Emanuele Di Pascale [Thu, 14 May 2020 13:57:23 +0000 (15:57 +0200)]
zebra: avoid using c++ keywords in headers

to make sure that c++ code can include them, avoid using reserved
keywords like 'delete' or 'new'.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
4 years agoisisd: Update documentation for Segment Routing 6342/head
Olivier Dugeon [Tue, 5 May 2020 14:40:35 +0000 (16:40 +0200)]
isisd: Update documentation for Segment Routing

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agoisisd: Update Segment Routing Show Commands
Olivier Dugeon [Tue, 5 May 2020 14:29:46 +0000 (16:29 +0200)]
isisd: Update Segment Routing Show Commands

 * Improve `show isis segment-routing prefix-sids` output
 * Add new `show isis segment-routing node' command

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agoisisd: IS-IS-SR preparation for master 5/5
Olivier Dugeon [Mon, 4 May 2020 17:39:20 +0000 (19:39 +0200)]
isisd: IS-IS-SR preparation for master 5/5

Update comments (doxygen style) for all functions.

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agoisisd: IS-IS-SR preparation for master 4/5
Olivier Dugeon [Mon, 4 May 2020 16:26:21 +0000 (18:26 +0200)]
isisd: IS-IS-SR preparation for master 4/5

 * Regroup fonctions to install label for Prefix and Adjacency SID
 * Change 'replace_semantics' variable name by 'make_before_break' in
   sr_prefix_reinstall() function and adjust comments
 * Call directly lsp_regenerate_schedule() from isis_nb_config.c when MSD
   is updated

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agoisisd: IS-IS-SR preparation for master 3/5
Olivier Dugeon [Mon, 4 May 2020 07:40:36 +0000 (09:40 +0200)]
isisd: IS-IS-SR preparation for master 3/5

Add debug macro and debug messages

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agoisisd: IS-IS-SR preparation for master 2/5
Olivier Dugeon [Sun, 3 May 2020 18:01:20 +0000 (20:01 +0200)]
isisd: IS-IS-SR preparation for master 2/5

 * Rename functions following rules: isis_sr_XXX is kept for external functions
   and isis_sr prefix remove for static ones
 * Rename local_label & remote_label variables by input_label & output_label
 * Change parameter order (to follow other functions) in sr_node_srgb_update()

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agoisisd: IS-IS-SR preparation for master 1/5
Olivier Dugeon [Thu, 30 Apr 2020 09:23:15 +0000 (11:23 +0200)]
isisd: IS-IS-SR preparation for master 1/5

 * Rename RB-TREE variable from tree_sr_XXX to srdb_XXX
 * Replace parse_flags by an enum and rename it srdb_state which reflects
   more the role of this flag: determined the state of SR-Node and SR-Prefix
   stored in the SRDB: VALIDATED, NEW, MODIFIED, UNCHANGED

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
4 years agozebra: fix SA warning in zebra_nb_state.c 6400/head
Mark Stapp [Thu, 14 May 2020 13:41:59 +0000 (09:41 -0400)]
zebra: fix SA warning in zebra_nb_state.c

Fix an SA warning in zebra_nb_state.c.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
4 years agoMerge pull request #6227 from pguibert6WIND/show_nexthop_group_permit_netns
Stephen Worley [Wed, 13 May 2020 14:53:52 +0000 (10:53 -0400)]
Merge pull request #6227 from pguibert6WIND/show_nexthop_group_permit_netns

zebra: permit usage of show nexthop-group with namespace based vrfs

4 years agoMerge pull request #6220 from kuldeepkash/bgp_graceful_restart
Martin Winter [Wed, 13 May 2020 13:09:08 +0000 (15:09 +0200)]
Merge pull request #6220 from kuldeepkash/bgp_graceful_restart

tests: Add bgp-graceful-restart test suites

4 years agozebra: permit usage of show nexthop-group with namespace based vrfs 6227/head
Philippe Guibert [Wed, 15 Apr 2020 08:22:32 +0000 (10:22 +0200)]
zebra: permit usage of show nexthop-group with namespace based vrfs

namespace based vrfs can be used along with show nexthop-group command.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
4 years agoMerge pull request #6387 from donaldsharp/reload
Donatas Abraitis [Wed, 13 May 2020 06:10:06 +0000 (09:10 +0300)]
Merge pull request #6387 from donaldsharp/reload

tools: revert frr-reload.py remove stderr redirects"

4 years agoMerge pull request #6384 from kooky/set-src-doc
Donatas Abraitis [Wed, 13 May 2020 06:09:05 +0000 (09:09 +0300)]
Merge pull request #6384 from kooky/set-src-doc

doc: Improve Zebra set src documentation.  (IPv6)

4 years agoMerge pull request #6383 from opensourcerouting/init-config-perms
Donatas Abraitis [Wed, 13 May 2020 06:05:18 +0000 (09:05 +0300)]
Merge pull request #6383 from opensourcerouting/init-config-perms

build: use configfile mode in init script

4 years agoMerge pull request #6250 from chiragshah6/yang_nb6
Renato Westphal [Wed, 13 May 2020 00:17:36 +0000 (21:17 -0300)]
Merge pull request #6250 from chiragshah6/yang_nb6

*: RIB operational northbound callbacks implementation

4 years agoyang: align keys and leafs 6250/head
Chirag Shah [Mon, 11 May 2020 16:25:23 +0000 (09:25 -0700)]
yang: align keys and leafs

Align leafs according to keys order.
Fix some of the nits seen in yanglint -f yang format.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
4 years agoyang: add unified protocol types in rib model
Chirag Shah [Tue, 28 Apr 2020 23:01:19 +0000 (16:01 -0700)]
yang: add unified protocol types in rib model

Add v4/v6 unified protocol list to rib operational
model.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
4 years agozebra: rib northbound callback implementation
Chirag Shah [Wed, 25 Mar 2020 04:41:49 +0000 (21:41 -0700)]
zebra: rib northbound callback implementation

- add RIB's northbound list create/destory callback changes.
- add RIB's northbound callbacks implementation.
- add RIB's nexthop callbacks implementation.
- add RIB's nexthop weight field callback changes.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
4 years agodoc: Improve Zebra set src documentation. (IPv6) 6384/head
Tim Bray [Tue, 12 May 2020 10:41:13 +0000 (11:41 +0100)]
doc: Improve Zebra set src documentation.  (IPv6)

Include an IPv6 example for set src

And a note that the IP address has to exist.   This is to try and make
people aware to avoid things like issue #4249
https://github.com/FRRouting/frr/issues/4249

Signed-off-by: Tim Bray <tim@kooky.org>
4 years agozebra: afi-safi identity to value apis
Chirag Shah [Tue, 12 May 2020 21:09:57 +0000 (14:09 -0700)]
zebra: afi-safi identity to value apis

Helper APIs to convert afi-safi identity to values.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
4 years agozebra: route node first next node
Chirag Shah [Wed, 25 Mar 2020 04:41:49 +0000 (21:41 -0700)]
zebra: route node first next node

Add macros for route entry first and next node walk.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
4 years agozebra: add zebra container to rib model
Chirag Shah [Mon, 16 Mar 2020 19:09:26 +0000 (12:09 -0700)]
zebra: add zebra container to rib model

Add zebra container in rib tree.
When displaying RIB under vrf, it displays
zebra module name.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
4 years agozebra: northbound changes for the rib model
Chirag Shah [Fri, 28 Feb 2020 02:38:24 +0000 (18:38 -0800)]
zebra: northbound changes for the rib model

This commit implements:
RIB operational list create/destroy.
Walk over RIB tables using keys.
The first RIB table will be IPV4/unicast (table-id 254)
will be fetched.
Create a new api to fetch RIB table based on
afi-safi and table id as the keys.

remove mandatory true statement from the leaf which
is part of the list key.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
4 years agotools: revert frr-reload.py remove stderr redirects" 6387/head
Donald Sharp [Tue, 12 May 2020 17:31:05 +0000 (13:31 -0400)]
tools: revert frr-reload.py remove stderr redirects"

This reverts commit 3fa139a65be70e5a81b5f078530094f09a247416.

This is being reverted because this commit completely
breaks the invocation of frr-reload.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agoMerge pull request #6334 from ton31337/fix/labeled_unicast_table_scount
Sri Mohana Singamsetty [Tue, 12 May 2020 15:31:42 +0000 (08:31 -0700)]
Merge pull request #6334 from ton31337/fix/labeled_unicast_table_scount

bgpd: Set a proper SAFI for labaled-unicast when looking for scount

4 years agoMerge pull request #6340 from opensourcerouting/yang-license
Lou Berger [Tue, 12 May 2020 15:29:52 +0000 (11:29 -0400)]
Merge pull request #6340 from opensourcerouting/yang-license

Adopt the BSD-2-Clause license for our YANG modules

4 years agoMerge pull request #6366 from volta-networks/fix_pw_show
Renato Westphal [Tue, 12 May 2020 01:12:26 +0000 (22:12 -0300)]
Merge pull request #6366 from volta-networks/fix_pw_show

ldpd and Zebra:  Expand existing debug commands.

4 years agoMerge pull request #6370 from barajus/patch-1
Quentin Young [Mon, 11 May 2020 20:35:34 +0000 (16:35 -0400)]
Merge pull request #6370 from barajus/patch-1

overview.rst: add RFC to VRRP

4 years agoldpd and Zebra: Expand existing debug commands. 6366/head
lynne [Thu, 7 May 2020 16:31:40 +0000 (12:31 -0400)]
ldpd and Zebra:  Expand existing debug commands.

L2VPN PW are very hard to determine why they do not come up.  The following
fixes expand the existing show commands in ldp and zebra to display a
reason why the PW is in the DOWN state and also display the labeled nexthop
route selected to reach the PW peer.  By adding this information it will
provide the user some guidance on how to debug the PW issue.  Also fixed an
assert if labels were changed for a PW that is between directly connected
peers.

Signed-off-by: Lynne Morrison <lynne@voltanet.io>
4 years agobuild: use configfile mode in init script 6383/head
David Lamparter [Mon, 11 May 2020 19:37:08 +0000 (21:37 +0200)]
build: use configfile mode in init script

This only applies for split-config;  the init script would create an
empty config file with default permissions.

Reported-by: Robert Scheck <robert@fedoraproject.org>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
4 years agodoc: add RFC to VRRP 6370/head
Julien D [Fri, 8 May 2020 13:21:02 +0000 (15:21 +0200)]
doc: add RFC to VRRP

Add the VRRP bloc + RFC associated

Signed-off-by: barajus <julien.dhaille@gmail.com>
4 years agoMerge pull request #6381 from qlyoung/clean-grpc
Renato Westphal [Mon, 11 May 2020 19:36:00 +0000 (16:36 -0300)]
Merge pull request #6381 from qlyoung/clean-grpc

lib: remove unnecessary rpc request in grpc

4 years agolib: remove unnecessary rpc request in grpc 6381/head
Quentin Young [Sun, 10 May 2020 18:36:41 +0000 (14:36 -0400)]
lib: remove unnecessary rpc request in grpc

Bit of leftover copypaste code there.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
4 years agoMerge pull request #6379 from donaldsharp/ip_as_path_removal_really
Donatas Abraitis [Mon, 11 May 2020 14:22:19 +0000 (17:22 +0300)]
Merge pull request #6379 from donaldsharp/ip_as_path_removal_really

Ip as path removal really

4 years agodoc: Fix doc to reflect reality on the ground 6379/head
Donald Sharp [Mon, 11 May 2020 12:46:34 +0000 (08:46 -0400)]
doc: Fix doc to reflect reality on the ground

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agobgpd: really remove the `no ip as-path...` command
Donald Sharp [Mon, 11 May 2020 12:45:11 +0000 (08:45 -0400)]
bgpd: really remove the `no ip as-path...` command

We had already removed the `ip as-path..` command
to have `bgp as-path` but for some reason a `no ip as-path..`
command ALIAS was still around.  Kill with extreme prejudice.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years ago*: Update version string
Donald Sharp [Mon, 11 May 2020 12:04:15 +0000 (08:04 -0400)]
*: Update version string

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agoMerge pull request #6374 from opensourcerouting/grpc-undue-warning
Quentin Young [Mon, 11 May 2020 04:24:54 +0000 (00:24 -0400)]
Merge pull request #6374 from opensourcerouting/grpc-undue-warning

lib: fix undue warning during gRPC module initialization

4 years agobgpd: Use default AFI_IP6/SAFI_UNICAST when displaying statistics 6377/head
Donatas Abraitis [Sat, 9 May 2020 18:33:51 +0000 (21:33 +0300)]
bgpd: Use default AFI_IP6/SAFI_UNICAST when displaying statistics

Without specifying a default afi/safi we get a segfault:

```
(gdb) frame 4
bgp_table_stats (..., afi=32724, safi=SAFI_UNICAST, ...
11349 if (!bgp->rib[afi][safi]) {
(gdb)
```

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
4 years agolib: fix undue warning during gRPC module initialization 6374/head
Renato Westphal [Sat, 9 May 2020 03:50:45 +0000 (00:50 -0300)]
lib: fix undue warning during gRPC module initialization

This warning only shows up when a daemon is started with --log=stdout.
Fix it.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
4 years agoMerge pull request #6368 from qlyoung/async-grpc
Renato Westphal [Sat, 9 May 2020 03:48:52 +0000 (00:48 -0300)]
Merge pull request #6368 from qlyoung/async-grpc

Async grpc

4 years agolib: convert GRPC plugin to async 6368/head
Quentin Young [Wed, 6 May 2020 23:36:19 +0000 (19:36 -0400)]
lib: convert GRPC plugin to async

Synchronous GRPC services are called from arbitrary threads. This makes
access to anything outside the GRPC module unsafe. We need to convert
the plugin to use the async model that allows us to control our own
threads.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
4 years agolib: use frr_pthread to spawn grpc pthread
Chirag Shah [Wed, 22 Apr 2020 23:09:15 +0000 (16:09 -0700)]
lib: use frr_pthread to spawn grpc pthread

start grpc thread with frr_pthread library
callbacks to integrate with rcu infrastructure.

If a thread is created using native pthread callbacks
and if zlog is used then it leads to crash.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
4 years agoMerge pull request #6348 from dslicenc/frr-reload-bfd
Donatas Abraitis [Fri, 8 May 2020 15:56:01 +0000 (18:56 +0300)]
Merge pull request #6348 from dslicenc/frr-reload-bfd

tools: fix frr traceback on bgp neighbor bfd deletion

4 years agoMerge pull request #6362 from donaldsharp/typedef_i_hatez_it
Mark Stapp [Fri, 8 May 2020 13:44:58 +0000 (09:44 -0400)]
Merge pull request #6362 from donaldsharp/typedef_i_hatez_it

Typedef replacements

4 years agozebra: remove typedef rib_update_event_t from system 6362/head
Donald Sharp [Thu, 7 May 2020 13:47:23 +0000 (09:47 -0400)]
zebra: remove typedef rib_update_event_t from system

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove typedef rib_table_info_t from system
Donald Sharp [Thu, 7 May 2020 12:59:27 +0000 (08:59 -0400)]
zebra: Remove typedef rib_table_info_t from system

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove typedef rib_tables_iter_state from system
Donald Sharp [Thu, 7 May 2020 12:57:04 +0000 (08:57 -0400)]
zebra: Remove typedef rib_tables_iter_state from system

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove typedef rnh_type_t from system
Donald Sharp [Thu, 7 May 2020 12:55:55 +0000 (08:55 -0400)]
zebra: Remove typedef rnh_type_t from system

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove typedef netlink_route_info_t
Donald Sharp [Thu, 7 May 2020 12:52:38 +0000 (08:52 -0400)]
zebra: Remove typedef netlink_route_info_t

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove the typedef netlink_nh_info_t
Donald Sharp [Thu, 7 May 2020 12:50:04 +0000 (08:50 -0400)]
zebra: Remove the typedef netlink_nh_info_t

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove typedef of mpls_srgb_t
Donald Sharp [Thu, 7 May 2020 12:48:42 +0000 (08:48 -0400)]
zebra: Remove typedef of mpls_srgb_t

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove enum around ipv6_nd_suppress_ra_status
Donald Sharp [Thu, 7 May 2020 12:47:02 +0000 (08:47 -0400)]
zebra: Remove enum around ipv6_nd_suppress_ra_status

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remvoe typedef for zfpm_glob_t
Donald Sharp [Thu, 7 May 2020 12:44:57 +0000 (08:44 -0400)]
zebra: Remvoe typedef for zfpm_glob_t

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove typedef zfpm_msg_format_e
Donald Sharp [Thu, 7 May 2020 12:41:33 +0000 (08:41 -0400)]
zebra: Remove typedef zfpm_msg_format_e

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove the typedef for zfrpm_state_t
Donald Sharp [Thu, 7 May 2020 12:38:35 +0000 (08:38 -0400)]
zebra: Remove the typedef for zfrpm_state_t

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove typedef of zfpm_stats_t
Donald Sharp [Thu, 7 May 2020 12:36:33 +0000 (08:36 -0400)]
zebra: Remove typedef of zfpm_stats_t

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agozebra: Remove typedef around zfpm_rnodes_iter
Donald Sharp [Thu, 7 May 2020 12:32:26 +0000 (08:32 -0400)]
zebra: Remove typedef around zfpm_rnodes_iter

Typedef's are not used in our system remove.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agoMerge pull request #6363 from donaldsharp/no_no_no frr-7.5-dev
Donatas Abraitis [Fri, 8 May 2020 07:12:26 +0000 (10:12 +0300)]
Merge pull request #6363 from donaldsharp/no_no_no

bgpd: `bgp bestpath bandwidth` should not be a legal command

4 years agoMerge pull request #6365 from donaldsharp/bsd_v6_Null_bs base_7.4
Mark Stapp [Thu, 7 May 2020 17:12:55 +0000 (13:12 -0400)]
Merge pull request #6365 from donaldsharp/bsd_v6_Null_bs

zebra: Add code to install v6 blackhole routes on *bsd

4 years agozebra: Add code to install v6 blackhole routes on *bsd 6365/head
Donald Sharp [Thu, 7 May 2020 15:24:05 +0000 (11:24 -0400)]
zebra: Add code to install v6 blackhole routes on *bsd

This code was just missing.  Take the few minutes and
get it done.

!
ip route 4.5.6.7/32 Null0
ipv6 route 4::5/128 Null0
!
$ netstat -rn
Routing tables

Internet:
Destination        Gateway            Flags     Netif Expire
default            192.168.122.1      UGS      vtnet0
4.5.6.7/32         127.0.0.1          UG1B        lo0
127.0.0.1          link#2             UH          lo0
192.168.122.0/24   link#1             U        vtnet0
192.168.122.40     link#1             UHS         lo0

Internet6:
Destination                       Gateway                       Flags     Netif Expire
::/96                             ::1                           UGRS        lo0
::1                               link#2                        UH          lo0
::ffff:0.0.0.0/96                 ::1                           UGRS        lo0
4::5/128                          ::1                           UG1B        lo0
fe80::/10                         ::1                           UGRS        lo0
fe80::%vtnet0/64                  link#1                        U        vtnet0
fe80::5054:ff:fe5a:e705%vtnet0    link#1                        UHS         lo0
fe80::%lo0/64                     link#2                        U           lo0
fe80::1%lo0                       link#2                        UHS         lo0
ff02::/16                         ::1                           UGRS        lo0
$

$ uname -a
FreeBSD donna 12.1-RELEASE FreeBSD 12.1-RELEASE r354233 GENERIC  amd64
$

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agobgpd: `bgp bestpath bandwidth` should not be a legal command 6363/head
Donald Sharp [Thu, 7 May 2020 14:03:31 +0000 (10:03 -0400)]
bgpd: `bgp bestpath bandwidth` should not be a legal command

The `bgp bestpath bandwidth` command should not be a legal
command.  Pull out the `no` form to allow this.  Allow
`no bgp bestpath bandwidth` to work as we would expect.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agoMerge pull request #6356 from ton31337/fix/aggregator_0_ignore
Donald Sharp [Wed, 6 May 2020 23:43:21 +0000 (19:43 -0400)]
Merge pull request #6356 from ton31337/fix/aggregator_0_ignore

bgpd: Ignore aggregator attribute if it's malformed (0.0.0.0)

4 years agoMerge pull request #6358 from donaldsharp/zebra_onlink
Jafar Al-Gharaibeh [Wed, 6 May 2020 20:25:48 +0000 (15:25 -0500)]
Merge pull request #6358 from donaldsharp/zebra_onlink

zebra: Loosen ONLINK restrictions a tiny bit

4 years agoMerge pull request #6359 from sworleys/NHG-No-IPv4-IPv6
Mark Stapp [Wed, 6 May 2020 19:42:52 +0000 (15:42 -0400)]
Merge pull request #6359 from sworleys/NHG-No-IPv4-IPv6

zebra: abstract 5549 check into a function

4 years agoMerge pull request #6357 from mjstapp/fix_ldp_topo1_how
Renato Westphal [Wed, 6 May 2020 15:23:36 +0000 (12:23 -0300)]
Merge pull request #6357 from mjstapp/fix_ldp_topo1_how

tests: remove unused ref files from ldp topotest

4 years agoMerge pull request #6352 from volta-networks/fix_ldp_dscp
Renato Westphal [Wed, 6 May 2020 15:23:01 +0000 (12:23 -0300)]
Merge pull request #6352 from volta-networks/fix_ldp_dscp

ldpd: LDP does not always send traffic with correct DSCP value.

4 years agozebra: Loosen ONLINK restrictions a tiny bit 6358/head
Donald Sharp [Wed, 6 May 2020 14:13:48 +0000 (10:13 -0400)]
zebra: Loosen ONLINK restrictions a tiny bit

Loosen the ONLINK restrictions such that when an upper
level protocol sends us a nexthop with an ONLINK attribute
just ensure that interface is up and usable.  ONLINK effectively
means we know what we are doing to the kernel.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
4 years agoldpd: LDP does not always send traffic with correct DSCP value. 6352/head
Karen Schoener [Tue, 5 May 2020 21:59:00 +0000 (17:59 -0400)]
ldpd: LDP does not always send traffic with correct DSCP value.

Adding code so that the LDP neighbor that does not initiate the
TCP connection also sets the DSCP (via setsocketopt).

Signed-off-by: Karen Schoener <karen@voltanet.io>
4 years agotests: remove unused ref files from ldp topotest 6357/head
Mark Stapp [Wed, 6 May 2020 13:31:21 +0000 (09:31 -0400)]
tests: remove unused ref files from ldp topotest

Remove a couple of a couple of mis-named reference output files
from the ldp-topo1 suite.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
4 years agobgpd: Ignore aggregator attribute if it's malformed (0.0.0.0) 6356/head
Donatas Abraitis [Wed, 6 May 2020 09:55:55 +0000 (12:55 +0300)]
bgpd: Ignore aggregator attribute if it's malformed (0.0.0.0)

This is not the attribute involved in path selection and by rfc7606 it should
be just ignored.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
4 years agobgpd: Use slightly modified version of error message if AS path contains 0
Donatas Abraitis [Wed, 6 May 2020 09:51:40 +0000 (12:51 +0300)]
bgpd: Use slightly modified version of error message if AS path contains 0

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
4 years agoMerge pull request #6347 from opensourcerouting/llvm-callgraph
Quentin Young [Tue, 5 May 2020 21:40:21 +0000 (17:40 -0400)]
Merge pull request #6347 from opensourcerouting/llvm-callgraph

tools: LLVM-based call graphs

4 years agoMerge pull request #6350 from pureport/fix/bgp_double_community_free
Quentin Young [Tue, 5 May 2020 21:39:28 +0000 (17:39 -0400)]
Merge pull request #6350 from pureport/fix/bgp_double_community_free

bgpd: Check to ensure community attributes exist before freeing them

4 years agobgpd: Check to ensure community attributes exist before freeing them 6350/head
Josh Cox [Tue, 5 May 2020 17:09:14 +0000 (13:09 -0400)]
bgpd: Check to ensure community attributes exist before freeing them

Community attributes might have been removed by an inbound route map, so we
should check to ensure they still exist before trying to free them.
This fixes a segfault described in issue #6345.

Signed-off-by: Josh Cox <josh.cox@pureport.com>
4 years agoMerge pull request #6349 from qlyoung/hook-cpp-compat
David Lamparter [Tue, 5 May 2020 19:42:29 +0000 (21:42 +0200)]
Merge pull request #6349 from qlyoung/hook-cpp-compat

4 years agobgpd: Set a proper SAFI for labaled-unicast when looking for scount 6334/head
Donatas Abraitis [Sun, 3 May 2020 18:16:45 +0000 (21:16 +0300)]
bgpd: Set a proper SAFI for labaled-unicast when looking for scount

The problem is that peer_af_array returns NULL when SAFI is changed to
unicast. We use unicast table, but peer is created and activated under
labeled-unicast, hence we should lookup with a proper SAFI id.

Without this patch peer_af_find() returns NULL and we can't show
PfxSnt in `show bgp summary`.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
4 years agozebra: abstract 5549 check into a function 6359/head
Stephen Worley [Tue, 5 May 2020 19:05:30 +0000 (15:05 -0400)]
zebra: abstract 5549 check into a function

Abstract the 5549 ipv4 over ipv6 into a function for easier
code reuse and reading.

Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
4 years agolib: make hook.h cpp-compatible 6349/head
Quentin Young [Tue, 5 May 2020 18:03:19 +0000 (14:03 -0400)]
lib: make hook.h cpp-compatible

Some CPP compilers don't support these designated initializers, since
we're just zero initializing don't need em

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
4 years agotools: fix frr traceback on bgp neighbor bfd deletion 6348/head
Don Slice [Mon, 27 Apr 2020 19:34:08 +0000 (19:34 +0000)]
tools: fix frr traceback on bgp neighbor bfd deletion

Problem reported that with certain configs, when the user
deleted a "neighbor x.x.x.x bfd 4 100 100" statement from
frr.conf and then reloaded, a traceback was seen and the
deletion did not succeed.  Found that in some scenarios
it was possible to have something in lines_to_add that
was in a different context and when the re.search was
attempted, it found an empy line and was unhappy.  This
fix avoids trying to search in the wrong context.

Ticket: CM-29145
Signed-off-by: Don Slice <dslice@cumulusnetworks.com>