summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* doc, zebra: remove keep_kernel option everywhereEmanuele Bovisio2020-10-132-5/+0
| | | | | | remove all remaining parts related to keep_kernel option Signed-off-by: Emanuele Bovisio <emanuele.bovisio@eolo.it>
* Merge pull request #7287 from taspelund/ipv4-lu-show-routesDonatas Abraitis2020-10-131-4/+4
|\ | | | | bgpd: fix show bgp neighbor routes for labeled-unicast
| * bgpd: fix show bgp neighbor routes for labeled-unicastTrey Aspelund2020-10-121-4/+4
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bgp_show_neighbor_route() was rewriting safi from LU to uni before checking if the peer was enabled for LU. This resulted in the peer's address-family check looking for unicast, which would always fail for LU peers since unicast + LU are mutually-exclusive AFIs. This moves this safi reassignment after the peer AFI check, ensuring that the peer's address-family check looks for LU while the call to bgp_show() still uses uni. -- highlights from manual testing config: router bgp 2 neighbor 1.1.1.1 remote-as external neighbor 1.1.1.1 disable-connected-check neighbor 1.1.1.1 update-source 2.2.2.2 ! address-family ipv4 unicast no neighbor 1.1.1.1 activate exit-address-family ! address-family ipv4 labeled-unicast neighbor 1.1.1.1 activate exit-address-family before: spine01# show bgp ipv4 unicast neighbors 1.1.1.1 routes % No such neighbor or address family spine01# show bgp ipv4 labeled-unicast neighbors 1.1.1.1 routes % No such neighbor or address family after: spine01# show bgp ipv4 unicast neighbors 1.1.1.1 routes % No such neighbor or address family spine01# show bgp ipv4 label neighbors 1.1.1.1 routes BGP table version is 1, local router ID is 2.2.2.2 Status codes: s suppressed, d damped, h history, * valid, > best, = multipath, i internal, r RIB-failure, S Stale, R Removed Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path *> 11.11.11.11/32 1.1.1.1 0 0 1 i Displayed 1 routes and 1 total paths Signed-off-by: Trey Aspelund <taspelund@cumulusnetworks.com>
* Merge pull request #7251 from wesleycoakley/fix-vtysh-node-build-warn-errorsDonatas Abraitis2020-10-122-19/+19
|\ | | | | vtysh: fix build-time errors for some --enable flags
| * vtysh: ignore generated file vtysh_daemons.hWesley Coakley2020-10-061-0/+1
| | | | | | | | Signed-off-by: Wesley Coakley <wcoakley@nvidia.com>
| * vtysh: Fix vtysh node build warn errorsWesley Coakley2020-10-061-19/+18
| | | | | | | | | | | | | | | | Two vtysh nodes were misplaced during a recent refactor and were not included under appropriate #ifdef directives and consequently triggered build warnings (errors) Signed-off-by: Wesley Coakley <wcoakley@nvidia.com>
* | Merge pull request #7284 from donaldsharp/pmaxDonatas Abraitis2020-10-121-1/+2
|\ \ | | | | | | bgpd: Correctly calculate threshold being reached
| * | bgpd: Correctly calculate threshold being reachedDonald Sharp2020-10-121-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | if (pcout > (pcount * peer->max_threshold[afi][safi] / 100 )) is always true. So the very first route received will always trigger the warning. We actually want the warning to happen when we hit the threshold. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* | | Merge pull request #6811 from rgirada/test_helperRuss White2020-10-1222-19/+2039
|\ \ \ | | | | | | | | ospfd: ospfv2 graceful restart helper support.
| * | | ospfd: Debug support to ospf GR helper functionalityrgirada2020-09-221-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: Added the following debug commands to enable debugs GR helper functionality. [no] debug ospf gr helper Signed-off-by: Rajesh Girada <rgirada@vmware.com>
| * | | ospfd: GR helper specific show commandsrgirada2020-09-223-1/+485
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: The following show commands are added to display helper specific information. 1.show ip ospf graceful-restart helper [detail] [json] --> displays user configurations and list of all helpers details. 2.show ip ospf neighbour detail --> diplays helper details Signed-off-by: Rajesh Girada <rgirada@vmware.com>
| * | | ospfd: GR helper config commandsrgirada2020-09-223-4/+400
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: The following commands are added for helper support. 1.[no] graceful-restart helper-only 2.[no] graceful-restart helper-only <A.B.C.D> 3.[no] graceful-restart helper lsa-check-disable 4.[no] graceful-restart helper supported-grace-time 5.[no] graceful-restart helper planned-only Signed-off-by: Rajesh Girada <rgirada@vmware.com>
| * | | ospfd: GR helper exit scenariosrgirada2020-09-227-7/+212
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: The follwoing helper exit scenarios are handled. 1. Recv Max age grace LSA from RESTARTER. 2. Grace timer expiry. 3. Due to topo change if lsa check is enabled. Signed-off-by: Rajesh Girada <rgirada@vmware.com>
| * | | ospfd: GR Helper functionality changesrgirada2020-09-222-12/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: 1. Skipping inactivity timer during graceful restart to make the RESTARTER active even after dead timer expiry. 2. Handling HELPER on unplanned outages. Signed-off-by: Rajesh Girada <rgirada@vmware.com>
| * | | ospfd: Grace LSA processingrgirada2020-09-226-6/+455
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: 1. Grace LSA processing. 2. Validations to become a Helper. rfc3623 section 3.1 Signed-off-by: Rajesh Girada <rgirada@vmware.com>
| * | | ospfd: ospf GR helper initializationrgirada2020-09-228-3/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: 1. Graceful restart helper init/de-init. 2. Defining dedicated memory for helper. Signed-off-by: Rajesh Girada <rgirada@vmware.com>
| * | | ospfd: ospf GR helper data structure definitions.rgirada2020-09-224-2/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: Graceful restart helper support specific data structure changes. Signed-off-by: Rajesh Girada <rgirada@vmware.com>
| * | | ospfd: ospf GR helper documentationrgirada2020-09-221-1/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: Documentation update for graceful restart helper feature support. Signed-off-by: Rajesh Girada <rgirada@vmware.com>
* | | | Merge pull request #6927 from donaldsharp/16_coverityOlivier Dugeon2020-10-1213-67/+77
|\ \ \ \ | |_|/ / |/| | | Cleanup a bunch of new coverity issues
| * | | ospf6d, tests: Prevent use after freeDonald Sharp2020-10-119-60/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code pattern: for (ALL_LSDB(lsdb, lsa)) { remove_lsa(lsa) } has a use after free in ALL_LSDB, since we ask for the next pointer, after it has been freed. Modify the code such that we grab the next pointer before we can possibly free it. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
| * | | ospf6d: Make ospf6_lsa_lock follow normal FRR patternDonald Sharp2020-10-112-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The normal ospf6_lsa_lock call should return the pointer to the lock data structure we are holding. This is the normal pattern for locking a data structure in FRR. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
| * | | zebra: zevpn cannot be null passed into zebra_evpn_es_evi_show_one_evpnDonald Sharp2020-10-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In zebra_evpn_es_evi_show_vni the zevpn pointer if passed into zebra_evpn_es_evi_show_one_evi will crash if it is null and we have code that checks that it is non null and then immediately calls the function. Add a return to prevent a crash. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
| * | | zebra: n->mac is derefed in all pathsDonald Sharp2020-10-111-3/+2
|/ / / | | | | | | | | | | | | | | | | | | No need to check for n->mac existence as that all paths leading to this code have n->mac already derefed. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* | | Merge pull request #7222 from idryzhov/fix-debugRenato Westphal2020-10-1011-15/+17
|\ \ \ | | | | | | | | fix debug commands node inconsistencies
| * | | *: move "show debugging ..." commands to enable nodeIgor Ryzhov2020-10-0211-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | Use the same node for "show debugging" commands in all daemons. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
| * | | *: move "debug ..." commands to enable nodeIgor Ryzhov2020-10-023-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Use the same node for "debug" commands in all daemons. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* | | | Merge pull request #7270 from donaldsharp/isis_cleanupRenato Westphal2020-10-107-46/+42
|\ \ \ \ | | | | | | | | | | Isis cleanup
| * | | | isisd: circuit->area->isis to circuit->isisDonald Sharp2020-10-095-37/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code in isisd uses `circuit->area->isis` all the time but we know that circuit now has a valid `circuit->isis` pointer so let's use that and cleanup the long dereference. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
| * | | | isisd: Always set `circuit->isis` on creationDonald Sharp2020-10-093-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are code paths where we were not always setting the circuit->isis on creation. Fix that up so it will always happen. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* | | | | Merge pull request #7269 from idryzhov/rip-crash-fixDonald Sharp2020-10-102-2/+4
|\ \ \ \ \ | | | | | | | | | | | | rip(ng)d: fix interfaces cleaning (leads to crash #6477)
| * | | | | rip(ng)d: fix interfaces cleaningIgor Ryzhov2020-10-092-2/+4
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rip(ng)d_instance_disable unlinks the vrf from the instance which means that rip(ng)_interfaces_clean never works, because rip(ng)->vrf is always NULL there. This leads to the crash #6477. Clean interfaces before disabling the instance to fix the issue. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* | | | | Merge pull request #7268 from ton31337/fix/dead_name_bgpdDonald Sharp2020-10-101-1/+1
|\ \ \ \ \ | | | | | | | | | | | | bgpd: Use default VRF name if using `router bgp` command
| * | | | | bgpd: Use default VRF name if using `router bgp` commandDonatas Abraitis2020-10-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we enter `router bgp` it enters non-VRF instance which is default. No need to check for VRF/VIEW name, kinda dead code. Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
* | | | | | Merge pull request #7271 from vishaldhingra/staticDonald Sharp2020-10-101-0/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | staticd: To set the default value of blackhole type correctly
| * | | | | | staticd: To set the default value of blackhole type correctlyvdhingra2020-10-091-0/+1
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When nexthop is allocated, default value of blockhole type was not getting set, this leads to below problem. The default value should be in-sync with the deafult value in yang model. c t ip route 131.1.1.0/24 Null0 do show running-config ... ! ip route 131.1.1.0/24 blackhole ! end Signed-off-by: vishaldhingra <vdhingra@vmware.com>
* | | | | | Merge pull request #7265 from qlyoung/doc-blackMark Stapp2020-10-091-5/+18
|\ \ \ \ \ \ | |/ / / / / |/| | | | | doc: document use of black for python formatting
| * | | | | doc: document use of black for python formattingQuentin Young2020-10-081-5/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also moves "Exceptions" for C code under the C subsection. Signed-off-by: Quentin Young <qlyoung@nvidia.com>
* | | | | | Merge pull request #7266 from idryzhov/isis-fixesDonald Sharp2020-10-093-31/+29
|\ \ \ \ \ \ | | | | | | | | | | | | | | isis crash fix
| * | | | | | isisd: move debug variables under ifdefIgor Ryzhov2020-10-081-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
| * | | | | | isisd: check for circuit existence on interface addr changeIgor Ryzhov2020-10-081-7/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
| * | | | | | isisd: fix incorrect vrf lookupsIgor Ryzhov2020-10-082-22/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lookup in C_STATE_NA must be made before the new circuit creation, or it will be leaked if the isis instance is not found. All other lookups are unnecessary - we just need to remember the previously used instance. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
| * | | | | | isisd: add missing rollback if config is invalidIgor Ryzhov2020-10-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* | | | | | | Merge pull request #7252 from sworleys/EVPN-RType-HelpDonatas Abraitis2020-10-092-67/+78
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | lib,bgpd: EVPN help string cleanup
| * | | | | | | bgpd: re-use HELP_STR evpn macrosStephen Worley2020-10-081-67/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Re-use some of the HELP_STR macros rather than copypastaing strings everywhere. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
| * | | | | | | lib: add some EVPN help string constantsStephen Worley2020-10-081-0/+11
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add some EVPN help string constants to make use of in later commits. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
* | | | | | | Merge pull request #7264 from donaldsharp/ospfv3_funkinessDonatas Abraitis2020-10-096-7/+6
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | | Some cleanup from recent commits
| * | | | | | doc: Fix pimd.rst warnings issued by sphinxDonald Sharp2020-10-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A couple warnings have sneaked into the compilation of the pim documentation. Fix accordingly. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
| * | | | | | ospf6d: Move header includes around to reflect realityDonald Sharp2020-10-095-5/+4
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ospf6_network.h needs ospf6_top.h to be included first. This makes newer versions of gcc much much happier. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* | | | | | Merge pull request #7262 from idryzhov/hide-bgpd-testDonald Sharp2020-10-091-2/+2
|\ \ \ \ \ \ | |/ / / / / |/| | | | | bgpd: hide test commands
| * | | | | bgpd: hide test commandsIgor Ryzhov2020-10-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>