Commit Graph

21823 Commits

Author SHA1 Message Date
Chirag Shah
232c75cd03 bgpd: convert to yang modeled nbr cmds
Convert to (DEFUN_YANG) yang modeled neighbor configuration
commands to count them in batched execution as part of backoff timer
introduced as part of PR # 6727

These configuration commands already converted transactional cli
but missed to mark them as (DEFUN_YANG).

Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-11-17 08:31:34 -08:00
Donald Sharp
a08ccc5e31
Merge pull request #7541 from ton31337/fix/hardcoded_function_names
bgpd: Use __func__ instead of hardcoded strings for some functions
2020-11-17 09:28:09 -05:00
Donald Sharp
399ef80cc3
Merge pull request #7540 from ton31337/fix/typo
*: Replace typo (supress => suppress)
2020-11-17 08:13:17 -05:00
Russ White
b1545a5c59
Merge pull request #7450 from ranjanyash54/dev_5
ospf6d: Json support added for command "show ipv6 ospf6 zebra [json]"
2020-11-17 07:55:10 -05:00
Russ White
4b5eb21a66
Merge pull request #7453 from ranjanyash54/dev_7
ospf6d: Json support added for command "show ipv6 ospf6 interface [json]"
2020-11-17 07:53:41 -05:00
Russ White
a1a41d5c6b
Merge pull request #7476 from opensourcerouting/bfd-fixes
bfdd,lib: integration fixes
2020-11-17 07:34:29 -05:00
Russ White
7dce3c57c2
Merge pull request #7518 from donaldsharp/asic_offload_more
Asic offload more
2020-11-17 07:27:41 -05:00
Russ White
426fe481d7
Merge pull request #7520 from volta-networks/fix_ospf_mpls_te
ospfd: reset mpls-te prior to ospf router removal
2020-11-17 07:18:48 -05:00
Russ White
2bd9d50ca1
Merge pull request #7523 from donaldsharp/route_map_object_t
*: Remove route_map_object_t from the system
2020-11-17 07:16:12 -05:00
Russ White
20874770f9
Merge pull request #7536 from ton31337/fix/documentation
doc: Replace _ to `` when bolding keyword for recently added BGP commands
2020-11-17 07:12:33 -05:00
Mark Stapp
92395aa0b7
Merge pull request #7530 from ton31337/fix/safeguard_path->attr
bgpd: Make sure path->attr is not NULL before dereferencing
2020-11-17 07:09:54 -05:00
Donatas Abraitis
84c320dc01 bgpd: Use __func__ instead of hardcoded strings for some functions
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2020-11-17 13:32:15 +02:00
Donatas Abraitis
7c98d487b8 *: Replace typo (supress => suppress)
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2020-11-17 12:13:38 +02:00
Donatas Abraitis
56c0734511 doc: Replace _ to `` when bolding keyword for recently added BGP commands
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2020-11-17 08:53:17 +02:00
Donatas Abraitis
81a8a58b99
Merge pull request #7521 from donaldsharp/set_src_future_us
zebra: Allow `set src X` to work on startup
2020-11-17 08:33:59 +02:00
Donatas Abraitis
7de5a4d9e0 bgpd: Make sure path->attr is not NULL before dereferencing
Null-checking "path->attr" suggests that it may be null, but it has
already been dereferenced on all paths leading to the check.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2020-11-17 08:27:51 +02:00
github login name
f16ae8cf5d ospf6d: Json support added for command "show ipv6 ospf6 interface [json]"
Modify code to add JSON format output in show command
"show ipv6 ospf6 interface" with proper formating

Signed-off-by: Yash Ranjan <ranjany@vmware.com>
2020-11-16 21:18:39 -08:00
github login name
9ebb75c56b ospf6d: Json support added for command "show ipv6 ospf6 zebra [json]"
Modify code to add JSON format output in show command
"show ipv6 ospf6 zebra" with proper formating

Signed-off-by: Yash Ranjan <ranjany@vmware.com>
2020-11-16 19:44:06 -08:00
Mark Stapp
0b75cd0bf3
Merge pull request #7533 from donaldsharp/zlog_missing_on_failure
lib: When aborting log data
2020-11-16 19:09:38 -05:00
Mark Stapp
1fba91cc9b
Merge pull request #7531 from qlyoung/fix-doc-block-quote
doc: fix missing space before list
2020-11-16 15:28:14 -05:00
Donald Sharp
23961e75b9 lib: When aborting log data
When a FRR process dies due to SIGILL/SIGABORT/etc attempt
to drain the log buffer.  This code change is capturing
some missing logs that were not part of the log file on
a crash.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-16 15:12:43 -05:00
Quentin Young
0ea5223ce1 doc: fix missing space before list
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-11-16 12:39:41 -05:00
Donatas Abraitis
e5c317bcfa
Merge pull request #7526 from donaldsharp/i_am_a_robot_wumpalump
Cleanup on Aisle 5: Memory leaks, Uninited data and code snarfles
2020-11-16 17:32:30 +02:00
Carlo Galiotto
d424f8d806 ospfd: reset mpls-te prior to ospf router removal
This commits attempts to fix a problem that occurs when mpls-te gets
removed from ospfd config. Mpls-te has an inter-as option, which can be
set to Off/Area/AS. Whenever the inter-as takes "Area" or "AS" as a
value, this value will not be cleaned after removing mpls-te or after
removing the ospf router. Therefore, if mpls-te is configured with
inter-as AS or Area and we remove mpls-te or the ospf router, the
inter-as will still preserve its value; therefore, next time mpls-te is
enabled, it will automatically inherits the previous inter-as value
(either Area or AS). This leads to wrong configuration, which can be a
problem for frr_reload.py.
The commits forces mpls-te to reset inter-as to Off before it mpls-te
gets removed from the configuration and before the ospf router gets
removed.

Signed-off-by: Carlo Galiotto <carlo@voltanet.io>
2020-11-16 12:29:35 +01:00
Donatas Abraitis
3dbaf077d4
Merge pull request #7461 from donaldsharp/attribute_setget
Attribute setget
2020-11-16 12:20:40 +02:00
Donatas Abraitis
9ccd17bc12
Merge pull request #7510 from donaldsharp/xpath_stay
lib: Fix crash walking up command chain in bgp commands
2020-11-16 10:06:08 +02:00
Donatas Abraitis
9d96143b50
Merge pull request #7514 from donaldsharp/respect_e
bgpd: Respect `-e X` value for multipath
2020-11-16 08:57:50 +02:00
Donatas Abraitis
4b18f17437
Merge pull request #7525 from donaldsharp/dest_lock
bgpd: Fix missed unlocks
2020-11-16 08:51:55 +02:00
Donald Sharp
bacc299a49
Merge pull request #7513 from mjstapp/fix_bgp_sa_label
bgpd: fix SA warning
2020-11-15 14:34:09 -05:00
Donald Sharp
f7a9d0120d zebra: Add offload and trap counts to summary command for json output
For the json output add offload and trap route counts for the
json output.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 10:19:25 -05:00
Donald Sharp
e4876266e4 zebra: Add --asic-offload command
Add a command that allows FRR to know it's being used with
an underlying asic offload, from the linux kernel perspective.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 10:19:25 -05:00
Donald Sharp
0d32fbee6d lib, zebra: Add ability to read kernel notice of Offload Failed
The linux kernel is getting RTM_F_OFFLOAD_FAILED for kernel routes
that have failed to offload.  Write the code
to receive these notifications from the linux kernel
and store that data for display about the routes.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 10:12:50 -05:00
Donald Sharp
57df06840a include: Update rtnetlink.h
Update to latest kernel version of rtnetlink.h  We are
really bringing in the RTM_F_OFFLOAD_FAILED change.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 10:12:50 -05:00
Donald Sharp
91ebf12cb9 bgpd: Convert attr->vnc_subtlvs to use accessor functions
Add a get/set accessor functions and use them.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 09:49:14 -05:00
Donald Sharp
6c924775b5 bgpd: Convert attr->evpn_overlay to accessor functions
Convert usage of the attr->evpn_overlay to get/set functionality.
Future commits will allow us to abstract this data to when
we actually need it for the `struct attr`.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 09:49:14 -05:00
Donald Sharp
779fee9303 bgpd: Abstract attr->cluster to accessor/set functions
Abstract the access of `attr->cluster` to appropriate
accessor/set functionality.

Future commits will allow us to move this data around
to make `struct attr` smaller.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 09:44:47 -05:00
Donald Sharp
04fb21e22e bgpd: Convert attr->transit to use accessor functions
Convert the `struct attr`->transit variable to use
accessor functions.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 09:44:47 -05:00
Donald Sharp
d04ac434f0 bgpd: Convert ipv6_ecommunity to use accessor functions
Convert the `struct attr`->ipv6_ecommunity to use
accessor functions. We'll be able to reduce memory
usage in the `struct bgp_attr` by doing this.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 09:44:47 -05:00
Donald Sharp
2a3f51cf6b bgpd: Add accessor for bgp_attr.pmsi_tnl_type
Add an accessor for the bgp_attr.pmsi_tnl_type to allow
us to abstract where it is.  Every attribute is paying
the price of this bit of data as part of `struct bgp_attr`
In the future we'll move it elsewhere.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 09:44:47 -05:00
Donald Sharp
df7d4670ea bgpd: Allow NULL to be passed in for ecommunity_free
Allow some cleanup of if statements to just make
ecommunity_free() check this.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-15 09:39:25 -05:00
Donald Sharp
1f3255e5c1 babeld: Free ifc leak
On removal of an address on an interface babel was not properly
cleaning memory.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 21:19:42 -05:00
Donald Sharp
ff3bf9a436 bgpd: Free aggr_suppresors list on extra deletion
When we delete the bgp_path_info_extra data structure free
the aggr_suppressors data structure that was left dangling.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 19:16:57 -05:00
Donald Sharp
f18ba3cd18 bgpd, lib, staticd, tests: Convert to using FOREACH_AFI_SAFI
Move the FOREACH_AFI_SAFI macro from bgpd.h to zebra.h( GLOBAL's YOUALL )

Then convert all the places that have the two level for loop to
iterate over all afi/safis

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 18:53:03 -05:00
Donald Sharp
3d1c148b07 bgpd: If using filters free up name on peer deletion
FRR was not properly deleting the aname and cnmae
memory that was allocated if bgp is using filters.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 18:35:21 -05:00
Donald Sharp
d53e72e594 isisd: Free created tables
On redistribution into isis we were creating a table for
handling the redistributed routes, but never cleaning them
up on shutdown properly.  Do so.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 18:20:21 -05:00
Donald Sharp
6bdbcbf12f bgpd: print prefix instead of unininted buf
The recent change to use %pFX missed a code path
where we were displaying a buf that was uninited.
Display the prefix as intended.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 18:18:58 -05:00
Donald Sharp
35fb444b7a bgpd: on debug esi was not properly setup
There exists a code path where the esi would be passed
to a debug without the esi being setup with any values
causing us to display what ever is on the stack.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 18:17:58 -05:00
Donald Sharp
8f15843bba isisd: On shutdown leaking spf_timer thread data
When isis is being shutdown the area->spf_timer thread has
special data assigned to that was never being freed.
Free this data.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 18:17:27 -05:00
Donald Sharp
8affc28e91 bfdd: On interface address delete we are leaking memory
The interface address delete callback from zebra was not
deleting the ifc that was created as per normal work methodologies

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 18:16:39 -05:00
Donald Sharp
4f28b2b59e bgpd: When showing a lcommunity free alloced memory
We are temporarily allocing memory to show lcommunity
information.  We then immediately drop it.  Account for
that memory properly.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-11-14 16:29:16 -05:00