Commit Graph

14325 Commits

Author SHA1 Message Date
Renato Westphal
7ccabfddf5
Merge pull request #3321 from pguibert6WIND/show_import_table
Show import table
2018-12-18 12:17:50 -02:00
Emanuele Di Pascale
20bd27e2aa isisd, yang: add configuration model and callback stubs
Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18 15:15:55 +01:00
Emanuele Di Pascale
bb359ba2f2 lib: fix issue with yang_str2enum
The same issue with derived enum types that was already fixed
for yang_data_new_enum was still present here, so I simply
applied the same fix.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18 15:15:26 +01:00
Emanuele Di Pascale
8427e0e674 lib: copy xpaths when enqueing changes
Just copying th const char* of the xpath means that if we
are enqueing multiple changes from a buffer, the last xpath
addedd will overwrite all of the previous references.
Copying the xpath to a buffer simplifies the API when
retrofitting the commands.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18 15:15:26 +01:00
Emanuele Di Pascale
625b70e3da lib: add NB phase-specific error codes
As suggested by Renato, add error codes that are specific
to the various phases of a northbound callback. These can
be used by the daemons when logging an error. The reasoning
is that validation errors typically mean that there is an
inconsistency in the configuration, a prepare error means
that we are running out of resources, and abort/apply errors
are bugs that need to be reported to the devs.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2018-12-18 15:15:26 +01:00
Renato Westphal
9e7367db49
Merge pull request #3500 from pguibert6WIND/missing_default_vrf_name
bgpd: nexthop vrf name set to default vrf
2018-12-18 10:44:12 -02:00
Martin Winter
f26be30a4b
Merge pull request #3279 from adharkar/frr-default_local
bgpd: Display default local preference and local AS for BGP show commands
2018-12-18 10:46:58 +01:00
David Lamparter
1515026516 tools/frrcommon.sh: always start staticd
"derp."

Since zebra is always started, the same should hold for staticd.

Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-18 01:26:12 +01:00
David Lamparter
b7d492f295 tools/frrcommon.sh: actually create /run/frr
tmpfiles.d is nice and all, but we can't rely on it.  Just create
/run/frr if needed.

Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-18 01:26:12 +01:00
David Lamparter
829d32552b tools/etc: remove cumulus user from vtysh.conf
This is a Cumulus-specific default which we shouldn't have in git.

Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-18 01:26:12 +01:00
David Lamparter
9210eecc7d tools: add documentation URL on frr.service
Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-18 01:26:12 +01:00
Quentin Young
01cbfd0484 bgpd: fix json double free when showing neighbors
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-12-17 22:18:13 +00:00
Philippe Guibert
08ab35fe0e zebra: the default vrf name in vxlan is correctly set
the default vrf name was hardset to "Default", whereas the default vrf
name could have been configured in an other manner. Fix this
inconsistency.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-12-17 18:58:05 +01:00
Philippe Guibert
03a6facfd3 bgpd: bgp default vrf in show route naming change
Default vrf name has been changed in show route. Because the default vrf
name can be configured in zebra, the default vrf name in bgp is changed.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-12-17 18:57:22 +01:00
Philippe Guibert
4d97eea630 bgpd: nexthop vrf name set to default vrf
if default vrf is not Default, then nexthop vrf name returned may be
"Default", which is not the correct name of default vrf. change it
accordingly.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-12-17 17:44:02 +01:00
Donald Sharp
4b1d6d4db5 topotests: add FreeBSDRouter abstraction
Start the addition of FreeBSDRouter class that inherits from
class Router.  At this point we do not do a whole lot.  We
just come up on FreeBSD, lots of stuff that still needs to
be fixed.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-17 10:43:27 -05:00
Donald Sharp
d29fb5bd52 topotests: Move linux specific config into Linux config section
As part of the class rework, move the linux specific config
into the LinuxRouter.config section instead of being in the
Router class.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-17 10:38:02 -05:00
Donald Sharp
7cc96035a7 topotests: Make 'LinuxRouter' a class of 'Router'
Modify the LinuxRouter code such that it inherits from the
Router class.  This is setup work for (a) pulling out linux
specific config from class Router and (b) creating a FreebsdRouter
that inherits from class 'Router'.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-17 10:33:37 -05:00
Donald Sharp
b31c2a2ebf
Merge pull request #3428 from pguibert6WIND/avoid_vni_overwrite
zebra: avoid initialising more than one the l3vni hash structure
2018-12-17 07:22:45 -05:00
Donald Sharp
f307f0c585
Merge pull request #3496 from opensourcerouting/rip-memleaks
ripd, ripngd: fix memleaks when deleting routing instance
2018-12-17 07:08:42 -05:00
Philippe Guibert
b85c827591 zebra: add command show ip/ipv6 import-check table
Add the ability to dump import check nexthop table.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-12-17 12:19:28 +01:00
Philippe Guibert
05e477225e bgpd: add show bgp import-check-table
this table is used to check for nexthop value on locally configured
entries.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-12-17 12:19:28 +01:00
Philippe Guibert
e2abcff860 doc: add a community rule to permit usage of GPLv3
explain why GPLv3 must be permitted, and explicitly mention that code
not compatible with GPLv3 is prohibited.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-12-17 12:14:48 +01:00
Philippe Guibert
6548050a85 zebra: avoid initialising more than one the l3vni hash structure
the l3vni structure is allocated only once, since that structure is only
used for default netns. For that, move the initialisation part is moved
to a proper place, where there is no risk of attempting to initialise it
more than once, even when vrf backend is netns.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-12-17 12:09:52 +01:00
Renato Westphal
a8dfbac67b
Merge pull request #3335 from pguibert6WIND/ospf_remove_if_lookup_all_vrf
ospfd: remove call to if_lookup_all_vrf
2018-12-17 08:33:34 -02:00
Renato Westphal
cf6ef36996 ripd, ripngd: fix memleaks when deleting routing instance
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2018-12-17 08:19:48 -02:00
Christian Franke
77b5231435
Merge pull request #3494 from donaldsharp/topotests_fixup
Topotests fixup
2018-12-17 10:35:29 +01:00
Renato Westphal
37b3fabab0
Merge pull request #3489 from donaldsharp/confed_unsigned
bgpd: Fix confederation identifier unsigned display
2018-12-17 07:24:23 -02:00
Donald Sharp
849d1ed9af topotests: Allow sharpd to be used in topotests
The sharp daemon did not have any ability to be used in
topotests.  Add some code to allow this.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-16 20:47:30 -05:00
Donald Sharp
28440fd9f8 topotests: module_present should return a True/False
The recent change to module_present accidently didn't return anything.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-16 20:47:30 -05:00
Donald Sharp
3c195d60db bgpd: Fix confederation identifier unsigned display
The confederation identifier is a `as_t` type which is a
uint32_t underneath the covers.  Display it using a %u

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-16 09:43:40 -05:00
Martin Winter
4870191362
Merge pull request #3488 from donaldsharp/bsd_topo_abstract1
Bsd topo abstract1
2018-12-15 23:29:43 +01:00
Donald Sharp
cc95fbd9ff topotests: Start abstraction of module_present for other platforms
Start abstraction of the module_present into module_present_linux and freebsd
To allow for multiple platforms that the topotests can be run on.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-15 10:54:11 -05:00
Donald Sharp
af99f19eb2 topotests: Cleanup diagnose_env to allow thought about multi-platforms
Start the cleanup of diagnose_env to allow the running of topotests
on platforms besides linux.

So we split up diagnose_env into linux and freebsd variants.
At this point in time freebsd doesn't have any special code.
To be determined in the future.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-15 10:49:59 -05:00
Donald Sharp
8b26284ba1
Merge pull request #3487 from opensourcerouting/master-license-foo
[master] license foo
2018-12-14 10:25:16 -05:00
David Lamparter
fa62815e08 doc: re-add copyright & license note
This was mistakenly removed in the texi -> sphinx conversion.

Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-14 16:24:06 +01:00
David Lamparter
5c7ac28e24 *: remove all MIBs for DFSG compliance
cf. https://wiki.debian.org/NonFreeIETFDocuments

These MIBs were in our git purely for documentation purposes, they are
not installed and not needed for building SNMP support.

Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-14 16:24:06 +01:00
David Lamparter
bbfeedb5ef lib: flip to ISC on hook & module code
I accidentally put MIT headers on these; the intent was ISC.  It doesn't
really make a difference, but let's get it consistent.

Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-14 16:24:06 +01:00
Donald Sharp
681c5c2b29
Merge pull request #3463 from mjstapp/zserv_event
zebra: make incoming zserv message-processing a singleton event
2018-12-14 10:02:33 -05:00
Donald Sharp
85c3d6005e
Merge pull request #3464 from mjstapp/wq_event
libs,zebra: support timeout for workqueue retries, use for rib
2018-12-14 10:00:49 -05:00
Donald Sharp
8e3202a95f
Merge pull request #3480 from opensourcerouting/master-kill-empty-lib
[master] kill empty libfrrfpm_pb
2018-12-14 09:59:54 -05:00
Don Slice
2a2b64e487 tools: stop frr-reload.py from trying to delete the vrf context
Problem seen when removing last config item under the vrf context,
where frr-reload.py tries instead to delete the vrf context itself.
Since that is not permitted on an active vrf, the command errors
out and nothing is deleted.

Signed-off-by: Don Slice <dslice@cumulusnetworks.com>
2018-12-14 13:11:05 +00:00
Donald Sharp
9c3f61e583
Merge pull request #3399 from opensourcerouting/ripngd-nb-retrofitting
ripngd northbound conversion
2018-12-14 07:45:42 -05:00
Jafar Al-Gharaibeh
a3a082226c
Merge pull request #3484 from donaldsharp/route_remoal_fix
zebra: On route removal failure return proper message
2018-12-13 23:30:59 -06:00
Jafar Al-Gharaibeh
05bb9e76c7
Merge pull request #3478 from qlyoung/issue-template-yelling
.github: add core guidelines to issue template
2018-12-13 23:30:14 -06:00
Donald Sharp
dba52387b7 zebra: On route removal failure return proper message
When a route removal failure happens return to the installing
protocol that the route deletion failed.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-13 20:00:33 -05:00
David Lamparter
ba7d15b185 build: disable empty libfrrfpm_pb
We were building and installing an _empty_ library (i.e. it literally
didn't contain anything.)

Signed-off-by: David Lamparter <equinox@diac24.net>
2018-12-13 21:14:39 +01:00
Mark Stapp
6dd7b84894 zebra: use a small retry timeout for the rib workqueue
In the zebra rib processing workqueue, set a small timeout
so that we will wait a short time if the queue into the
async dataplane is full. This helps avoid a situation where
the zebra main pthread constantly retries rib work without
giving the dataplane pthread a chance to make progress.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2018-12-13 14:15:27 -05:00
Mark Stapp
5418f988cf libs: support timeout for workqueue retries
Support an optional timeout/delay for use when a workqueue
determines that it is blocked, instead of retrying immediately.
Also, schedule as an 'event' instead of a 'timer' when using
a zero timeout value.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2018-12-13 14:08:39 -05:00
Quentin Young
44f81db12d .github: add core guidelines to issue template
Hopefully people will see these first and do them

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-12-13 17:12:23 +00:00