]> git.puffer.fish Git - mirror/frr.git/log
mirror/frr.git
7 years agodoc: note dependencies necessary to build docs
Quentin Young [Fri, 2 Feb 2018 21:59:52 +0000 (16:59 -0500)]
doc: note dependencies necessary to build docs

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: add logos
Quentin Young [Fri, 2 Feb 2018 21:27:00 +0000 (16:27 -0500)]
doc: add logos

Branding!

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: fixup glossary for html build
Quentin Young [Fri, 2 Feb 2018 20:24:57 +0000 (15:24 -0500)]
doc: fixup glossary for html build

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: document documentation
Quentin Young [Fri, 2 Feb 2018 20:19:04 +0000 (15:19 -0500)]
doc: document documentation

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: reference style cleanup
Quentin Young [Fri, 2 Feb 2018 18:45:12 +0000 (13:45 -0500)]
doc: reference style cleanup

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: add glossary
Quentin Young [Fri, 2 Feb 2018 18:33:41 +0000 (13:33 -0500)]
doc: add glossary

Glossary of some common terms, fixes non-existing glossary definition
warnings.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: fixup vnc.rst to only define commands once
Quentin Young [Fri, 2 Feb 2018 17:52:50 +0000 (12:52 -0500)]
doc: fixup vnc.rst to only define commands once

Replaced stub definitions of CLI with references to their full
definitions so that Sphinx can properly cross reference them.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: fixup more broken xrefs
Quentin Young [Fri, 2 Feb 2018 17:19:28 +0000 (12:19 -0500)]
doc: fixup more broken xrefs

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: fix more broken refs, restore routeserver.rst
Quentin Young [Thu, 1 Feb 2018 22:38:05 +0000 (17:38 -0500)]
doc: fix more broken refs, restore routeserver.rst

At some point the routeserver docs got lost, converted those from texi
and put them back. Also fixed some broken cli xrefs.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: clean up cross references
Quentin Young [Thu, 1 Feb 2018 21:33:14 +0000 (16:33 -0500)]
doc: clean up cross references

Format reference directives and roles to match best practices.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: fixup some build warnings
Quentin Young [Thu, 1 Feb 2018 21:10:11 +0000 (16:10 -0500)]
doc: fixup some build warnings

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: add targets for user & developer pdf + html
Quentin Young [Thu, 1 Feb 2018 18:23:18 +0000 (13:23 -0500)]
doc: add targets for user & developer pdf + html

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years ago*: update configure.ac, Makefiles for new manpages
Quentin Young [Wed, 31 Jan 2018 22:31:17 +0000 (17:31 -0500)]
*: update configure.ac, Makefiles for new manpages

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: remove last bits of texinfo directives
Quentin Young [Wed, 31 Jan 2018 21:55:12 +0000 (16:55 -0500)]
doc: remove last bits of texinfo directives

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: remove trailing whitespace
Quentin Young [Wed, 31 Jan 2018 21:43:53 +0000 (16:43 -0500)]
doc: remove trailing whitespace

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: copy conf.py for developer's docs
Quentin Young [Wed, 31 Jan 2018 21:16:07 +0000 (16:16 -0500)]
doc: copy conf.py for developer's docs

Info extracted will probably prove useful here as well.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: overhaul manpages
Quentin Young [Wed, 31 Jan 2018 20:59:26 +0000 (15:59 -0500)]
doc: overhaul manpages

* Remove groff manpages
* Rewrite manpages in RST
* Clean up and standardize manpage content

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: move dev doc figures to figures/
Quentin Young [Wed, 31 Jan 2018 15:31:15 +0000 (10:31 -0500)]
doc: move dev doc figures to figures/

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: remove extraneous texi files
Quentin Young [Tue, 30 Jan 2018 21:20:00 +0000 (16:20 -0500)]
doc: remove extraneous texi files

Took the changes from these and applied in previous commits. Bye bye.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: reorganize
Quentin Young [Tue, 30 Jan 2018 21:14:24 +0000 (16:14 -0500)]
doc: reorganize

* Move all developer related docs into developer/
* Move all figures into their own directory
* Move manpages to own directory

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: manually merge isis.rst
Quentin Young [Tue, 30 Jan 2018 21:12:26 +0000 (16:12 -0500)]
doc: manually merge isis.rst

Manually merged:

ee65c55e2a923dd9499baa3207d629a09600ba64

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: add pim.rst
Quentin Young [Tue, 30 Jan 2018 21:08:10 +0000 (16:08 -0500)]
doc: add pim.rst

Manually merged:

42642babdd1bb3a350affb459f56a4494461c203

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: additional merging
Quentin Young [Tue, 30 Jan 2018 20:52:16 +0000 (15:52 -0500)]
doc: additional merging

Manually merged:

6347ca161f94af4baa853bf09be7fff076e75491

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge branch 'master' into docs-user
Quentin Young [Tue, 30 Jan 2018 20:05:15 +0000 (15:05 -0500)]
Merge branch 'master' into docs-user

Manually merged these doc commits:

3bb7cd7f56649ef17eeada95c132de1146c5fc92
ff21655441a64c427b3e373272e7b4564a8a1bb1

7 years agoMerge pull request #1690 from dslicenc/bgpd-vrf-show-cm17377
Lou Berger [Tue, 30 Jan 2018 16:42:26 +0000 (11:42 -0500)]
Merge pull request #1690 from dslicenc/bgpd-vrf-show-cm17377

bgpd: fix output of show bgp vrf all neighbor x.x.x.x

7 years agobgpd: fix output of show bgp vrf all neighbor x.x.x.x 1690/head
Don Slice [Thu, 25 Jan 2018 16:06:27 +0000 (16:06 +0000)]
bgpd: fix output of show bgp vrf all neighbor x.x.x.x

Problem reported with output of the command "show bgp vrf all
neighbor x.x.x.x" not limiting the output to that peer in any vrf.
This fix corrects the logic to display by neighbor
(ipv4/ipv6/interface) in any vrf.

Ticket: CM-17377
Signed-off-by: Don Slice <dslice@cumulusnetworks.com>
7 years agoMerge pull request #1688 from chiragshah6/mdev
Olivier Dugeon [Tue, 30 Jan 2018 10:37:59 +0000 (11:37 +0100)]
Merge pull request #1688 from chiragshah6/mdev

ospfd: Fix default-info and redis cmd options

7 years agoospfd: Fix default-info and redis cmd options 1688/head
Chirag Shah [Tue, 30 Jan 2018 02:03:08 +0000 (18:03 -0800)]
ospfd: Fix default-info and redis cmd options

Fix default-information parsing of metric-type,
route-map.
show running to display metic-type 2.

metric, metric-type and route-map can be configured in
any order, running-config displays in specific order..

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
7 years agoMerge pull request #1686 from donaldsharp/mem_leaks_zebra
Renato Westphal [Mon, 29 Jan 2018 22:41:07 +0000 (20:41 -0200)]
Merge pull request #1686 from donaldsharp/mem_leaks_zebra

Mem leaks zebra

7 years agoMerge pull request #1684 from donaldsharp/vrf_leak
Renato Westphal [Mon, 29 Jan 2018 22:34:02 +0000 (20:34 -0200)]
Merge pull request #1684 from donaldsharp/vrf_leak

zebra: Fix to get correct nexthop-vrf

7 years agodoc: manually finish conversion
Quentin Young [Mon, 29 Jan 2018 21:38:07 +0000 (16:38 -0500)]
doc: manually finish conversion

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agozebra: On shutdown actually delete rn's assoc w/ other_tables 1686/head
Donald Sharp [Mon, 29 Jan 2018 21:20:41 +0000 (16:20 -0500)]
zebra: On shutdown actually delete rn's assoc w/ other_tables

Zebra stores routes coming from the kernel for non-default
tables.  This information on shutdown was being leaked
because we never cleaned it up.  Allow for this to happen
now.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1685 from LabNConsulting/working/vpn-doc
Donald Sharp [Mon, 29 Jan 2018 20:51:30 +0000 (15:51 -0500)]
Merge pull request #1685 from LabNConsulting/working/vpn-doc

doc: minor cleanup of bgp vpnvX and remove encap safi references

7 years agolib: When we shutdown we would leak interface description
Donald Sharp [Mon, 29 Jan 2018 20:38:03 +0000 (15:38 -0500)]
lib: When we shutdown we would leak interface description

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com.
7 years agozebra: Cleanup error handling of nexthop vrf and vrf 1684/head
Donald Sharp [Mon, 29 Jan 2018 20:18:28 +0000 (15:18 -0500)]
zebra: Cleanup error handling of nexthop vrf and vrf

The error handling of the nexthop vrf and the vrf
for what was specified on the cli was not as clean
as it should have been.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agodoc: remove references to encap safi 1685/head
Lou Berger [Mon, 29 Jan 2018 20:03:03 +0000 (15:03 -0500)]
doc: remove references to encap safi

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agodoc: change vpnvX -> ipvX vpn
Lou Berger [Mon, 29 Jan 2018 19:55:16 +0000 (14:55 -0500)]
doc: change vpnvX -> ipvX vpn

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agoMerge pull request #1680 from donaldsharp/inet_pton
Renato Westphal [Mon, 29 Jan 2018 19:24:33 +0000 (17:24 -0200)]
Merge pull request #1680 from donaldsharp/inet_pton

zebra: Fix failure to parse src

7 years agodoc: cleanup multiple
Quentin Young [Mon, 29 Jan 2018 17:16:20 +0000 (12:16 -0500)]
doc: cleanup multiple

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: cleanup kernel.rst
Quentin Young [Mon, 29 Jan 2018 15:57:13 +0000 (10:57 -0500)]
doc: cleanup kernel.rst

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: fixup routemap.rst
Quentin Young [Mon, 29 Jan 2018 15:46:35 +0000 (10:46 -0500)]
doc: fixup routemap.rst

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1679 from qlyoung/revert-remove-options-directly-connected
Russ White [Mon, 29 Jan 2018 13:25:49 +0000 (08:25 -0500)]
Merge pull request #1679 from qlyoung/revert-remove-options-directly-connected

Revert "bgpd: disallow invalid config at cli layer"

7 years agozebra: Fix failure to parse src 1680/head
Donald Sharp [Sat, 27 Jan 2018 23:56:30 +0000 (18:56 -0500)]
zebra: Fix failure to parse src

If src happens to point at all 0's due to not initializing
it and if the address passed in is not a v6 address then
we would not set src in the AF_INET6 call and would
fail the (src.ipv4.s_addr && inet_pton(AF_INET...)
call.  Thus causing us to return a NULL and make
the routemap code think there was an issue.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1659 from chiragshah6/ospf_vrf_dev
Martin Winter [Sat, 27 Jan 2018 17:17:45 +0000 (09:17 -0800)]
Merge pull request #1659 from chiragshah6/ospf_vrf_dev

ospfd: show ip ospf neighbor json output format

7 years agozebra: Fix to get correct nexthop-vrf
Donald Sharp [Sat, 27 Jan 2018 10:28:51 +0000 (05:28 -0500)]
zebra: Fix to get correct nexthop-vrf

The nexthop_vrf should be looked up as appropriate,
If the nexthop_vrf was specified use that, else
use the vrf context of what was passed in.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoRevert "bgpd: disallow invalid config at cli layer" 1679/head
Quentin Young [Fri, 26 Jan 2018 22:15:44 +0000 (17:15 -0500)]
Revert "bgpd: disallow invalid config at cli layer"

This reverts commit a174be631a14e0271fde6858fcb4d7ab55165014.

Turns out we need that variable to accept peer groups.

7 years agodoc: remove some more @stuff{}
Quentin Young [Fri, 26 Jan 2018 22:09:25 +0000 (17:09 -0500)]
doc: remove some more @stuff{}

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1671 from donaldsharp/southbound_pointer
Russ White [Fri, 26 Jan 2018 21:40:01 +0000 (16:40 -0500)]
Merge pull request #1671 from donaldsharp/southbound_pointer

Southbound pointer

7 years agodoc: strip trailing whitespace
Quentin Young [Fri, 26 Jan 2018 21:11:41 +0000 (16:11 -0500)]
doc: strip trailing whitespace

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: use :abbr:
Quentin Young [Fri, 26 Jan 2018 21:10:07 +0000 (16:10 -0500)]
doc: use :abbr:

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: use :term:, will add glossary later
Quentin Young [Fri, 26 Jan 2018 20:57:47 +0000 (15:57 -0500)]
doc: use :term:, will add glossary later

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: fix cli documentation formatting
Quentin Young [Fri, 26 Jan 2018 20:52:30 +0000 (15:52 -0500)]
doc: fix cli documentation formatting

* Use new 'clicmd' directive / role
* Convert old style range syntax to new style

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: add clicmd role for frr cli
Quentin Young [Fri, 26 Jan 2018 20:51:59 +0000 (15:51 -0500)]
doc: add clicmd role for frr cli

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: replace random @cite{RFC...} with :rfc:...
Quentin Young [Fri, 26 Jan 2018 19:44:58 +0000 (14:44 -0500)]
doc: replace random @cite{RFC...} with :rfc:...

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: shotgun cleanup
Quentin Young [Fri, 26 Jan 2018 19:40:54 +0000 (14:40 -0500)]
doc: shotgun cleanup

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: @smp{foo} -> ``foo``
Quentin Young [Fri, 26 Jan 2018 18:50:36 +0000 (13:50 -0500)]
doc: @smp{foo} -> ``foo``

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: cleanup installation instructions
Quentin Young [Fri, 26 Jan 2018 18:29:16 +0000 (13:29 -0500)]
doc: cleanup installation instructions

Use program and option directives for CLI options

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: fixup eigrpd.rst
Quentin Young [Fri, 26 Jan 2018 17:57:34 +0000 (12:57 -0500)]
doc: fixup eigrpd.rst

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: remove @group / @end group
Quentin Young [Fri, 26 Jan 2018 17:38:08 +0000 (12:38 -0500)]
doc: remove @group / @end group

Don't need these in RST

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: rename main.rst -> zebra.rst
Quentin Young [Fri, 26 Jan 2018 17:35:52 +0000 (12:35 -0500)]
doc: rename main.rst -> zebra.rst

This name hasn't made sense for a long time.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1676 from dslicenc/cm19322-bgp-json
Renato Westphal [Fri, 26 Jan 2018 12:52:19 +0000 (10:52 -0200)]
Merge pull request #1676 from dslicenc/cm19322-bgp-json

bgpd: remove poorly located bestpath json output

7 years agoMerge pull request #1672 from qlyoung/frr-pthread-improvements
Renato Westphal [Fri, 26 Jan 2018 12:47:55 +0000 (10:47 -0200)]
Merge pull request #1672 from qlyoung/frr-pthread-improvements

FRR pthread improvements

7 years agoMerge pull request #1675 from donaldsharp/ptm_crash
Renato Westphal [Thu, 25 Jan 2018 18:12:01 +0000 (16:12 -0200)]
Merge pull request #1675 from donaldsharp/ptm_crash

zebra: Fix crash in ptm code

7 years agobgpd: remove poorly located bestpath json output 1676/head
Don Slice [Thu, 25 Jan 2018 17:45:40 +0000 (17:45 +0000)]
bgpd: remove poorly located bestpath json output

The bestpath multipath-relax setting was added to the output of
"show ip bgp neighbor json" several months ago but this is not
the correct place to display that information and this fix removes
it from there.  The multipath-relax setting  was also added
to the output of "show ip bgp sum json" which is fine.

Signed-off-by: Don Slice <dslice@cumulusnetworks.com>
7 years agoMerge pull request #1668 from qlyoung/fix-bgp-corrupt-header-assert
Russ White [Thu, 25 Jan 2018 14:15:20 +0000 (09:15 -0500)]
Merge pull request #1668 from qlyoung/fix-bgp-corrupt-header-assert

bgpd: fix race condition causing occasional assert

7 years agoMerge pull request #1674 from chiragshah6/mdev
Russ White [Thu, 25 Jan 2018 14:07:23 +0000 (09:07 -0500)]
Merge pull request #1674 from chiragshah6/mdev

ospfd: clean up route map prefixlist vrf during exit

7 years agoMerge pull request #1673 from opensourcerouting/ospfd-metric-issue
Donald Sharp [Thu, 25 Jan 2018 13:19:53 +0000 (08:19 -0500)]
Merge pull request #1673 from opensourcerouting/ospfd-metric-issue

ospfd: allow multiple options in the redistribute command

7 years agozebra: Fix crash in ptm code 1675/head
Donald Sharp [Thu, 25 Jan 2018 01:53:40 +0000 (20:53 -0500)]
zebra: Fix crash in ptm code

The code change to switch from stream_getX to STREAM_GETX added
a goto statement to be handled for a failure case.  The failure
case was properly handled but the normal case was not tested
properly and there exists a situation where we would free
the out_ctxt 2 times.  Prevent that from happening.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoospfd: clean route map prefixlist vrf during exit 1674/head
Chirag Shah [Thu, 25 Jan 2018 00:41:07 +0000 (16:41 -0800)]
ospfd: clean route map prefixlist vrf during exit

Call Route-map, prefix-list clean up routines and
vrf clearnup during ospf daemon exit routine.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
7 years agoospfd: allow multiple options in the redistribute command 1673/head
Renato Westphal [Wed, 24 Jan 2018 23:05:27 +0000 (21:05 -0200)]
ospfd: allow multiple options in the redistribute command

Other variants of the redistribute command (e.g. "redistribute
<ospf|table> (1-65535) ..." already accept multiple options.

Fixes Issue #1670.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agozebra: Move selected_fib assignment 1671/head
Donald Sharp [Wed, 24 Jan 2018 14:16:39 +0000 (09:16 -0500)]
zebra: Move selected_fib assignment

The dest->selected_fib assignment needs to happen
after the install and should be controlled by
the southbound api return of success or failure.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agobgpd: check flags before attempting keepalive ops 1672/head
Quentin Young [Wed, 24 Jan 2018 22:47:17 +0000 (17:47 -0500)]
bgpd: check flags before attempting keepalive ops

If a peer already has keepalives turned on when asking to turn them on,
return immediately. Same thing for turning them off.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agotests: make tests happy for pthread changes
Quentin Young [Wed, 24 Jan 2018 20:53:07 +0000 (15:53 -0500)]
tests: make tests happy for pthread changes

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agobgpd: update pthreads to use lib changes
Quentin Young [Wed, 24 Jan 2018 16:07:27 +0000 (11:07 -0500)]
bgpd: update pthreads to use lib changes

Use the new threading facilities provided in lib/ to streamline the
threads used in bgpd. In particular, all of the lifecycle code has been
removed from the I/O thread and replaced with the default loop. Did not
do the same to the keepalives thread as it is much smaller (doesn't need
the event system).

Also cleaned up some comments to match the style guide.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib: streamline frr_pthreads, add default loop
Quentin Young [Mon, 22 Jan 2018 19:23:55 +0000 (14:23 -0500)]
lib: streamline frr_pthreads, add default loop

Some work on FRR's pthread wrapper.

* Provide a built-in way to synchronize thread startup
* Make utility functions take frr_pthread * instead of its integer ID
* Pass frr_pthread * as pthread start function argument
* Correct some comment styling
* Rename some variables to match naming conventions in the file
* Change parameter ordering in stop function prototype to follow the
  convention in the other functions
* Default new frr_pthreads to using a vanilla event loop

For the last point, the original goal when designing the implementation
of pthreads into FRR was to be able to use the thread.c event based
system inside pthreads. This code essentially encapuslates all the
thread.c functionality into an easy to use pthread out of the box.
Creating a new frr_pthread with a null attributes field will cause the
created frr_pthread to run a thread.c event loop. The upshot of this is
that it is now possible to safely run existing functions in a pthread in
roughly 3 lines of code. It also serves as an example / starting point
for others.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agozebra: Modify southbound interface to pass `struct route_node`
Donald Sharp [Wed, 24 Jan 2018 13:22:57 +0000 (08:22 -0500)]
zebra: Modify southbound interface to pass `struct route_node`

The route_node that we are working on is going to be interesting
to the kernel_route_rib_pass_fail.  So I am setting up the
code to allow me to pass it.  This will be done in a subsuquent
commit.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1664 from chiragshah6/ospfv3_dev
Russ White [Wed, 24 Jan 2018 00:20:43 +0000 (19:20 -0500)]
Merge pull request #1664 from chiragshah6/ospfv3_dev

ospf6d: SPF calculation w/ multiple Router LSAs originated from given Adv Router

7 years agoMerge pull request #1665 from donaldsharp/nexthop_labels
Russ White [Wed, 24 Jan 2018 00:09:08 +0000 (19:09 -0500)]
Merge pull request #1665 from donaldsharp/nexthop_labels

Cleanup some zclient code

7 years agoMerge pull request #1667 from Orange-OpenSource/master
Russ White [Wed, 24 Jan 2018 00:05:05 +0000 (19:05 -0500)]
Merge pull request #1667 from Orange-OpenSource/master

OSPFD: Solve Issue #1652

7 years agobgpd: fix race condition causing occasional assert 1668/head
Quentin Young [Mon, 18 Dec 2017 18:19:22 +0000 (13:19 -0500)]
bgpd: fix race condition causing occasional assert

If a BGP message header fails validation we send a BGP NOTIFICATION from
the I/O thread. At this time we clear the output buffer, push a
NOTIFICATION and then call the manual write function for errors. But in
between the push and the write the main thread could have pushed some
other message. Thus we need to hold the lock for the duration of the
function. TOCTTOU.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoOSPFD: Solve Issue #1652 1667/head
Olivier Dugeon [Tue, 23 Jan 2018 15:15:58 +0000 (16:15 +0100)]
OSPFD: Solve Issue #1652

Issue 1652 was related to OSPF Crash on termination when ospf is
configured to flood self Opaque LSA e.g TE or RI Opaque LSA.

Analysis:
The problem resides in free_opaque_info_per_type() line 576 of
ospf_opaque.c. Once LSA flush, the function removes by calling
listnode_delete() function the opaque_info_per_type data structure.
However, this is also performed at the upper level function
ospf_opaque_type10lsa_term() which call list_delete_and_null() function.
This result into a double free pointer exception.

Solution:
Remove call to listnode_delete() calls in free_opaque_info_per_type()
function as it is done by list_delete_and_null(). Delete lines 592 - 615.
Remove also second call to ospf_opaque_type10lsa_term() in ospfd.c line 848.

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
7 years agoMerge pull request #1618 from donaldsharp/zebra_startup_ordering
Philippe Guibert [Tue, 23 Jan 2018 07:25:01 +0000 (08:25 +0100)]
Merge pull request #1618 from donaldsharp/zebra_startup_ordering

zebra route-leaking for static routes

7 years agoospf6d: spf calculation w/ multiple router lsas 1664/head
Chirag Shah [Wed, 17 Jan 2018 18:55:46 +0000 (10:55 -0800)]
ospf6d: spf calculation w/ multiple router lsas

An OSPFv3 enabled Router can originate or receive
multiple Link State-IDs for Router LSAs.
As per RFC 5340 A 4.3, more than one Router LSAs,
from given Vertex is considered (as concatenated)
single large Router LSA.

Created hidden show command to simulate concatenated
large LSA from advertising/self Router LSAs.

Ticket:CM-19329
Reviewed By:
Testing Done:
Simulate 160 subinterfaces between R1 === R2--R3,
This triggers R1 and R2 to generate multiple link state
IDs for Router LSAs. During SPF calculation only aggregated
single router LSA processed and SPF tree formed.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
7 years agobgpd, lib, pimd: Abstract commands for nexthop tracking 1665/head
Donald Sharp [Mon, 22 Jan 2018 23:36:03 +0000 (18:36 -0500)]
bgpd, lib, pimd: Abstract commands for nexthop tracking

Abstract the code that sends the zapi message into zebra
for the turn on/off of nexthop tracking for a prefix.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agopimd: No need to assert on the redist_default
Donald Sharp [Mon, 22 Jan 2018 23:22:09 +0000 (18:22 -0500)]
pimd: No need to assert on the redist_default

zclient_init sets the redist_default to the appropriate
value, testing it with an assert doesn't really provide
us with much of anything useful.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib: Unset bitmap when not using it
Donald Sharp [Mon, 22 Jan 2018 23:18:38 +0000 (18:18 -0500)]
lib: Unset bitmap when not using it

The zclient->redist bitmap for vrf's was being set again
for the zclient_send_dereg_requests function.  This should
be a unset on tear down.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib: Cleanup some zclient clutter.
Donald Sharp [Mon, 22 Jan 2018 23:16:59 +0000 (18:16 -0500)]
lib: Cleanup some zclient clutter.

The zclient code can be cleaned up a tiny bit and hopefully
improve it's indentation some.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1655 from LabNConsulting/working/master/consistent_count
Quentin Young [Mon, 22 Jan 2018 23:53:19 +0000 (18:53 -0500)]
Merge pull request #1655 from LabNConsulting/working/master/consistent_count

bgpd: update last_update whenever obuf sent

7 years agobgpd: update last_update whenever obuf sent 1655/head
Lou Berger [Sun, 7 Jan 2018 14:41:53 +0000 (09:41 -0500)]
bgpd: update last_update whenever obuf sent
      (to be consistent with last_write updates)

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agoMerge pull request #1663 from donaldsharp/mpls
Renato Westphal [Mon, 22 Jan 2018 19:43:10 +0000 (17:43 -0200)]
Merge pull request #1663 from donaldsharp/mpls

Mpls

7 years agoMerge pull request #1656 from ak503/bgp
Renato Westphal [Mon, 22 Jan 2018 19:03:58 +0000 (17:03 -0200)]
Merge pull request #1656 from ak503/bgp

bgp: small fix for write to 'address-family l2vpn evpn' configuration

7 years agozebra: implement recursive MPLS labels 1663/head
Renato Westphal [Wed, 20 Sep 2017 03:05:25 +0000 (00:05 -0300)]
zebra: implement recursive MPLS labels

When a nexthop is resolved via a label based nexthop, copy
the labels into the newly created recursive nexthop.

Please note that this does not fix the case where we
have a label based nexthop that is recursively resolved
through *another* nexthop that is also label based.
In this case we need to create a new label stack
for those routes.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agozebra: use zclient_create_header
Donald Sharp [Mon, 22 Jan 2018 13:16:27 +0000 (08:16 -0500)]
zebra: use zclient_create_header

The function zserv_create_header was exactly the same
as zclient_create_header.  Let's just have one in the
system.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib, zebra: Rename and place appropriately the label stack
Donald Sharp [Sun, 21 Jan 2018 21:11:50 +0000 (16:11 -0500)]
lib, zebra: Rename and place appropriately the label stack

Fix and rename the label stack to be better named.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1651 from donaldsharp/redhat_build_fpm
Russ White [Mon, 22 Jan 2018 14:16:21 +0000 (09:16 -0500)]
Merge pull request #1651 from donaldsharp/redhat_build_fpm

redhat: Build with FPM

7 years agoMerge pull request #1658 from Orange-OpenSource/TE
Russ White [Mon, 22 Jan 2018 14:01:39 +0000 (09:01 -0500)]
Merge pull request #1658 from Orange-OpenSource/TE

Doc: Update OSPF-TE and ISIS-TE example

7 years agoMerge pull request #1587 from pguibert6WIND/issue_385_step23
Russ White [Mon, 22 Jan 2018 14:01:01 +0000 (09:01 -0500)]
Merge pull request #1587 from pguibert6WIND/issue_385_step23

Netns Support / passing vrf_id_t to 32 bit work

7 years agozebra: replace 0 value on zebra with NS_DEFAULT 1587/head
Philippe Guibert [Mon, 22 Jan 2018 08:55:26 +0000 (09:55 +0100)]
zebra: replace 0 value on zebra with NS_DEFAULT

On some places, macro NS_DEFAULT was not used. This commit is replacind
on some identified places where 0 can be replaced with NS_DEFAULT macro.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agozebra: replace 0 value on zebra with VRF_DEFAULT
Philippe Guibert [Mon, 22 Jan 2018 08:38:45 +0000 (09:38 +0100)]
zebra: replace 0 value on zebra with VRF_DEFAULT

On some places of code, the VRF_DEFAULT define was not used. This commit
is ensuring that the macros is well used.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agobgpd: bgp_redist_lookup param handles instances, not vrfs
Philippe Guibert [Thu, 11 Jan 2018 08:11:36 +0000 (09:11 +0100)]
bgpd: bgp_redist_lookup param handles instances, not vrfs

The VRF_DEFAULT parameter is incorrectly used. The 0 value for the bgp
instance is passed instead.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
fixup bgpd: fix compilation issue with bgpd