]> git.proxmox.com Git - mirror_frr.git/log
mirror_frr.git
7 years agozebra: Allow zebra to delete self originated routes
Donald Sharp [Fri, 1 Sep 2017 14:28:19 +0000 (10:28 -0400)]
zebra: Allow zebra to delete self originated routes

With the change to make zebra pass routes to the kernel
with the 'correct' proto name, it caused zebra to
not properly recognize them on startup again
the next time such that the route would not
be deleted.

Modify rt_netlink.c to notice that we have a
self originated route and to properly mark
the type of route it was.

Modify rib_table_sweep to mark the nexthops
as active so that when we go to delete the
self originated routes it would properly
delete from the kernel.

Fixes: #1061
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1108 from donaldsharp/rip
Renato Westphal [Tue, 5 Sep 2017 18:27:15 +0000 (15:27 -0300)]
Merge pull request #1108 from donaldsharp/rip

ripd: Fix warning about metric value less than 0

7 years agoripd: Fix warning about metric value less than 0
Donald Sharp [Tue, 5 Sep 2017 17:17:47 +0000 (13:17 -0400)]
ripd: Fix warning about metric value less than 0

RIP is testing to ensure that the metric returned
isn't negative.  We should be looking at the returned
value from the cli strtol.

If we get a metric value that is less than zero that
means that we shouldn't use this value in RIP currently.
So signify that by returning mod here.

Fixes: #1107
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1093 from opensourcerouting/static_blackhole_display
Daniel Walton [Tue, 5 Sep 2017 16:54:05 +0000 (12:54 -0400)]
Merge pull request #1093 from opensourcerouting/static_blackhole_display

zebra: display static blackhole routes consistently

7 years agoMerge pull request #1087 from qlyoung/fix-weirdness
David Lamparter [Tue, 5 Sep 2017 16:19:45 +0000 (18:19 +0200)]
Merge pull request #1087 from qlyoung/fix-weirdness

lib: fix thread scheduling weirdness

7 years agoMerge pull request #1075 from donaldsharp/rip_metric
David Lamparter [Tue, 5 Sep 2017 16:17:52 +0000 (18:17 +0200)]
Merge pull request #1075 from donaldsharp/rip_metric

lib, ospfd, ripd, ripngd:  Fix 'set metric'

7 years agoMerge pull request #1058 from chiragshah6/mdev
David Lamparter [Tue, 5 Sep 2017 16:15:51 +0000 (18:15 +0200)]
Merge pull request #1058 from chiragshah6/mdev

ospfd: fix route_node_get

7 years agozebra: accept Null0 again in addition to null0
Renato Westphal [Mon, 4 Sep 2017 14:09:35 +0000 (11:09 -0300)]
zebra: accept Null0 again in addition to null0

Restore behavior before commit a830942.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agozebra: display static blackhole routes consistently
Renato Westphal [Fri, 1 Sep 2017 17:43:24 +0000 (14:43 -0300)]
zebra: display static blackhole routes consistently

If we configure a static route pointing to null0 and zebra displays
it with the 'blackhole' keyword in the running configuration, the
frr-reload.py script will have issues. Fix this by introducing the
'static_blackhole_type' enum.

Fixes #1091.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agoMerge pull request #1102 from donaldsharp/eigrp_compile
Renato Westphal [Tue, 5 Sep 2017 13:47:48 +0000 (10:47 -0300)]
Merge pull request #1102 from donaldsharp/eigrp_compile

eigrp: Fix missing neighbor->nexthop changes?

7 years agoMerge pull request #1047 from dwalton76/bgpd-draft-ietf-grow-bgp-gshut-10
Renato Westphal [Tue, 5 Sep 2017 13:20:49 +0000 (10:20 -0300)]
Merge pull request #1047 from dwalton76/bgpd-draft-ietf-grow-bgp-gshut-10

bgpd: implement draft-ietf-grow-bgp-gshut-10

7 years agoMerge pull request #1020 from opensourcerouting/ferr
Donald Sharp [Tue, 5 Sep 2017 11:52:18 +0000 (07:52 -0400)]
Merge pull request #1020 from opensourcerouting/ferr

"ferr" error reporting extensions

7 years agoeigrp: Fix missing neighbor->nexthop changes?
Donald Sharp [Tue, 5 Sep 2017 11:48:52 +0000 (07:48 -0400)]
eigrp: Fix missing neighbor->nexthop changes?

I'm not sure how this was missed or why master
is not failing to compile.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1051 from donaldsharp/plists
David Lamparter [Tue, 5 Sep 2017 02:41:17 +0000 (04:41 +0200)]
Merge pull request #1051 from donaldsharp/plists

Refactor Access and Prefix Lists application

7 years agoMerge pull request #1086 from donaldsharp/zebra_import
Renato Westphal [Mon, 4 Sep 2017 19:16:53 +0000 (16:16 -0300)]
Merge pull request #1086 from donaldsharp/zebra_import

Zebra import

7 years agoMerge pull request #1095 from LabNConsulting/working/master/patch/grammer
Donald Sharp [Mon, 4 Sep 2017 11:12:59 +0000 (07:12 -0400)]
Merge pull request #1095 from LabNConsulting/working/master/patch/grammer

bgpd rfapi: fixup vnc l2_group config

7 years agoMerge pull request #1096 from opensourcerouting/isisd-fix-solaris-tests
Donald Sharp [Mon, 4 Sep 2017 11:11:08 +0000 (07:11 -0400)]
Merge pull request #1096 from opensourcerouting/isisd-fix-solaris-tests

tests: skip isis tlv fuzztest on SunOS

7 years agoMerge pull request #1090 from opensourcerouting/rib_issues
Donald Sharp [Sun, 3 Sep 2017 21:59:14 +0000 (17:59 -0400)]
Merge pull request #1090 from opensourcerouting/rib_issues

RIB issues

7 years agoMerge pull request #1098 from nkukard/lcommunity-cleanup
Donald Sharp [Sun, 3 Sep 2017 15:29:19 +0000 (11:29 -0400)]
Merge pull request #1098 from nkukard/lcommunity-cleanup

Large community critical fixes and misc cleanups

7 years agobgpd: Fixed some comments in bgp_lcommunity.h
Nigel Kukard [Sun, 3 Sep 2017 06:35:35 +0000 (06:35 +0000)]
bgpd: Fixed some comments in bgp_lcommunity.h

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Fixed incorrect MTYPE being used for large communites
Nigel Kukard [Sun, 3 Sep 2017 05:20:48 +0000 (05:20 +0000)]
bgpd: Fixed incorrect MTYPE being used for large communites

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: rfapi - fix vestige from gratuitous grammar change.
Lou Berger [Sat, 2 Sep 2017 13:41:09 +0000 (09:41 -0400)]
bgpd: rfapi - fix vestige from gratuitous grammar change.

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agobgpd: Fixed pointer calculation issue in lcommunity
Nigel Kukard [Fri, 1 Sep 2017 23:36:11 +0000 (23:36 +0000)]
bgpd: Fixed pointer calculation issue in lcommunity

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agotests: skip isis tlv fuzztest on SunOS
Christian Franke [Thu, 31 Aug 2017 20:45:01 +0000 (22:45 +0200)]
tests: skip isis tlv fuzztest on SunOS

7 years agozebra: add an exception for link-local connected routes
Renato Westphal [Fri, 1 Sep 2017 14:44:22 +0000 (11:44 -0300)]
zebra: add an exception for link-local connected routes

Link-local routes are unique in the sense that they all have the same
prefix but have different nexthops (local interfaces). Add an exception
in rib_add() to allows us to keep track of all of them.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agoMerge pull request #1088 from opensourcerouting/isis-show-topo-format
Donald Sharp [Fri, 1 Sep 2017 11:49:25 +0000 (07:49 -0400)]
Merge pull request #1088 from opensourcerouting/isis-show-topo-format

isisd: cleanup output of show isis topology

7 years agobgpd: Use lcommunity_new() to allocate new lcommunity
Nigel Kukard [Fri, 1 Sep 2017 02:01:55 +0000 (02:01 +0000)]
bgpd: Use lcommunity_new() to allocate new lcommunity

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agozebra: allow blackhole routes from the kernel to be deleted
Renato Westphal [Fri, 1 Sep 2017 00:13:23 +0000 (21:13 -0300)]
zebra: allow blackhole routes from the kernel to be deleted

Fixes the following bug:
% ip -6 route add unreachable 4000::/64
% ip -6 route del unreachable 4000::/64
% vtysh -c "show ipv6 route"
[snip]
K>* 4000::/64 [0/1024] unreachable (ICMP unreachable)

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agozebra: fix detection of duplicate system routes
Renato Westphal [Thu, 31 Aug 2017 20:28:05 +0000 (17:28 -0300)]
zebra: fix detection of duplicate system routes

Fixes the following bugs:

1)
% ip -6 route add 5000::/64 via 3000::2
% ip -6 route replace 5000::/64 via 3000::2
% ip -6 route replace 5000::/64 via 3000::2
% ip -6 route replace 5000::/64 via 3000::2
% ip -6 route replace 5000::/64 via 3000::2
%
% vtysh -c "show ipv6 route"
[snip]
K * 5000::/64 [0/1024] via 3000::2, rt1-eth0
K * 5000::/64 [0/1024] via 3000::2, rt1-eth0
K * 5000::/64 [0/1024] via 3000::2, rt1-eth0
K * 5000::/64 [0/1024] via 3000::2, rt1-eth0
K>* 5000::/64 [0/1024] via 3000::2, rt1-eth0

2)
% ip -6 route add 7000::/64 via 3000::2
% ip -6 route replace 7000::/64 via 3000::3
% ip -6 ro | grep 7000
7000::/64 via 3000::3 dev rt1-eth0 metric 1024  pref medium
%
% vtysh -c "show ipv6 route"
[snip]
K * 7000::/64 [0/1024] via 3000::3, rt1-eth0
K>* 7000::/64 [0/1024] via 3000::2, rt1-eth0

NOTE: the check for ROUTE_ENTRY_REMOVED was redundant as it was already
performed at the beginning of the loop.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agozebra: remove refcnt from the route_entry structure
Renato Westphal [Thu, 31 Aug 2017 23:36:14 +0000 (20:36 -0300)]
zebra: remove refcnt from the route_entry structure

This reference counter was introduced in 2001, apparently to solve a
problem with connected routes being added/removed multiple times. The RIB
code changed a lot since then, and giving the current callers of rib_add()
and rib_delete() it's safe to assume that we don't need this anymore.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agoMerge pull request #1089 from opensourcerouting/zebra-fix-build
Donald Sharp [Fri, 1 Sep 2017 00:02:05 +0000 (20:02 -0400)]
Merge pull request #1089 from opensourcerouting/zebra-fix-build

zebra: fix compiler error introduced by previous commit

7 years agozebra: fix compiler error introduced by previous commit
Renato Westphal [Thu, 31 Aug 2017 23:58:16 +0000 (20:58 -0300)]
zebra: fix compiler error introduced by previous commit

Lesson learned: always wait for the CI tests to finish before merging :)

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
7 years agoMerge pull request #1083 from donaldsharp/unreachable
Renato Westphal [Thu, 31 Aug 2017 23:47:37 +0000 (20:47 -0300)]
Merge pull request #1083 from donaldsharp/unreachable

zebra: Allow bh_type to override nexthop selection

7 years agobgpd: Fixed pointer arithmatic miscalculation
Nigel Kukard [Thu, 31 Aug 2017 09:27:46 +0000 (09:27 +0000)]
bgpd: Fixed pointer arithmatic miscalculation

If we increment PTR by i * size each time, we end up doing 1, 3, 6
etc.

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Fixed incorrect large community pointer calculation
Nigel Kukard [Wed, 30 Aug 2017 07:35:31 +0000 (07:35 +0000)]
bgpd: Fixed incorrect large community pointer calculation

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Fixed incorrect calculation of pointer location
Nigel Kukard [Wed, 30 Aug 2017 09:39:36 +0000 (09:39 +0000)]
bgpd: Fixed incorrect calculation of pointer location

com_index_to_delete[i] holds the location in lcom->val of where the
value is stored, we cannot just increment it by this value on each
iteration as we'll overflow the size of lcom->val.

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Fixed potential memory leak if additive is false
Nigel Kukard [Wed, 30 Aug 2017 07:37:19 +0000 (07:37 +0000)]
bgpd: Fixed potential memory leak if additive is false

The else portion of the IF dups the lc, but doesn't free old

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Fixed potential memory leak if additive is false in normal communities
Nigel Kukard [Wed, 30 Aug 2017 08:27:15 +0000 (08:27 +0000)]
bgpd: Fixed potential memory leak if additive is false in normal communities

The else portion of the IF dups the community, but doesn't free old

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Cleaned up some comments
Nigel Kukard [Wed, 30 Aug 2017 09:29:57 +0000 (09:29 +0000)]
bgpd: Cleaned up some comments

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Fixed typo in comment
Nigel Kukard [Wed, 30 Aug 2017 08:31:45 +0000 (08:31 +0000)]
bgpd: Fixed typo in comment

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Fixed typo in the lc list type being matched on
Nigel Kukard [Wed, 30 Aug 2017 07:44:18 +0000 (07:44 +0000)]
bgpd: Fixed typo in the lc list type being matched on

This should be EXPANDED, not STANDARD.

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: Cleaned up the lcom->size * LCOMMUNITY_SIZE with lcom_length()
Nigel Kukard [Wed, 30 Aug 2017 05:53:37 +0000 (05:53 +0000)]
bgpd: Cleaned up the lcom->size * LCOMMUNITY_SIZE with lcom_length()

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agobgpd: The large community size is easier to read if its using the constant
Nigel Kukard [Wed, 30 Aug 2017 05:40:54 +0000 (05:40 +0000)]
bgpd: The large community size is easier to read if its using the constant

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
7 years agozebra: Allow bh_type to override nexthop selection
Donald Sharp [Wed, 30 Aug 2017 23:38:22 +0000 (19:38 -0400)]
zebra: Allow bh_type to override nexthop selection

If we've set the bh_type to something besides BLACKHOLE_UNSPEC
due to the received route type being RTN_BLACKHOLE,
RTN_UNREACHABLE or RTN_PROHIBIT then just trust that
the nexthop is just what it is and set accordingly.

Fixes: #1082
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib: fix thread scheduling weirdness
Quentin Young [Tue, 29 Aug 2017 18:58:43 +0000 (14:58 -0400)]
lib: fix thread scheduling weirdness

Restores 3.0 behavior in terms of thread scheduling & prioritization.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agoisisd: cleanup output of show isis topology
Christian Franke [Thu, 31 Aug 2017 22:57:57 +0000 (00:57 +0200)]
isisd: cleanup output of show isis topology

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
7 years agozebra: Add v6 support for import-table
Donald Sharp [Thu, 31 Aug 2017 20:07:36 +0000 (16:07 -0400)]
zebra: Add v6 support for import-table

Now that all rib functions are afi/safi independent,
allow import-table to work with v6 routes too.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years ago*: Cleanup multiple is_default... code
Donald Sharp [Thu, 31 Aug 2017 19:58:31 +0000 (15:58 -0400)]
*: Cleanup multiple is_default... code

There are 3 different implementations of is_prefix.
Standardize on is_prefix_default and fix it's implementation.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agozebra: Clean up indentation
Donald Sharp [Thu, 31 Aug 2017 19:25:54 +0000 (15:25 -0400)]
zebra: Clean up indentation

Code was hard to look at.  Clean up a bit
since I'm going to be in there.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1076 from donaldsharp/connected
Renato Westphal [Thu, 31 Aug 2017 17:53:36 +0000 (14:53 -0300)]
Merge pull request #1076 from donaldsharp/connected

Connected

7 years agozebra: Cleanup some typos
Donald Sharp [Thu, 31 Aug 2017 17:35:53 +0000 (13:35 -0400)]
zebra: Cleanup some typos

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agozebra: Abstract what we can of connected_delete_ipv[4|6]
Donald Sharp [Wed, 30 Aug 2017 22:34:48 +0000 (18:34 -0400)]
zebra: Abstract what we can of connected_delete_ipv[4|6]

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agozebra: Refactor connected_down_ipv[4|6]
Donald Sharp [Thu, 31 Aug 2017 17:47:26 +0000 (13:47 -0400)]
zebra: Refactor connected_down_ipv[4|6]

The connected_down_ipv[4|6] functions are basically identical.
Refactor into one common interface.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agozebra: Refactor connected_up_ipv[4|6]
Donald Sharp [Tue, 29 Aug 2017 22:23:08 +0000 (18:23 -0400)]
zebra: Refactor connected_up_ipv[4|6]

The connected_up_ipv[4|6] functions were almost identical.
Combine the forces for the goodness of mankind

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agolib: Add PREFIX_COPY
Donald Sharp [Tue, 29 Aug 2017 22:21:52 +0000 (18:21 -0400)]
lib: Add PREFIX_COPY

Add a generic PREFIX_COPY to complement PREFIX_COPY_V4 and
PREFIX_COPY_V6

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1078 from dwalton76/ospfd-network-cmd-warning
Renato Westphal [Thu, 31 Aug 2017 16:23:25 +0000 (13:23 -0300)]
Merge pull request #1078 from dwalton76/ospfd-network-cmd-warning

*: return CMD_WARNING if command was already configured

7 years agoMerge pull request #1079 from qlyoung/fix-style-a
Renato Westphal [Thu, 31 Aug 2017 16:22:55 +0000 (13:22 -0300)]
Merge pull request #1079 from qlyoung/fix-style-a

*: fix style

7 years agoMerge pull request #1044 from donaldsharp/combination
Jafar Al-Gharaibeh [Thu, 31 Aug 2017 15:25:55 +0000 (10:25 -0500)]
Merge pull request #1044 from donaldsharp/combination

Coverity Cleanup of Stuff

7 years ago*: return CMD_WARNING if command was already configured
Daniel Walton [Wed, 30 Aug 2017 15:18:02 +0000 (19:18 +0400)]
*: return CMD_WARNING if command was already configured

Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
If the user configures some command that is already in the config we
should return CMD_WARNING instead of CMD_WARNING_CONFIG_FAILED

7 years agoMerge pull request #1077 from donaldsharp/ws
Renato Westphal [Thu, 31 Aug 2017 01:26:41 +0000 (22:26 -0300)]
Merge pull request #1077 from donaldsharp/ws

Cleanup some issues in pim

7 years agoMerge pull request #1080 from mgsmith1000/systemd_service_perms
Donald Sharp [Wed, 30 Aug 2017 23:50:06 +0000 (19:50 -0400)]
Merge pull request #1080 from mgsmith1000/systemd_service_perms

Set permissions on systemd service file

7 years agoredhat: Set permissions on systemd service file
Matthew Smith [Wed, 30 Aug 2017 18:36:20 +0000 (13:36 -0500)]
redhat: Set permissions on systemd service file

Systemd on CentOS 7.3 logs a warning about the execute bit being
set every time the frr service file is invoked by systemctl.
Modify the spec file to explicitly set the permissions to 644.

Signed-off-by: Matthew Smith <mgsmith@netgate.com>
7 years ago*: fix style
Quentin Young [Wed, 30 Aug 2017 15:23:01 +0000 (11:23 -0400)]
*: fix style

Fixes style nits introduced by recent pull requests.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
7 years agopimd: Fix pim->keep_alive_time missed patch
Donald Sharp [Wed, 30 Aug 2017 11:49:51 +0000 (07:49 -0400)]
pimd: Fix pim->keep_alive_time missed patch

The commit '19b807c pimd: Allow the keepalive time to be per vrf.'
is missing some data.  Probably as a result of the indentation
and I accidently dropped it.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agopimd: Add missed frame for vrf based interface
Donald Sharp [Wed, 30 Aug 2017 11:39:46 +0000 (07:39 -0400)]
pimd: Add missed frame for vrf based interface

pim is vrf aware and the interface based line for vrf's was
not being started with a vrf_frame as the non interface
based line was.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agopimd: Fix indentation issue that slipped in?
Donald Sharp [Wed, 30 Aug 2017 11:35:36 +0000 (07:35 -0400)]
pimd: Fix indentation issue that slipped in?

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1059 from opensourcerouting/oldbits-1
Donald Sharp [Tue, 29 Aug 2017 23:53:30 +0000 (19:53 -0400)]
Merge pull request #1059 from opensourcerouting/oldbits-1

zebra: PtP address configuration support

7 years agoMerge pull request #1056 from opensourcerouting/oldbits-0
Donald Sharp [Tue, 29 Aug 2017 21:48:36 +0000 (17:48 -0400)]
Merge pull request #1056 from opensourcerouting/oldbits-0

"pathspace" options, vtysh-suid-cleanups, "vty_frame()"

7 years agoMerge pull request #1074 from opensourcerouting/ospf6-plist-segv
Donald Sharp [Tue, 29 Aug 2017 21:35:42 +0000 (17:35 -0400)]
Merge pull request #1074 from opensourcerouting/ospf6-plist-segv

ospf6d: fix prefix list name SEGV

7 years agoMerge pull request #1073 from LabNConsulting/working/master/patch/fix-pr939-bgp-race
Donald Sharp [Tue, 29 Aug 2017 21:21:12 +0000 (17:21 -0400)]
Merge pull request #1073 from LabNConsulting/working/master/patch/fix-pr939-bgp-race

Fix bgpd race

7 years agolib: apply_mask to route_node_get
Chirag Shah [Tue, 29 Aug 2017 19:52:57 +0000 (12:52 -0700)]
lib: apply_mask to route_node_get

remove address of prefix while typecasting to apply_mask

Singed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
7 years agobgp: add asserts to catch unsupported double enqueue of an RN on a bgp_process_queue
Lou Berger [Tue, 29 Aug 2017 19:30:34 +0000 (15:30 -0400)]
bgp: add asserts to catch unsupported double enqueue of an RN on a bgp_process_queue

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agobgp: fix handling of bgp_process_queue to allow for RNs added
Lou Berger [Mon, 28 Aug 2017 22:34:45 +0000 (18:34 -0400)]
bgp: fix handling of bgp_process_queue to allow for RNs added
     during callback.  Issue introduced in PR #939.

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agobgp: refactor bgp_process_queue to be consistent and cleanup related event queuing
Lou Berger [Mon, 28 Aug 2017 22:30:09 +0000 (18:30 -0400)]
bgp: refactor bgp_process_queue to be consistent and cleanup related event queuing

Signed-off-by: Lou Berger <lberger@labn.net>
7 years agoospf6d: fix prefix list name SEGV
David Lamparter [Tue, 29 Aug 2017 19:08:55 +0000 (21:08 +0200)]
ospf6d: fix prefix list name SEGV

Oops, I tested this with prefix lists configured and failed to notice it
blows up when nothing is set...

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agolib, ospfd, ripd, ripngd: Fix 'set metric'
Donald Sharp [Tue, 29 Aug 2017 18:47:35 +0000 (14:47 -0400)]
lib, ospfd, ripd, ripngd:  Fix 'set metric'

There are a variety of cli's associated with the
'set metric ...' command.  The problem that we
are experiencing is that not all the daemons
support all the varieties of the set metric
and the returned of NULL during the XXX_compile
phase for these unsupported commands is causing
issues.  Modify the code base to only return
NULL if we encounter a true parsing issue.
Else we need to keep track if this metric
applies to us or not.

In the case of rip or ripngd if the metric
passed to us is greater than 16 just turn
it internally into a MAX_METRIC.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoRevert "doc: work around weird texinfo bug"
David Lamparter [Tue, 29 Aug 2017 18:43:28 +0000 (20:43 +0200)]
Revert "doc: work around weird texinfo bug"

This reverts commit 50ffbc124bca15b2ca09c1b8b2fd57de6c4d3da4.

The workaround stopped working :(

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agodoc: add "ip address LOCAL peer PEER/SUBNET"
David Lamparter [Tue, 29 Aug 2017 18:40:46 +0000 (20:40 +0200)]
doc: add "ip address LOCAL peer PEER/SUBNET"

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agoMerge pull request #998 from mkanjari/dev-master
David Lamparter [Tue, 29 Aug 2017 18:03:48 +0000 (20:03 +0200)]
Merge pull request #998 from mkanjari/dev-master

Dev master

7 years agoMerge pull request #1072 from opensourcerouting/isisd-fix-confusion-purge
Donald Sharp [Tue, 29 Aug 2017 17:07:45 +0000 (13:07 -0400)]
Merge pull request #1072 from opensourcerouting/isisd-fix-confusion-purge

isisd: keep original TLVs when purging in response to confusion

7 years agoMerge pull request #1071 from opensourcerouting/isis-spf-debug-guard
Donald Sharp [Tue, 29 Aug 2017 17:05:18 +0000 (13:05 -0400)]
Merge pull request #1071 from opensourcerouting/isis-spf-debug-guard

isisd: guard SPF warning by debug flag

7 years agoMerge pull request #1060 from opensourcerouting/oldbits-2
Donald Sharp [Tue, 29 Aug 2017 13:07:19 +0000 (09:07 -0400)]
Merge pull request #1060 from opensourcerouting/oldbits-2

zebra: clean up blackhole support

7 years agodoc: new frr-args(8) man page with general options
David Lamparter [Mon, 28 Aug 2017 21:48:51 +0000 (23:48 +0200)]
doc: new frr-args(8) man page with general options

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agobgpd: remove some deep nesting
David Lamparter [Sun, 27 Aug 2017 20:51:35 +0000 (22:51 +0200)]
bgpd: remove some deep nesting

Some of this was so egregiously stupid, I couldn't look at it without
gouging my eyes out...

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agobgpd: get rid of afi_header_vty_out() & co.
David Lamparter [Sun, 27 Aug 2017 20:18:32 +0000 (22:18 +0200)]
bgpd: get rid of afi_header_vty_out() & co.

afi_header_vty_out() is easily replaced with vty_frame(), which means we
can drop a whole batch of "int *write" args as well as the entirety of
bgp_config_write_family_header().

=> AFI/SAFI config writing is now a lot simpler.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years ago*: remove empty "interface XYZ" config blocks
David Lamparter [Fri, 5 Feb 2010 08:48:45 +0000 (09:48 +0100)]
*: remove empty "interface XYZ" config blocks

Using the previously-added vty_frame() support, this gets rid of all the
pointless empty "interface XYZ" blocks that get added for any interface
that shows up in the system (e.g. dummys, tunnels, etc.)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agolib: add vty_frame() to get rid of unneeded config
David Lamparter [Fri, 5 Feb 2010 08:48:45 +0000 (09:48 +0100)]
lib: add vty_frame() to get rid of unneeded config

vty_frame() can be used to reduce the amount of output produced by "show
running-config" and "write ...".  It buffers output in struct vty->frame
(1024 bytes) and outputs it when vty_out is called.  If vty_out isn't
called, it can be removed with vty_endframe() later.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agoMerge branch 'master' into dev-master
Mitesh Kanjariya [Tue, 29 Aug 2017 01:19:03 +0000 (18:19 -0700)]
Merge branch 'master' into dev-master

7 years agolib: new APIs for get/set system hostname/domainname
Mitesh Kanjariya [Mon, 28 Aug 2017 23:52:29 +0000 (16:52 -0700)]
lib: new APIs for get/set system hostname/domainname

1. Change hostname_get to cmd_hostname_get
2. Change domainname_get to cmd_domainname_get
3. New API to set domainname
3. Provide a CLI command to set domainname

Signed-off-by: Mitesh Kanjariya <mitesh@cumulusnetworks.com>
7 years agoMerge pull request #1041 (-funwind-tables)
David Lamparter [Mon, 28 Aug 2017 23:05:05 +0000 (01:05 +0200)]
Merge pull request #1041 (-funwind-tables)

7 years agoconfigure: Add `-funwind-tables`
Donald Sharp [Thu, 24 Aug 2017 16:16:24 +0000 (12:16 -0400)]
configure: Add `-funwind-tables`

Certain platforms( ARM comes to mind ) in order
to get a proper stack trace on crash you need
to compile with this value.  Since it only
slightly increases the size of the binary for
other platforms, I would consider it worthwhile
to include this directive.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
7 years agoMerge pull request #1065 from qlyoung/no-ospf6-router-id
David Lamparter [Mon, 28 Aug 2017 22:37:26 +0000 (00:37 +0200)]
Merge pull request #1065 from qlyoung/no-ospf6-router-id

no ospf6 router-id

7 years agoisisd: guard SPF warning by debug flag
Christian Franke [Mon, 28 Aug 2017 22:23:53 +0000 (00:23 +0200)]
isisd: guard SPF warning by debug flag

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
7 years agoisisd: keep original TLVs when purging in response to confusion
Christian Franke [Mon, 28 Aug 2017 22:14:43 +0000 (00:14 +0200)]
isisd: keep original TLVs when purging in response to confusion

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
7 years agovtysh: add -N/--pathspace option
David Lamparter [Sun, 27 Aug 2017 19:03:32 +0000 (21:03 +0200)]
vtysh: add -N/--pathspace option

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agolib: add -N/--pathspace option
David Lamparter [Sun, 27 Aug 2017 19:03:12 +0000 (21:03 +0200)]
lib: add -N/--pathspace option

This allows running the daemons inside of Linux network namespaces
without messing with an additional mount/fs namespace (or a ton of
options).

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agovtysh: simplify path handling
David Lamparter [Sun, 27 Aug 2017 18:57:34 +0000 (20:57 +0200)]
vtysh: simplify path handling

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agovtysh: cleanup SUID handling
David Lamparter [Sun, 27 Aug 2017 18:38:54 +0000 (20:38 +0200)]
vtysh: cleanup SUID handling

Eliminate several more SUID problems (VTYSH_LOG, history file) and make
the whole SUID approach more robust.  Still possibly unsafe to use, but
much better.

[v2: wrap seteuid/setegid calls]
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
7 years agoMerge pull request #1066 from nkukard/fix-ordering-of-large-community-config
Donald Sharp [Mon, 28 Aug 2017 20:15:27 +0000 (16:15 -0400)]
Merge pull request #1066 from nkukard/fix-ordering-of-large-community-config

vtysh: Fix for the ordering of large-community lists in config output

7 years agovtysh: Fix for the ordering of large-community lists in config output
Nigel Kukard [Mon, 28 Aug 2017 18:35:15 +0000 (18:35 +0000)]
vtysh: Fix for the ordering of large-community lists in config output

Signed-off-by: Nigel Kukard <nkukard@lbsd.net>