Commit Graph

12131 Commits

Author SHA1 Message Date
Jafar Al-Gharaibeh
96b3001abc
Merge pull request #2635 from donaldsharp/more_pim_neighbor
More pim neighbor
2018-07-19 10:47:10 -05:00
Donald Sharp
d244a1a39b
Merge pull request #2686 from opensourcerouting/master-fix-isis-issue-2584
isisd: don't crash when isis_sock_init fails
2018-07-19 11:41:23 -04:00
Christian Franke
d4670f515b isisd: don't crash when isis_sock_init fails
When isis_sock_init fails in isis_circuit_up, isis_circuit_down would
be called to cancel timers which were scheduled. However
isis_circuit_down would immediately return, since the state had not been
changed to 'UP' yet.

Fix this by having isis_circuit_down always cancel all the timers.

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-07-19 10:11:07 -04:00
Christian Franke
ec40eaf94d lib/compiler.h: Always define CPP_NOTICE
On old compilers CPP_NOTICE should be a macro evaluating to an empty
statement, instead of being undefined.

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-07-19 10:10:13 -04:00
Donald Sharp
d1a85fe40d
Merge pull request #2608 from pacovn/PVS-Studio_dead_code_1
eigrpd lib pimd zebra: dead code (PVS-Studio)
2018-07-19 08:50:01 -04:00
Donatas Abraitis
b156c65dc0 Use metric for default-originate with route-map if applied
Signed-off-by: Donatas Abraitis donatas.abraitis@gmail.com
2018-07-19 11:17:47 +03:00
Donald Sharp
06a5959f10
Merge pull request #2678 from pguibert6WIND/sanity_netns
zebra: sometimes, it is not possible to assign a NSID to a vrf
2018-07-18 15:36:53 -04:00
Quentin Young
1e18601b07 doc: cleanup rpki.rst
Previous commit on this file introduced formatting issues.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-07-18 19:22:14 +00:00
Quentin Young
f6b66ba90c zebra: fix some cli option descriptions
Couple typos / clarity fixes.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-07-18 16:39:20 +00:00
Quentin Young
2875801fa3 zebra: fix zapi fuzzing infra
Some of this stuff got broken with the introduction of pthreads.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-07-18 16:32:07 +00:00
Philippe Guibert
85a0edcab2 zebra: sometimes, it is not possible to assign a NSID to a vrf
This test case happens in scenarios with mininet, where external netns
may be impossible for the local instance to be modified. The error is
ignored and the netns parsed is ignored too.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-07-18 18:02:46 +02:00
Don Slice
bbde7a0f25 zebra: fix nexthop type check for kernel default route display
Signed-off-by: Don Slice <dslice@cumulusnetworks.com>
2018-07-18 13:05:50 +00:00
Chirag Shah
68e331515e bgpd: support evpn nd ext community
EVPN ND ext community support NA flag R-bit, to have proxy ND.

Set R-bit in EVPN NA if a given router is default gateway or there is a
local
router attached, which can be determine based on local neighbor entry.

Implement BGP ext community attribute to generate and parse  R-bit and
pass along zebra to program neigh entry in kernel.

Upon receiving MAC/IP update with community type 0x06 and sub_type 0x08,
pass the R-bit to zebra to program neigh entry.

Set NTF_ROUTER in neigh entry and inform kernel to do proxy NA for EVPN.

Ref:
https://tools.ietf.org/html/draft-ietf-bess-evpn-na-flags-01

Ticket:CM-21712, CM-21711
Reviewed By:
Testing Done:
Configure Local vni enabled L3 Gateway, which would act as router,
checked
show evpn arp-cache vni x ip <ip of svi> on originated and remote VTEPs.
"Router" flag is set.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
2018-07-17 13:06:41 -07:00
Quentin Young
bf03267495
Merge pull request #2669 from netravnen/hotfix/documentation/activate-bgp-rpki
doc: Update rpki.rst for how-to enable rpki module
2018-07-17 14:51:48 -04:00
pcarana
0817301aac
RedHat spec: Add the rpki module when needed
Additional help complementing #2669, this adds the rpki module to the bgpd daemon at RPM creation.
2018-07-17 12:49:14 -05:00
Christoffer
04a18e3267 doc: Update rpki.rst for how-to enable rpki module
It has not been properly documented yet how to enable the RPKI module with BGP when having installed FRR with RPKI support. This PR seeks to add a section to the user documentation about this. So users will not have to resolve to searching the internet and looking through the FROG mailing list threads for answers.
2018-07-17 18:45:33 +02:00
Quentin Young
8f61e2b13e
Merge pull request #2625 from pguibert6WIND/ipv4_ipv6_bgp_show
doc: add more information about show ip bgp and show bgp
2018-07-17 11:19:13 -04:00
Lou Berger
a46696ed60
Merge pull request #2647 from pguibert6WIND/fix_routemap_vpnv4
bgpd: ability to set vpnv4 nexthop with route-map
2018-07-17 11:02:42 -04:00
Don Slice
fc132690b4 zebra: remove default vrf output for kernel vrf ipv6 blackhole default
It was reported that "show ipv6 route vrf <vrfname>", "show ipv6 route
vrf <vrfname> ::/0 " or "show ipv6 route vrf <vrfname> json" all
displayed that the nexthop was in the default vrf.  This was because
the kernel netlink messages would supply the RTA_OIF of the loopback
interface for the kernel-created default route for the vrf, where ipv4
did not supply any RTA_OIF.  This fix suppresses the display if the
nexthop and route entry are in different vrfs and the nexthop is
NEXTHOP_TYPE_BLACKHOLE.

Ticket: CM-21722
Signed-off-by: Don Slice <dslice@cumulusnetworks.com>
2018-07-17 14:35:33 +00:00
Renato Westphal
972388dd5c
Merge pull request #2589 from donaldsharp/admiral_ACK_bar
Netlink sockets are synchronous
2018-07-14 11:48:40 -03:00
Renato Westphal
0e2f00b0d5
Merge pull request #2658 from mjstapp/srcdest_test_const
tests: align with srcdest lib changes, remove bgp binary
2018-07-14 11:47:54 -03:00
Mark Stapp
432eaa5d97 tests: add test_bgp_table to gitignore
Signed-off-by: Mark Stapp <mjs@voltanet.io>
2018-07-13 07:56:38 -04:00
Donald Sharp
8c85e8ea92 zebra: Remove need for ACK for netlink messages
Kernel requests via netlink are synchronous.

Therefore we do not need to specify a need for a ACK and
we can make the netlink_cmd NONBLOCKING

1) If the netlink message is going to cause an error
we will still get one.  Since results from the kernel
are synchronous we will get the error message on the
netlink_cmd socket and handle it

2) If the netlink message is going to send more than
one packet we will still get them all.  Since the results
from the kernel are synchronous we will receive all data.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-07-12 22:43:06 -04:00
Donald Sharp
19d5a4fead zebra: Listen to error codes from netlink_socket
When creating a netlink_socket, listen to error
codes and abandon ship if it crashes and burns.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-07-12 22:43:06 -04:00
Donald Sharp
51034b787f
Merge pull request #2595 from pguibert6WIND/fix_netlink_rx_route_vrfnetns
zebra: upon RTM_NEWROUTE/DELROUTE, find appropriate interface
2018-07-12 22:22:34 -04:00
Renato Westphal
25666e25af
Merge pull request #2660 from sworleys/master
zebra: Fix function call in fuzzing code
2018-07-12 18:39:09 -03:00
Stephen Worley
24f8f9791e zebra: Fix function call in fuzzing code
The fuzzing code was calling zebra_client_create which was refactored to zserv_client_create.

Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
2018-07-12 12:39:13 -04:00
Mark Stapp
2861a0deda tests: align with srcdest lib changes, remove bgp binary
Align the srcdest table test with recent api changes that use
'const' more strictly. Remove test_bgp_table binary - looks
as if it was committed by mistake.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2018-07-12 09:51:52 -04:00
Quentin Young
2dae54733c
Merge pull request #2469 from ajones-rvbd/ajones-issue-2442
unit tests: support code coverage instrumentation and reports
2018-07-11 13:34:52 -04:00
Donald Sharp
e79c6d3f8f
Merge pull request #2655 from mjstapp/lib_const_prefix
zebra, libs: use const prefix ptrs in apis
2018-07-11 10:45:52 -04:00
Mark Stapp
86391e5659 zebra, libs: use const prefix ptrs in apis
Add 'const' to prefix args to several zebra route update,
redistribution, and route owner notification apis.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2018-07-11 09:22:49 -04:00
Martin Winter
01d38683b9
Merge pull request #2651 from qlyoung/doc-cleanup-release-process
doc: cleanup maintainer release document
2018-07-10 17:39:15 -07:00
Russ White
93387e540a
Merge pull request #2627 from rtrlib/revalidation
bgpd: rpki revalidation
2018-07-10 18:50:47 -04:00
Donald Sharp
89c9b8285e
Merge pull request #2650 from mjstapp/nh_iter
libs: add ALL_NEXTHOPS_PTR iterator macro
2018-07-10 18:20:00 -04:00
Russ White
96257ced27
Merge pull request #2591 from LabNConsulting/working/master/bgp-delayed-default-instance
bgpd: fix NULL dereference in vrf-vpn leak config if before default instance
2018-07-10 16:46:00 -04:00
Lou Berger
66f99ce592 ospf6d: remove VERSION_TYPE_DEV from CONFDATE checks
Signed-off-by: Lou Berger <lberger@labn.net>
2018-07-10 16:20:18 -04:00
Lou Berger
bee57a7a07 bgpd: remove VERSION_TYPE_DEV from CONFDATE checks
Signed-off-by: Lou Berger <lberger@labn.net>
2018-07-10 16:20:09 -04:00
Lou Berger
308fea4ced lib: remove VERSION_TYPE_DEV from CONFDATE checks
Signed-off-by: Lou Berger <lberger@labn.net>
2018-07-10 16:19:37 -04:00
Lou Berger
e60dd6cae4 doc: update doc to no longer requires use of VERSION_TYPE_DEV
Signed-off-by: Lou Berger <lberger@labn.net>
2018-07-10 16:19:30 -04:00
Lou Berger
62d21cc6fe *: VERSION_TYPE no longer needed -- remove it
Signed-off-by: Lou Berger <lberger@labn.net>
2018-07-10 16:19:22 -04:00
Lou Berger
5e2dd3fa5d *: ignore deprecated code statments in release versions
by setting CONFDATE to 0

Signed-off-by: Lou Berger <lberger@labn.net>
2018-07-10 16:19:14 -04:00
Quentin Young
11acdeacaf
Merge pull request #2553 from opensourcerouting/release_proc
doc: Add document for Release Build by maintainer
2018-07-10 15:39:49 -04:00
Quentin Young
5931e2599b doc: cleanup maintainer release document
* Sphinx numbered lists use 1. not 1)
* Indents are three spaces
* Blocks under lists should be indented along with the rest of the list
  content
* Sphinx converts :: to : when used as a code block marker
* Apply some preformatted markup to things that should be preformatted
* Remove trailing whitespace

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-07-10 19:39:39 +00:00
Mark Stapp
d826a734af libs: add ALL_NEXTHOPS_PTR iterator macro
Because sometimes we have a pointer to a nexthop_group.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2018-07-10 14:07:43 -04:00
Philippe Guibert
fda8229965 lib: remove if_lookup_by_index portion of code with unknown vrf
This function should be called with a known vrf_id. All other cases, the
other API should be called.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-07-10 17:32:40 +02:00
Philippe Guibert
86f07f44c1 zebra: mpls entry interface lookup adaptation for vrf backend
The search algorithm for interface based on ifindex only is adapted to
vrf netns based too. Only the default netns will be used to search the
interface index.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-07-10 17:32:36 +02:00
Philippe Guibert
06432d4e4f zebra: pbr rule lookup index adaptation for vrf netns
the interface lookup based on ifindex in the case the target vrf is
unknown is using the generic vrf api. Like that, in the case of vrf
based netns, the search across different netns other than the default
one are not searched.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-07-10 17:32:23 +02:00
Philippe Guibert
fac4d51eea zebra: upon RTM_NEWROUTE/DELROUTE, find appropriate interface
The interface lookup algorithm is different according to if we are on
netns vrf or not. If we are on the former case, then we only have to
parse the interfaces of the netns, while if we are on the other case, we
have to parse all the interfaces of all the vrfs ( since index is not
overlapping in the latter case).

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-07-10 17:32:23 +02:00
Renato Westphal
c26178fe61
Merge pull request #2643 from qlyoung/doc-workflow-reviews
doc: add dev docs on code review practices
2018-07-10 10:47:43 -03:00
Philippe Guibert
d54600fa83 bgpd: ability to set vpnv4 nexthop with route-map
Ability to set nexthop IP pointer with route-map.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-07-10 15:22:13 +02:00