]> git.puffer.fish Git - mirror/frr.git/log
mirror/frr.git
7 years agolib: Fixup strlcat and strlcpy to be a bit more descriptive 1886/head
Donald Sharp [Wed, 14 Mar 2018 12:43:17 +0000 (08:43 -0400)]
lib: Fixup strlcat and strlcpy to be a bit more descriptive

When I use these functions and am programming on linux I
always have to pull up a man page for these two functions
since they exist in *BSD land only.

Modify the name of the size variable to destsize on
pass in to give me the small hint I need to know
what to do.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1880 from pguibert6WIND/enforce_vrf_netns_enable
Donald Sharp [Wed, 14 Mar 2018 11:51:38 +0000 (07:51 -0400)]
Merge pull request #1880 from pguibert6WIND/enforce_vrf_netns_enable

lib: enforce vrf netns if setns() returns ok

7 years agoMerge pull request #1867 from LabNConsulting/working/master/indent2
Quentin Young [Wed, 14 Mar 2018 01:09:15 +0000 (21:09 -0400)]
Merge pull request #1867 from LabNConsulting/working/master/indent2

more indent.py related changes

7 years agoMerge pull request #1704 from qlyoung/docuser
Martin Winter [Tue, 13 Mar 2018 22:12:54 +0000 (15:12 -0700)]
Merge pull request #1704 from qlyoung/docuser

Documentation update to ReST

7 years agoMerge pull request #1831 from qlyoung/frr-pthread-fixups
Renato Westphal [Tue, 13 Mar 2018 21:22:22 +0000 (18:22 -0300)]
Merge pull request #1831 from qlyoung/frr-pthread-fixups

lib: some frr_pthread fixes

7 years agodoc: remove misc trailing whitespace 1704/head
Quentin Young [Tue, 13 Mar 2018 21:11:51 +0000 (17:11 -0400)]
doc: remove misc trailing whitespace

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: Update CentOS6 doc to use puias repo for updated sphinx
Martin Winter [Tue, 13 Mar 2018 21:02:34 +0000 (14:02 -0700)]
doc: Update CentOS6 doc to use puias repo for updated sphinx

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
7 years agodoc: don't check for sphinx-build on `make clean`
Quentin Young [Tue, 13 Mar 2018 17:18:19 +0000 (13:18 -0400)]
doc: don't check for sphinx-build on `make clean`

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge branch 'master' into docuser
Quentin Young [Tue, 13 Mar 2018 16:08:38 +0000 (12:08 -0400)]
Merge branch 'master' into docuser

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib: privileges are granted to vty netns command 1880/head
Philippe Guibert [Tue, 13 Mar 2018 14:26:03 +0000 (15:26 +0100)]
lib: privileges are granted to vty netns command

Vty commands that link netns context to a vrf is requiring some
privileges. The change consists in retrieving the privileges at the
vrf_cmd_init() called by the relevant daemon. Then use it.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agozebra: upon associating netns with vrf, prileges are raised
Philippe Guibert [Tue, 13 Mar 2018 13:51:31 +0000 (14:51 +0100)]
zebra: upon associating netns with vrf, prileges are raised

In order to create the netns context, the zebra parser at startup needs
to have its privileges raised.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agovtysh: restore some DEFUNs that should not have been reformated by indent.py 1867/head
Lou Berger [Mon, 12 Mar 2018 15:51:21 +0000 (11:51 -0400)]
vtysh: restore some DEFUNs that should not have been reformated by indent.py

7 years agotools: fix indent.py to recognize all DEFUN types:
Lou Berger [Fri, 9 Mar 2018 16:49:29 +0000 (11:49 -0500)]
tools: fix indent.py to recognize all DEFUN types:
    DEFUN
    DEFUN_ATTR
    DEFUN_CMD_ELEMENT
    DEFUN_CMD_FUNC_DECL
    DEFUN_CMD_FUNC_TEXT
    DEFUN_DEPRECATED
    DEFUN_HIDDEN
    DEFUN_NOSH
    DEFUNSH
    DEFUNSH_ATTR
    DEFUNSH_DEPRECATED
    DEFUNSH_HIDDEN

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agoMerge pull request #1806 from vivek-cumulus/evpn-ipv6-tenant-routing
Philippe Guibert [Tue, 13 Mar 2018 09:20:29 +0000 (10:20 +0100)]
Merge pull request #1806 from vivek-cumulus/evpn-ipv6-tenant-routing

*: EVPN symmetric routing for IPv6 tenant routes

7 years agoMerge pull request #1860 from qlyoung/debug-mt-safe
Renato Westphal [Tue, 13 Mar 2018 02:34:51 +0000 (23:34 -0300)]
Merge pull request #1860 from qlyoung/debug-mt-safe

lib: add convenience debugging macros

7 years agoMerge pull request #1828 from qlyoung/zapi-cleanup
Renato Westphal [Tue, 13 Mar 2018 01:43:05 +0000 (22:43 -0300)]
Merge pull request #1828 from qlyoung/zapi-cleanup

zebra: giant zapi cleanup

7 years agoMerge pull request #1873 from qlyoung/fix-zlog-hexdump
Russ White [Mon, 12 Mar 2018 23:18:30 +0000 (19:18 -0400)]
Merge pull request #1873 from qlyoung/fix-zlog-hexdump

Fix zlog_hexdump

7 years agoMerge pull request #1781 from mkanjari/type5-default-originate
Russ White [Mon, 12 Mar 2018 23:17:21 +0000 (19:17 -0400)]
Merge pull request #1781 from mkanjari/type5-default-originate

Type5 default originate

7 years agoMerge branch 'master' into type5-default-originate 1781/head
Mitesh Kanjariya [Mon, 12 Mar 2018 21:47:28 +0000 (14:47 -0700)]
Merge branch 'master' into type5-default-originate

7 years agotests: add unit test for zlog 1873/head
Quentin Young [Mon, 12 Mar 2018 18:04:56 +0000 (14:04 -0400)]
tests: add unit test for zlog

Just tests zlog_hexdump right now

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib: fixup zlog_hexdump
Quentin Young [Mon, 12 Mar 2018 18:01:47 +0000 (14:01 -0400)]
lib: fixup zlog_hexdump

* Allocate correct amount of memory
* Use snprintf() instead of sprintf()

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib, zebra: slight cleanup after rebase 1828/head
Quentin Young [Fri, 9 Mar 2018 22:40:16 +0000 (17:40 -0500)]
lib, zebra: slight cleanup after rebase

Rebased zapi-cleanup, needs a bit of poking.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib, zebra: clean up zapi nits
Quentin Young [Fri, 9 Mar 2018 20:59:39 +0000 (15:59 -0500)]
lib, zebra: clean up zapi nits

* Get correct data size when parsing VRF ids
* Move some vars into smaller scope

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib: zclient.h style fixes
Quentin Young [Wed, 7 Mar 2018 17:30:51 +0000 (12:30 -0500)]
lib: zclient.h style fixes

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib, zebra: use existing zapi header struct
Quentin Young [Wed, 7 Mar 2018 16:23:58 +0000 (11:23 -0500)]
lib, zebra: use existing zapi header struct

Nobody uses it, but it's got the same definition. Move the parser
function into zclient.c and use it.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agozebra: reorganize zserv, batch i/o
Quentin Young [Tue, 6 Mar 2018 23:08:37 +0000 (18:08 -0500)]
zebra: reorganize zserv, batch i/o

Group send and receive functions together, change handlers to take a
message instead of looking at ->ibuf and ->obuf, allow zebra to read
multiple packets off the wire at a time.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agozebra: standardize ZAPI message handler args
Quentin Young [Tue, 6 Mar 2018 22:57:33 +0000 (17:57 -0500)]
zebra: standardize ZAPI message handler args

A lot of the handler functions that are called directly from the ZAPI
input processing code take different argument sets where they don't need
to. These functions are called from only one place and all have the same
fundamental information available to them to do their work. There is no
need to specialize what information is passed to them; it is cleaner and
easier to understand when they all accept the same base set of
information and extract what they need inline.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agozebra: add struct zmsghdr
Quentin Young [Tue, 6 Mar 2018 22:09:36 +0000 (17:09 -0500)]
zebra: add struct zmsghdr

Formalize the ZAPI header by documenting it in code and providing it to
message handlers free of charge to reduce complexity.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agozebra: dont return a status code in zapi handlers
Quentin Young [Tue, 6 Mar 2018 22:01:42 +0000 (17:01 -0500)]
zebra: dont return a status code in zapi handlers

All of the ZAPI message handlers return an integer that means different
things to each of them, but nobody ever reads these integers, so this is
technical debt that we can just eliminate outright.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agotests: add unit test for zlog
Quentin Young [Mon, 12 Mar 2018 18:04:56 +0000 (14:04 -0400)]
tests: add unit test for zlog

Just tests zlog_hexdump right now

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib: fixup zlog_hexdump
Quentin Young [Mon, 12 Mar 2018 18:01:47 +0000 (14:01 -0400)]
lib: fixup zlog_hexdump

* Allocate correct amount of memory
* Use snprintf() instead of sprintf()

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1868 from ajones-rvbd/ajones-for-upstream
Donald Sharp [Mon, 12 Mar 2018 18:09:41 +0000 (14:09 -0400)]
Merge pull request #1868 from ajones-rvbd/ajones-for-upstream

docs/install.texi: document --enable-numeric-version

7 years agodocs/install.texi: document --enable-numeric-version 1868/head
Arthur Jones [Mon, 12 Mar 2018 16:32:23 +0000 (16:32 +0000)]
docs/install.texi: document --enable-numeric-version

Document the configure option to strip non-numeric characters from
the version string.

Testing done:

Build alpine packages in docker, run texinfo on the doc apk package.

Issue: https://github.com/FRRouting/frr/issues/1859
Signed-off-by: Arthur Jones <arthur.jones@riverbed.com>
7 years agoMerge pull request #1858 from qlyoung/gitignore-clippy-sources
Renato Westphal [Mon, 12 Mar 2018 15:21:24 +0000 (12:21 -0300)]
Merge pull request #1858 from qlyoung/gitignore-clippy-sources

*: globally ignore clippy-generated source

7 years agolib: add convenience debugging macros 1860/head
Quentin Young [Fri, 9 Mar 2018 17:07:25 +0000 (12:07 -0500)]
lib: add convenience debugging macros

* Add DEBUG*() macros

This set of macros allows you to write printf-like debugging lines that
automatically check whether a debug is on before printing. This should
eliminate the need for explicit checks in simple cases. For example:

if (SUCH_AND_SUCH_DEBUG_IS_ON) {
zlog_warn(...);
}

Becomes:

DEBUG(warn, such_and_such, ...);

Or, equivalently,

DEBUGE(such_and_such, ...);

The levels passed to DEBUG are expanded into the names of zlog_*
functions, so the same zlog levels are available. There's also a set of
macros that have the level built into them; DEBUGE for errors, DEBUGW
for warnings, etc. Good for brevity.

* Add singular setting macros

Change the 'SET' macros to accept a boolean indicating whether the
provided bits should be set or unset, and map on/off macros to them.
Helps condense code where you already have a boolean condition that
tells you what you want to do as you can avoid writing the branch.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1866 from ajones-rvbd/ajones-for-upstream
Donald Sharp [Mon, 12 Mar 2018 12:23:53 +0000 (08:23 -0400)]
Merge pull request #1866 from ajones-rvbd/ajones-for-upstream

alpine: minimal alpine packaging

7 years agoalpine: minimal alpine packaging 1866/head
Arthur Jones [Sun, 11 Mar 2018 17:32:24 +0000 (10:32 -0700)]
alpine: minimal alpine packaging

For building dev packages for alpine, we provide a minimal APKBUILD
file and add a configure option for only numeric versions in the
VERSION variable as alpine does not allow non-numeric characters
in the version string.

These changes allow alpine to be built, but don't yet provide a
mechanism to build.  Changes to do the build in docker are coming
soon...

Testing done:

Built alpine packages in local docker environment, packages
showed no "dev" in the package name.  Also built CentOS packages
with numeric version disabled and the "dev" is still in the package
name.

Issue: https://github.com/FRRouting/frr/issues/1859
Signed-off-by: Arthur Jones <arthur.jones@riverbed.com>
7 years agoMerge pull request #1847 from msablic/pim_auto_mtrace
Donald Sharp [Sat, 10 Mar 2018 12:55:48 +0000 (07:55 -0500)]
Merge pull request #1847 from msablic/pim_auto_mtrace

pimd: mtrace only IGMP sockets

7 years agoMerge pull request #1861 from ajones-rvbd/ajones-for-upstream
Donald Sharp [Sat, 10 Mar 2018 12:05:14 +0000 (07:05 -0500)]
Merge pull request #1861 from ajones-rvbd/ajones-for-upstream

zebra/if_netlink: compile under musl-libc

7 years agoMerge branch 'master' of https://github.com/frrouting/frr into evpn-ipv6-tenant-routing 1806/head
vivek [Sat, 10 Mar 2018 04:03:41 +0000 (04:03 +0000)]
Merge branch 'master' of https://github.com/frrouting/frr into evpn-ipv6-tenant-routing

Conflicts:
bgpd/bgp_evpn.c

7 years agozebra/if_netlink: compile under musl-libc 1861/head
Arthur Jones [Fri, 9 Mar 2018 23:08:24 +0000 (15:08 -0800)]
zebra/if_netlink: compile under musl-libc

musl-libc is a lightweight libc used by alpine linux:

https://www.musl-libc.org/

AFAICT, this is the only change to the source needed to get
basic frr support compiling on musl.

Two changes in one patch, get ethhdr from netinet/if_ether.h
and replace the only __caddr_t I could find in the source base
with caddr_t.

Testing done:

Compiled apk packages using a docker environment (patches
coming soon) also compiled redhat and debian using a similar
docker environment (RFC patches for those changes are queued
up too)...

Issue: https://github.com/FRRouting/frr/issues/1859
Signed-off-by: Arthur Jones <arthur.jones@riverbed.com>
7 years ago*: globally ignore clippy-generated source 1858/head
Quentin Young [Fri, 9 Mar 2018 22:51:42 +0000 (17:51 -0500)]
*: globally ignore clippy-generated source

Tired of dealing with this

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1813 from donaldsharp/pbr_setup
Philippe Guibert [Fri, 9 Mar 2018 17:05:03 +0000 (18:05 +0100)]
Merge pull request #1813 from donaldsharp/pbr_setup

Pbr setup

7 years agolib: frr_pthread int size nits 1831/head
Quentin Young [Fri, 9 Mar 2018 16:20:53 +0000 (11:20 -0500)]
lib: frr_pthread int size nits

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: don't build html by default
Quentin Young [Fri, 9 Mar 2018 16:12:38 +0000 (11:12 -0500)]
doc: don't build html by default

Since docs are rebuilt on every make invocation, don't bother building html by
default to save a bit of time.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib, zebra: Add Rule insertion success/failure messages 1813/head
Donald Sharp [Fri, 23 Feb 2018 18:48:06 +0000 (13:48 -0500)]
lib, zebra: Add Rule insertion success/failure messages

Add code to allow rule insertion notifications to be
sent back up the stack.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agodoc: disable parallel build
Quentin Young [Fri, 9 Mar 2018 16:11:04 +0000 (11:11 -0500)]
doc: disable parallel build

Sphinx is not designed to be run in parallel and exhibits filesystem race
conditions if it is. Disable parallel build.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agozebra: Make the ifp part of the rule structure
Donald Sharp [Fri, 23 Feb 2018 18:45:36 +0000 (13:45 -0500)]
zebra: Make the ifp part of the rule structure

Every place we need to pass around the rule structure
we need to pass around the ifp as well.  Move it into
the structure.  This will also allow us to notify up
to higher level protocols that this worked properly
or not better too.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agozebra: Keep track of rules written
Donald Sharp [Fri, 16 Feb 2018 02:34:04 +0000 (21:34 -0500)]
zebra: Keep track of rules written

Keep track of rules written into the kernel.  This will
allow us to delete them on shutdown if we are not cleaned
up properly.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agozebra: Cleanup api
Donald Sharp [Fri, 16 Feb 2018 01:11:12 +0000 (20:11 -0500)]
zebra: Cleanup api

Allow the add/delete to go through a intermediary function in
zebra_pbr.c instead of directly to the underlying os call.  This
will allow future refinements to track the data a bit better
so that on shutdown we can delete the rules.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agozebra: Cleanup a couple of api issues
Donald Sharp [Fri, 16 Feb 2018 00:55:56 +0000 (19:55 -0500)]
zebra: Cleanup a couple of api issues

1) use uint32_t instead of u_int32_t as we are supposed to
2) Consolidate priority into the rule.
3) Cleanup the api from this.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib, zebra: Add rule encoding
Donald Sharp [Thu, 15 Feb 2018 00:52:01 +0000 (19:52 -0500)]
lib, zebra: Add rule encoding

Add some code to pass the rule we want installed into
the kernel.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years ago*: PBR - netlink interaction and basic definitions
vivek [Sun, 4 Feb 2018 12:33:33 +0000 (12:33 +0000)]
*: PBR - netlink interaction and basic definitions

Implement netlink interactions for Policy Based Routing. This includes
APIs to install and uninstall rules and handle notifications from the
kernel related to rule addition or deletion. Various definitions are
added to facilitate this.

Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com>
Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib, vtysh: Start cli for nexthop-group
Donald Sharp [Fri, 26 Jan 2018 15:59:15 +0000 (10:59 -0500)]
lib, vtysh: Start cli for nexthop-group

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib: Isolate nexthop_group functions to nexthop_group.c
Donald Sharp [Fri, 26 Jan 2018 15:12:35 +0000 (10:12 -0500)]
lib: Isolate nexthop_group functions to nexthop_group.c

Also modify `struct route_entry` to use nexthop_groups.
Move ALL_NEXTHOPS loop to nexthop_group.h

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib, zebra: Allow zapi to send down the tableid
Donald Sharp [Fri, 9 Feb 2018 23:38:02 +0000 (18:38 -0500)]
lib, zebra: Allow zapi to send down the tableid

Allow the calling daemon to pass down what table-id we
want to use to install the route.  Useful for PBR.

The vrf id passed must be the VRF_DEFAULT else this
value is ignored.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agobgpd, lib, zebra: Switch to work_queue_free_and_null
Donald Sharp [Mon, 5 Feb 2018 15:40:09 +0000 (10:40 -0500)]
bgpd, lib, zebra: Switch to work_queue_free_and_null

The work_queue_free function free'd up the wq pointer but
did not set it too NULL.  This of course causes situations
where we may use the work_queue after it is freed.  Let's
modify the work_queue to set the pointer for you.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1808 from qlyoung/debug-mt-safe
Renato Westphal [Fri, 9 Mar 2018 14:25:37 +0000 (11:25 -0300)]
Merge pull request #1808 from qlyoung/debug-mt-safe

MT-safe debug facilities

7 years agoMerge pull request #1852 from donaldsharp/notify_owner_fail
Renato Westphal [Fri, 9 Mar 2018 02:33:21 +0000 (23:33 -0300)]
Merge pull request #1852 from donaldsharp/notify_owner_fail

*: Add code to notify on successful route removal

7 years ago*: Add code to notify on route removal status 1852/head
Donald Sharp [Thu, 8 Mar 2018 15:25:12 +0000 (10:25 -0500)]
*: Add code to notify on route removal status

If a interested party removes one of it's routes let
it know that it has happened as asked for.

Add a ZAPI_ROUTE_REMOVED to the send of the route_notify_owner
Add a ZAPI_ROUTE_REMOVE_FAIL to the send of the route_notify_owner

Add code in sharpd to notice this and to allow it to keep
track of routes removed for that invocation and give timing
results.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1814 from chiragshah6/mdev
Jafar Al-Gharaibeh [Fri, 9 Mar 2018 00:05:32 +0000 (18:05 -0600)]
Merge pull request #1814 from chiragshah6/mdev

ospf6d: assign zebra router-id to ospf6 instance

7 years agoMerge pull request #1843 from chiragshah6/ospf_vrf_dev
Renato Westphal [Thu, 8 Mar 2018 22:04:08 +0000 (19:04 -0300)]
Merge pull request #1843 from chiragshah6/ospf_vrf_dev

zebra/ospfd:  Treat vrf interface similar to loopback

7 years agoospfd: Treat vrf interface as loopback type 1843/head
Chirag Shah [Tue, 6 Mar 2018 20:55:59 +0000 (12:55 -0800)]
ospfd: Treat vrf interface as loopback type

Ticket:CM-19914

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
7 years agozebra: set vrf as loopback upon interface add
Chirag Shah [Tue, 6 Mar 2018 20:50:32 +0000 (12:50 -0800)]
zebra: set vrf as loopback upon interface add

Move setting vrf loopback flag on ifp after
zebra vrf type is set (ziftype).

Zebra connected not to announce unnumbered for
VRF interface (similar to loopback).

Ticket:CM-19914

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com
7 years agoMerge pull request #1842 from donaldsharp/zserv_buffer_size
Renato Westphal [Thu, 8 Mar 2018 20:27:21 +0000 (17:27 -0300)]
Merge pull request #1842 from donaldsharp/zserv_buffer_size

lib: Increase zapi buffer size

7 years agopimd: mtrace only IGMP sockets 1847/head
Mladen Sablic [Tue, 27 Feb 2018 22:16:45 +0000 (23:16 +0100)]
pimd: mtrace only IGMP sockets

Feature of mtrace only IGMP sockets on pim sm and pim
ssm interfaces. Modifed IGMP socket creation and show
igmp interface command output.

Signed-off-by: Mladen Sablic <mladen.sablic@gmail.com>
7 years agoredhat: update frr.spec for doc build changes
Quentin Young [Wed, 7 Mar 2018 22:36:20 +0000 (17:36 -0500)]
redhat: update frr.spec for doc build changes

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: change html theme to 'default'
Quentin Young [Wed, 7 Mar 2018 21:28:23 +0000 (16:28 -0500)]
doc: change html theme to 'default'

Looks like older versions of Sphinx switched around naming for the default
themes.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1826 from qlyoung/lsan-suppressions
Martin Winter [Wed, 7 Mar 2018 21:47:43 +0000 (22:47 +0100)]
Merge pull request #1826 from qlyoung/lsan-suppressions

tools: add LeakSanitizer suppressions list

7 years agodoc: fix make setup
Quentin Young [Wed, 7 Mar 2018 19:35:20 +0000 (14:35 -0500)]
doc: fix make setup

Iron out all of the glitches with recursive Automake, 3rd-party
autogenerated Sphinx makefiles, building and installing 3 different
document formats under different targets, and handling clean.

* Implement all Automake-required targets for 3rd-party Makefiles
* Setup subdirectories for 3rd-party Makefiles
* Override implicit Automake document targets
* Clean up explicit targets for developer docs
* Move Sphinx-generated Makefile to an include file
* Update targets for debian packaging

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib: Increase zapi buffer size 1842/head
Donald Sharp [Tue, 6 Mar 2018 21:07:14 +0000 (16:07 -0500)]
lib: Increase zapi buffer size

The buffer size is currently 4k.  Increase x4 times to allow for bigger
messages to be sent over the zapi.

The current size sufficient for most cases, but there are a couple
of cases with installing data to the kernel ip rules where we will
quickly hit this 4k size limit.  I forsee flowspec getting close
to this limit as well.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agodoc: update .gitignore
Quentin Young [Wed, 7 Mar 2018 18:59:15 +0000 (13:59 -0500)]
doc: update .gitignore

Remove the various manpages & info related ignore rules so that git
clean can pick them up and delete them.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1428 from LabNConsulting/working/master/indent
Donald Sharp [Wed, 7 Mar 2018 15:44:37 +0000 (10:44 -0500)]
Merge pull request #1428 from LabNConsulting/working/master/indent

frr: conform with COMMUNITY.md formatting rules

7 years agoMerge pull request #1816 from pguibert6WIND/issue_clear_ipv6
Quentin Young [Wed, 7 Mar 2018 15:28:29 +0000 (10:28 -0500)]
Merge pull request #1816 from pguibert6WIND/issue_clear_ipv6

bgpd: clear ip bgp instances with safi invalid

7 years agobgpd: clear ip bgp instances with invalid safi 1816/head
Philippe Guibert [Fri, 2 Mar 2018 14:43:07 +0000 (15:43 +0100)]
bgpd: clear ip bgp instances with invalid safi

This commit fixes the handling of incoming parameters passed in
following vty functions:

clear ip bgp ipv6 [safi] prefix []
clear ip bgp [vrf ] ipv6 [safi] prefix []

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agoMerge pull request #1812 from qlyoung/bgpd-fix-update-group-commands
Christian Franke [Wed, 7 Mar 2018 13:50:50 +0000 (14:50 +0100)]
Merge pull request #1812 from qlyoung/bgpd-fix-update-group-commands

bgpd: fix update-group show commands

7 years agoMerge pull request #1841 from qlyoung/fix-ospf-shutdown-thread-heap-uaf
Olivier Dugeon [Wed, 7 Mar 2018 09:41:53 +0000 (10:41 +0100)]
Merge pull request #1841 from qlyoung/fix-ospf-shutdown-thread-heap-uaf

ospfd: cancel SR thread at shutdown

7 years agoMerge pull request #1840 from pguibert6WIND/issue_1829
Donald Sharp [Wed, 7 Mar 2018 02:24:25 +0000 (21:24 -0500)]
Merge pull request #1840 from pguibert6WIND/issue_1829

Misc BGP VRF fixes

7 years agoMerge branch 'master' of https://github.com/frrouting/frr into evpn-ipv6-tenant-routing
vivek [Tue, 6 Mar 2018 22:19:24 +0000 (22:19 +0000)]
Merge branch 'master' of https://github.com/frrouting/frr into evpn-ipv6-tenant-routing

Conflicts:
zebra/zserv.c

7 years agoMerge branch 'master' into type5-default-originate
Mitesh Kanjariya [Tue, 6 Mar 2018 21:48:33 +0000 (13:48 -0800)]
Merge branch 'master' into type5-default-originate

7 years agobgpd: another change to keep indent.py happy 1428/head
Lou Berger [Tue, 6 Mar 2018 19:10:38 +0000 (14:10 -0500)]
bgpd: another change to keep indent.py happy

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agopimd: another change to keep indent.py happy
Lou Berger [Tue, 6 Mar 2018 19:09:19 +0000 (14:09 -0500)]
pimd: another change to keep indent.py happy

Signed-off-by: Lou Berger <lberger@labn.net>
7 years ago*: conform with COMMUNITY.md formatting rules, via 'make indent'
Lou Berger [Tue, 6 Mar 2018 19:02:52 +0000 (14:02 -0500)]
*: conform with COMMUNITY.md formatting rules, via 'make indent'

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agobgpd: another change to keep indent.py happy
Lou Berger [Tue, 6 Mar 2018 18:43:43 +0000 (13:43 -0500)]
bgpd: another change to keep indent.py happy

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agolib: change comment block to #define to avoid indent.py from breaking comment
Lou Berger [Tue, 6 Mar 2018 18:25:33 +0000 (13:25 -0500)]
lib: change comment block to #define to avoid indent.py from breaking comment
     due to DEFUN within comment

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agoMakefile.am: Add 'make indent' target
Lou Berger [Tue, 6 Mar 2018 18:04:04 +0000 (13:04 -0500)]
Makefile.am: Add 'make indent' target

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agotools: fix indent.py FRR indent pattern matching
Lou Berger [Tue, 6 Mar 2018 18:03:36 +0000 (13:03 -0500)]
tools: fix indent.py FRR indent pattern matching

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agoospfd: cancel SR thread at shutdown 1841/head
Quentin Young [Tue, 6 Mar 2018 18:42:53 +0000 (13:42 -0500)]
ospfd: cancel SR thread at shutdown

Otherwise if it is scheduled the thread pointer will be accessed after
the shutdown task finishes accessing, having deleted the structure that
owns said pointer, which causes a heap UAF.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agolib: NS_DEFAULT wrong value 1840/head
Philippe Guibert [Tue, 6 Mar 2018 17:12:57 +0000 (18:12 +0100)]
lib: NS_DEFAULT wrong value

The NS_DEFAULT value returns UNKNOWN in the case the vrf lite backend is
used, whereas this is wrong. This commit fixes the default value.
Also, it fixes the default value in the case NETNS support from system
is not ok, or some error can occur when reading default NS at startup.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agobgpd: permit bgp vrf socket creation on some cases
Philippe Guibert [Tue, 6 Mar 2018 17:10:27 +0000 (18:10 +0100)]
bgpd: permit bgp vrf socket creation on some cases

When VRF is not yet available at startup, the check for main socket
presence must be done. As the main socket creation is made in a separate
place from vrf socket for netns, ths main socket creation must not be
prevented when a BGP VRF relies on vrf lite mechanism.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
7 years agoMerge pull request #1811 from donaldsharp/nht_send_type
Renato Westphal [Tue, 6 Mar 2018 16:48:40 +0000 (13:48 -0300)]
Merge pull request #1811 from donaldsharp/nht_send_type

lib, zebra: Add type and instance to nexthop update message

7 years agoMerge pull request #1833 from opensourcerouting/fix-vtysh-output-init
Quentin Young [Tue, 6 Mar 2018 16:47:47 +0000 (11:47 -0500)]
Merge pull request #1833 from opensourcerouting/fix-vtysh-output-init

vtysh: initialize vty structure correctly for output to terminal

7 years agoMerge pull request #1728 from mkanjari/evpn-bug-fixes
Philippe Guibert [Tue, 6 Mar 2018 16:27:10 +0000 (17:27 +0100)]
Merge pull request #1728 from mkanjari/evpn-bug-fixes

Evpn bug fixes

7 years agolib: frr_pthread.c style
Quentin Young [Tue, 6 Mar 2018 16:03:00 +0000 (11:03 -0500)]
lib: frr_pthread.c style

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge branch 'master' into docuser
Quentin Young [Tue, 6 Mar 2018 15:53:27 +0000 (10:53 -0500)]
Merge branch 'master' into docuser

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: sync ospf-sr docs from master
Quentin Young [Tue, 6 Mar 2018 15:50:30 +0000 (10:50 -0500)]
doc: sync ospf-sr docs from master

7666589034ef51aa56e8530031c7fa08f81f4c58

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agodoc: prevent `clean` target from building manpages
Quentin Young [Tue, 6 Mar 2018 15:33:21 +0000 (10:33 -0500)]
doc: prevent `clean` target from building manpages

Unconditional automake subdirectory flag = 'man' causes manpages to
always be built regardless of target, which is undesirable for `clean`.
Remove unconditional flag and override automake targets that need to
build manpages instead.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoMerge pull request #1818 from pguibert6WIND/issue_vrfnetns_capabilities
Renato Westphal [Tue, 6 Mar 2018 15:15:35 +0000 (12:15 -0300)]
Merge pull request #1818 from pguibert6WIND/issue_vrfnetns_capabilities

bgpd,ospfd: add sys_admin capabilities

7 years agoMerge pull request #1789 from Orange-OpenSource/master
Rafael Zalamena [Tue, 6 Mar 2018 00:55:59 +0000 (21:55 -0300)]
Merge pull request #1789 from Orange-OpenSource/master

ospfd: Add json output for Segment Routing

7 years agovtysh: initialize vty structure correctly for output to terminal 1833/head
Christian Franke [Mon, 5 Mar 2018 23:46:01 +0000 (00:46 +0100)]
vtysh: initialize vty structure correctly for output to terminal

Signed-off-by: Christian Franke <chris@opensourcerouting.org>