]>
git.puffer.fish Git - mirror/frr.git/log
Donald Sharp [Tue, 21 Apr 2020 20:14:21 +0000 (16:14 -0400)]
Merge pull request #6126 from sarav511/watermark
pimd: Implement watermark warning for igmp group count and add igmp group count
Quentin Young [Tue, 21 Apr 2020 18:31:56 +0000 (14:31 -0400)]
Merge pull request #6267 from mjstapp/fix_ospf6_unlock_sa
ospf6d: fix SA warnings
Quentin Young [Tue, 21 Apr 2020 15:28:05 +0000 (11:28 -0400)]
Merge pull request #6253 from opensourcerouting/fpm-extra
zebra/fpm: fix shutdown and add more documentation
Donald Sharp [Tue, 21 Apr 2020 15:16:24 +0000 (11:16 -0400)]
Merge pull request #6264 from opensourcerouting/doc-workflow-
20200420
doc: workflow updates
Mark Stapp [Tue, 21 Apr 2020 15:01:18 +0000 (11:01 -0400)]
ospf6d: fix SA warnings
Clean up some SA warnings in use of ospf6_lsa_unlock()
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Russ White [Tue, 21 Apr 2020 13:08:06 +0000 (09:08 -0400)]
Merge pull request #6147 from opensourcerouting/ldpd-broken-lsps
ldpd: don't drop packets coming through a broken LSP
David Lamparter [Mon, 20 Apr 2020 21:51:37 +0000 (23:51 +0200)]
doc: add some Github workflow notes
Just writing down what seems to be established procedure.
Signed-off-by: David Lamparter <equinox@diac24.net>
David Lamparter [Mon, 20 Apr 2020 21:33:21 +0000 (23:33 +0200)]
doc: document strcpy & sprintf ban
Signed-off-by: David Lamparter <equinox@diac24.net>
Quentin Young [Mon, 20 Apr 2020 23:12:50 +0000 (19:12 -0400)]
Merge pull request #6263 from opensourcerouting/zlog-coverity-
20200420
lib/zlog: fix coverity warning
David Lamparter [Mon, 20 Apr 2020 21:20:13 +0000 (23:20 +0200)]
doc: remove mailing list patch submission
Last patch sent in on the mailing list was in July 2018. If someone
sends a patch we can still pick it up, but practiced reality is quite
clearly PRs on github.
Signed-off-by: David Lamparter <equinox@diac24.net>
David Lamparter [Mon, 20 Apr 2020 21:17:17 +0000 (23:17 +0200)]
lib/zlog: fix coverity warning
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Donald Sharp [Mon, 20 Apr 2020 20:10:07 +0000 (16:10 -0400)]
Merge pull request #6261 from ton31337/fix/allow_nhlen_32
bgpd: Do not discard an UPDATE if the global nexthop is set to ::
Donald Sharp [Mon, 20 Apr 2020 20:08:37 +0000 (16:08 -0400)]
Merge pull request #6251 from opensourcerouting/cs-ignore
*: make coverity scan ignore random() calls
Mark Stapp [Mon, 20 Apr 2020 17:28:14 +0000 (13:28 -0400)]
Merge pull request #6245 from sworleys/NHG-More-Topo
tests: add connected/recursive/duplicte/route-map NHG tests
Donatas Abraitis [Mon, 20 Apr 2020 15:46:23 +0000 (18:46 +0300)]
bgpd: Do not discard an UPDATE if the global nexthop is set to ::
When we receive an UPDATE with MP_NEXTHOP len as 32 bytes, we shouldn't
check if the global (1st) nexthop is unspecified.
Peering between bird and FRRouting we receive from Bird something like:
```
rcvd UPDATE w/ attr: , origin i, mp_nexthop ::(fe80::a00:27ff:fe09:f8a3)
```
The link-local (2nd) nexthop is valid and validated later in the code.
Before it was marked:
```
IPv6 unicast -- DENIED due to: martian or self next-hop;
```
After it's a valid prefix:
```
spine1-debian-9# show bgp
BGP table version is 0, local router ID is 2.2.2.2, vrf id 0
Default local pref 100, local AS 65002
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
2a02:4780::/64 fe80::a00:27ff:fe09:f8a3
0 65001 i
Displayed 1 routes and 1 total paths
```
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donald Sharp [Mon, 20 Apr 2020 12:30:28 +0000 (08:30 -0400)]
Merge pull request #6260 from ton31337/fix/01_to_bool
bgpd: Use true/false for reject_as_sets
Donatas Abraitis [Mon, 20 Apr 2020 09:59:52 +0000 (12:59 +0300)]
bgpd: Use true/false for reject_as_sets
Just remove MACROS and use true/false.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donatas Abraitis [Sat, 18 Apr 2020 19:48:20 +0000 (22:48 +0300)]
Merge pull request #6231 from dslicenc/v6-ra-hoplimit
zebra: add ability to set hoplimit for IPv6 RAs
Donald Sharp [Sat, 18 Apr 2020 19:06:04 +0000 (15:06 -0400)]
Merge pull request #6164 from ton31337/feature/rfc8212_enabled_traditional_profile
bgpd: Enable rfc8212 by default except datacenter profile
David Lamparter [Sat, 18 Apr 2020 18:47:32 +0000 (20:47 +0200)]
Merge pull request #6256 from qlyoung/pimd-no-strcpy
David Lamparter [Sat, 18 Apr 2020 15:34:09 +0000 (17:34 +0200)]
Merge pull request #6257 from qlyoung/bitfield-no-null-check-before-free
David Lamparter [Sat, 18 Apr 2020 15:06:38 +0000 (17:06 +0200)]
Merge pull request #6258 from donaldsharp/more_scan_more
Donald Sharp [Sat, 18 Apr 2020 01:18:53 +0000 (21:18 -0400)]
ospf6d: Prevent use after free
ospf6_lsa_unlock may free the lsa data structure as such
we cannot use the passed in data structure after freeing it.
Provide a mechanism to know if the data has been freed
using the same usage patterns of other _unlock functions
in FRR.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald Sharp [Sat, 18 Apr 2020 00:06:07 +0000 (20:06 -0400)]
isisd: Prevent use after free for isis_adj_state_change
When we call isis_adj_state_change with ISIS_ADJ_DOWN
we free the pointer, but we were still using the pointer
after it was freed. Cleanup the api to prevent this.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Quentin Young [Sat, 18 Apr 2020 00:19:33 +0000 (20:19 -0400)]
lib: dont null check bitfield pointer before free
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Quentin Young [Sat, 18 Apr 2020 00:17:18 +0000 (20:17 -0400)]
Merge pull request #6255 from mjstapp/fix_bitfield_free
lib: clear data pointer in bf_free
Quentin Young [Sat, 18 Apr 2020 00:05:34 +0000 (20:05 -0400)]
lib: don't use strcpy
>:(
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Quentin Young [Fri, 17 Apr 2020 23:56:49 +0000 (19:56 -0400)]
pimd: don't use strcpy
>:(
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Rafael Zalamena [Fri, 17 Apr 2020 13:35:15 +0000 (10:35 -0300)]
*: replace all random() calls
Replace all `random()` calls with a function called `frr_weak_random()`
and make it clear that it is only supposed to be used for weak random
applications.
Use the annotation described by the Coverity Scan documentation to
ignore `random()` call warnings.
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
Rafael Zalamena [Fri, 17 Apr 2020 15:18:24 +0000 (12:18 -0300)]
zebra: gracefully shutdown fpm module
Lets stop and free all resources before shutting down.
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
Rafael Zalamena [Fri, 17 Apr 2020 15:14:37 +0000 (12:14 -0300)]
zebra: notify data plane providers about shutdown
Call the `dp_fini` callback twice: once at the beginning of the shutdown
and then again right before `exit()`ing zebra.
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
Rafael Zalamena [Thu, 16 Apr 2020 19:26:51 +0000 (16:26 -0300)]
doc: update FPM documentation
Tell users about new FPM implementation and add more documentation about
it.
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
Mark Stapp [Fri, 17 Apr 2020 20:53:37 +0000 (16:53 -0400)]
lib: clear data pointer in bf_free
Help avoid double-free by clearing data pointer.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Donatas Abraitis [Fri, 17 Apr 2020 09:09:58 +0000 (12:09 +0300)]
Merge pull request #6248 from donaldsharp/zebra_snmp
some more coverity fixups
Sri Mohana Singamsetty [Fri, 17 Apr 2020 03:17:40 +0000 (20:17 -0700)]
Merge pull request #6240 from ton31337/fix/null_bnc_bgp_show_hostname
bgpd: Add a sanitify check for bgp_nexthop_cache against NULL
Donald Sharp [Fri, 17 Apr 2020 00:26:00 +0000 (20:26 -0400)]
pimd: if_lookup_by_index can fail handle it appropriately
It is possible that a if_lookup_by_index can return NULL
ensure that we handle this appropriately.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald Sharp [Fri, 17 Apr 2020 00:17:22 +0000 (20:17 -0400)]
lib: prefix must be a valid pointer at this point
Coverity does not understand how our CLI works. Make it
happy that we have tested it's existence
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald Sharp [Fri, 17 Apr 2020 00:16:02 +0000 (20:16 -0400)]
ospfd: Fix possible null deref
It is possible that area is null, let's ensure it isn't.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald Sharp [Fri, 17 Apr 2020 00:14:55 +0000 (20:14 -0400)]
zebra: in_addr_cmp and `struct prefix` are not happy
Coverity is complaining that we are looking beyond the end
of the pointer. Why not just use prefix_cmp here? Since
we are comparing to route_nodes.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald Sharp [Thu, 16 Apr 2020 23:39:14 +0000 (19:39 -0400)]
Merge pull request #6247 from FRRouting/nb_conversions
Merge nb_converions branch to master
Donald Sharp [Thu, 16 Apr 2020 23:24:56 +0000 (19:24 -0400)]
Merge pull request #6135 from opensourcerouting/cli-node-cleanup
*: clean up the mess that is CLI command nodes
Quentin Young [Thu, 16 Apr 2020 19:40:03 +0000 (15:40 -0400)]
Merge pull request #6239 from ton31337/fix/uint8_t_to_bool_for_any
bgpd, lib: Use bool instead of uint8_t for community/prefix-list "any"
Quentin Young [Thu, 16 Apr 2020 19:38:11 +0000 (15:38 -0400)]
lib: suppress formatting on yang.c module array
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Donatas Abraitis [Thu, 16 Apr 2020 19:28:19 +0000 (22:28 +0300)]
Merge pull request #5913 from taspelund/evpn_route_type_int
bgpd: Allow 'show bgp l2vpn evpn route type' to use RT number in addition to existing keywords
Olivier Dugeon [Thu, 16 Apr 2020 19:12:30 +0000 (21:12 +0200)]
Merge pull request #6224 from mjstapp/zclient_session_id
lib,zebra: add a session id for zapi sessions
Quentin Young [Thu, 16 Apr 2020 19:10:19 +0000 (15:10 -0400)]
lib: fix style nit in yang_wrappers.c
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Mark Stapp [Wed, 15 Apr 2020 12:34:03 +0000 (08:34 -0400)]
zebra,ldpd: use zapi client session id in LM apis
Use the zapi client session id in the label manager apis;
use the client struct directly in some code. Assign a session
id to ldpd's sync LM zapi session.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Mark Stapp [Tue, 14 Apr 2020 14:45:09 +0000 (10:45 -0400)]
lib,zebra: add a session id for zapi sessions
Distinguish zapi sessions, for daemons who use more than one,
by adding a session id. The tuple of proto + instance is not
adequate to support clients who use multiple zapi sessions.
Include the id in the client show output if it's present. Add
a bit of info about this to the developer doc.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Chirag Shah [Mon, 6 Apr 2020 21:20:43 +0000 (14:20 -0700)]
zebra: add weight to nb conversion
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Sat, 4 Apr 2020 06:08:58 +0000 (23:08 -0700)]
yang: add weight in nexthop operational model
add weight field to operational model.
add leafref to nexthopgroup.
format according to yanglint.
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Sat, 4 Apr 2020 00:00:30 +0000 (17:00 -0700)]
lib: increase xpath maxlen
Certain xpath are well 256 characters, increasing
to 512.
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Tue, 25 Feb 2020 02:40:29 +0000 (18:40 -0800)]
zebra: add northbound support for zebra interface
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Stephen Worley [Mon, 13 Apr 2020 23:00:18 +0000 (19:00 -0400)]
tests: add connected/recursive/duplicte/route-map NHG tests
Add some more NHG topotests using connected, recursive, duplicate
and higher ecmp nexthops as well as route maps.
Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
Chirag Shah [Fri, 27 Mar 2020 02:00:52 +0000 (19:00 -0700)]
lib: remove gcc 4.x workaround for nb structure
Remove gcc 4.x workaround for variable size array as gcc
check moved to header file.
In lib/northbound.h : struct frr_yang_module_info made
size 1000 for gcc 4.x, where maximum 1000 nodes can fit.
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Thu, 20 Feb 2020 02:48:47 +0000 (18:48 -0800)]
zebra: add nb callbacks for zebra if state
This is all stub callbacks autogenrated for
zebra interface state data.
Signed-off-by: chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Wed, 19 Feb 2020 21:26:41 +0000 (13:26 -0800)]
lib: add interface operational northbound callback
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Thu, 6 Feb 2020 03:19:09 +0000 (19:19 -0800)]
yang: update zebra interface model
Modify interface config model
and add zebra specific interface state operational data.
augment /frr-interface:lib/frr-interface:interface:
+--rw zebra
+--rw ip-addrs* [address-family ip-prefix]
| +--rw address-family identityref
| +--rw ip-prefix ietf-inet-types:ip-prefix
| +--rw label? string
| +--rw ip4-peer? ietf-inet-types:ipv4-prefix
+--rw multicast? boolean
+--rw link-detect? boolean
+--rw shutdown? boolean
+--rw bandwidth? uint32
+--ro state
+--ro up-count? uint16
+--ro down-count? uint16
+--ro zif-type? identityref
+--ro ptm-status? string <disabled>
+--ro vlan-id? uint16
+--ro vni-id? vni-id-type
+--ro remote-vtep? ietf-inet-types:ipv4-address
+--ro mcast-group? ietf-routing-types:ipv4-multicast-group-address
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Wed, 5 Feb 2020 22:23:52 +0000 (14:23 -0800)]
yang: add operational data to frr-interface model
module: frr-interface
+--rw lib
+--rw interface* [name vrf]
+--rw name string
+--rw vrf frr-vrf:vrf-ref
+--rw description? string
+--ro state
+--ro if-index? int32
+--ro mtu? uint16
+--ro mtu6? uint32
+--ro speed? uint32
+--ro metric? uint32
+--ro flags? if-flags-type
+--ro type? identityref
+--ro phy-address? ietf-yang-types:mac-address
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Tue, 4 Feb 2020 00:09:29 +0000 (16:09 -0800)]
yang: add ietf interface yang model
Add ietf interface yant model.
Also include it in the makefile.
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Sarita Patra [Wed, 5 Feb 2020 08:52:27 +0000 (00:52 -0800)]
yang: igmp yang definition
Defined frr-igmp.yang file for IGMP protocol.
Co-authored-by: Sarita Patra <saritap@vmware.com>
Co-authored-by: Santosh P K <sapk@vmware.com>
Signed-off-by: Sarita Patra <saritap@vmware.com>
Chirag Shah [Tue, 31 Mar 2020 02:29:32 +0000 (19:29 -0700)]
lib: yang wrapper nexthop type to str
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Sat, 21 Mar 2020 01:58:16 +0000 (18:58 -0700)]
lib: add yang wrapper for type empty
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Tue, 10 Mar 2020 01:48:30 +0000 (18:48 -0700)]
zebra: stub changes to assimilate re into rib nb
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Fri, 6 Mar 2020 05:43:41 +0000 (21:43 -0800)]
yang: zebra rib model add route entry
FRR rib model need to accomodate route entries for
a given destination prefix.
Add a list of route entry under the list of prefix.
+--rw ribs
+--rw rib* [afi-safi-name table-id]
+--rw table-id uint32
+--rw afi-safi-name identityref
+--ro route* [prefix]
+--ro prefix ietf-inet-types:ip-prefix
+--ro route-entry* [protocol]
+--ro protocol frr-route-types:frr-route-types-v4
+--ro instance? uint16
+--ro distance? uint8
+--ro metric? uint32
+--ro tag? uint32
+--ro selected? empty
+--ro installed? empty
+--ro failed? empty
+--ro queued? empty
+--ro internal-flags? int32
+--ro internal-status? int32
+--ro uptime? ietf-yang-types:date-and-time
+--ro nexthop-group* [name]
+--ro name string
+--ro frr-nexthops
+--ro nexthop* [nh-type gateway interface]
+--ro nh-type frr-nexthop:nexthop-type
+--ro vrf? frr-vrf:vrf-ref
+--ro gateway frr-nexthop:optional-ip-address
+--ro interface frr-interface:interface-ref
+--ro bh-type? frr-nexthop:blackhole-type
+--ro onlink? boolean <false>
+--ro mpls-label-stack
| +--ro entry* [id]
| +--ro id uint8
| +--ro label? ietf-routing-types:mpls-label
| +--ro ttl? uint8
| +--ro traffic-class? uint8
+--ro duplicate? empty
+--ro recursive? empty
+--ro active? empty
+--ro fib? empty
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Mon, 2 Mar 2020 15:22:45 +0000 (07:22 -0800)]
yang: zebra rib model remove grouping for ip route
Grouping is referencing leaves outside the grouping
from where it is used. Removing it and defining leaves
at the used place.
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Thu, 6 Feb 2020 21:32:34 +0000 (13:32 -0800)]
zebra: convert clear evpn dup addr command to nb
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Wed, 29 Jan 2020 20:05:35 +0000 (12:05 -0800)]
zebra: nb rpc cb for clear evpn dup addr cmd
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Thu, 6 Feb 2020 20:37:28 +0000 (12:37 -0800)]
zebra: clear dup detect cleanup for nb conversion
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Thu, 30 Jan 2020 19:42:58 +0000 (11:42 -0800)]
lib:api to convert mac to yang object
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Wed, 29 Jan 2020 17:38:03 +0000 (09:38 -0800)]
zebra: nb callbacks support
Definition of the northbound callbacks
and associated YANG data paths for zebra.
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Fri, 13 Dec 2019 01:43:19 +0000 (17:43 -0800)]
yang: add zebra model in makefile
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Wed, 29 Jan 2020 17:38:03 +0000 (09:38 -0800)]
*: frr nexthop yang in makefile
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Fri, 6 Dec 2019 02:48:14 +0000 (18:48 -0800)]
yang: zebra rib operational model
augment /frr-vrf:lib/frr-vrf:vrf:
+--rw ribs
+--rw rib* [afi-safi-name table-id]
+--rw table-id uint32
+--rw afi-safi-name identityref
+--ro route* [prefix]
+--ro prefix ietf-inet-types:ip-prefix
+--ro protocol? frr-route-types:frr-route-types-v4
+--ro protocol-v6? frr-route-types:frr-route-types-v6
+--ro vrf? frr-vrf:vrf-ref
+--ro distance? uint8
+--ro metric? uint32
+--ro tag? uint32
+--ro selected? empty
+--ro installed? empty
+--ro failed? empty
+--ro queued? empty
+--ro internal-flags? int32
+--ro internal-status? int32
+--ro uptime? ietf-yang-types:date-and-time
+--ro nexthop-group* [name]
+--ro name string
+--ro frr-nexthops
+--ro nexthop* [nh-type gateway interface]
+--ro nh-type frr-nexthop:nexthop-type
+--ro vrf? frr-vrf:vrf-ref
+--ro gateway frr-nexthop:optional-ip-address
+--ro interface frr-interface:interface-ref
+--ro bh-type? frr-nexthop:blackhole-type
+--ro onlink? boolean <false>
+--ro mpls-label-stack
| +--ro entry* [id]
| +--ro id uint8
| +--ro label? ietf-routing-types:mpls-label
| +--ro ttl? uint8
| +--ro traffic-class? uint8
+--ro duplicate? empty
+--ro recursive? empty
+--ro active? empty
+--ro fib? empty
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Sat, 21 Mar 2020 23:46:24 +0000 (16:46 -0700)]
yang: revert leafref to get interface cmd working
Unable to access interface command:
root@bharat:~/stash/libyang/build# dpkg-query -W | grep libyang
libyang-dev 0.16.105-3~ubuntu18.04.1
libyang0.16 0.16.105-3~ubuntu18.04.1
root@bharat:~/stash/libyang/build# vtysh
bharat# config t
bharat(config)# interface lo
% Configuration failed: validation error.
Please check the logs for more details.
Logfile:
2020/03/21 16:48:55 ZEBRA: libyang: Leafref
"/frr-vrf:lib/frr-vrf:vrf/frr-vrf:name" of value "default"
points to a non-existing leaf.
(/frr-interface:lib/interface[name='lo'][vrf='default']/vrf)
2020/03/21 16:48:55 ZEBRA: [EC
100663337 ]
nb_candidate_commit_prepare: failed to validate
candidate configuration
CI system failure:
2020/03/21 18:53:18 ZEBRA: libyang: Leafref
"/frr-vrf:lib/frr-vrf:vrf/frr-vrf:name" of value "default"
points to a non-existing leaf.
(/frr-interface:lib/interface[name='r1-eth0'][vrf='default']/vrf)
2020/03/21 18:53:18 ZEBRA: [EC
100663337 ] nb_candidate_commit_prepare:
failed to validate candidate configuration
2020/03/21 18:53:18 ZEBRA: libyang: Leafref
"/frr-vrf:lib/frr-vrf:vrf/frr-vrf:name" of value "default"
points to a non-existing leaf.
(/frr-interface:lib/interface[name='r1-eth1'][vrf='default']/vrf)
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Sat, 21 Mar 2020 21:35:14 +0000 (14:35 -0700)]
lib: convert vrf cmd to northbound config callback
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Wed, 11 Mar 2020 20:14:08 +0000 (13:14 -0700)]
*: include vrf northbound module in init
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Wed, 11 Mar 2020 01:20:49 +0000 (18:20 -0700)]
lib: vrf northbound callbacks
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
vdhingra [Wed, 11 Dec 2019 05:57:37 +0000 (21:57 -0800)]
lib: yang defination for basic frr-routing
Yang files for basic frr-routing used by other
daemons like staticd and pim
Co-authored-by: Santosh P K <sapk@vmware.com>
Co-authored-by: vishaldhingra <vdhingra@vmware.com>
Signed-off-by: vishaldhingra <vdhingra@vmware.com>
Santosh P K [Thu, 16 Apr 2020 14:53:44 +0000 (20:23 +0530)]
Merge pull request #5451 from opensourcerouting/rcu-log
logging subsystem rewrite
vdhingra [Tue, 3 Dec 2019 14:00:51 +0000 (06:00 -0800)]
staticd: yang defination
Yang files for staticd to use northbound APIs
Co-authored-by: Santosh P K <sapk@vmware.com>
Co-authored-by: vishaldhingra <vdhingra@vmware.com>
Signed-off-by: vishaldhingra <vdhingra@vmware.com>
Santosh P K [Fri, 20 Dec 2019 08:30:57 +0000 (00:30 -0800)]
lib: FRR next-hop yang data model.
A common nexthop and group nexthop yang data model
for all protocols in FRR.
Co-authored-by: Santosh P K <sapk@vmware.com>
Co-authored-by: Vishaldhingra <vdhingra@vmware.com>
Signed-off-by: Santosh P K <sapk@vmware.com>
Chirag Shah [Mon, 3 Feb 2020 21:31:32 +0000 (13:31 -0800)]
yang: add vrf ref to interface model
module: frr-interface
+--rw lib
+--rw interface* [name vrf]
+--rw name string
+--rw vrf frr-vrf:vrf-ref
+--rw description? string
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Mon, 9 Dec 2019 02:18:04 +0000 (18:18 -0800)]
*: add frr-vrf yang module in makefile
lib: Adding frr-vrf yang module to common place
so it can be accessed from all frr modules.
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Chirag Shah [Fri, 6 Dec 2019 04:47:01 +0000 (20:47 -0800)]
yang: add vrf model
module: frr-vrf
+--rw lib
+--rw vrf* [name]
+--rw name string
+--ro id? uint32
+--ro active? boolean <false>
+--rw netns {netns}?
+--rw name? string
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Donatas Abraitis [Thu, 16 Apr 2020 13:13:01 +0000 (16:13 +0300)]
bgpd: Add a sanitify check for bgp_nexthop_cache against NULL
In real world sometimes happens that bgp_nexthop_cache is NULL. Avoid
segfaulting when using `show [ip] bgp ...` CLI commands.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donatas Abraitis [Thu, 16 Apr 2020 13:05:34 +0000 (16:05 +0300)]
Merge pull request #6238 from donaldsharp/test_evpn_vxlan_cleanup
tests: Cleanup bgp config for evpn vxlan topotest
Donatas Abraitis [Thu, 16 Apr 2020 08:15:35 +0000 (11:15 +0300)]
bgpd, lib: Use bool instead of uint8_t for community/prefix-list "any"
That's only 0/1, useful to use just a bool for that.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donald Sharp [Thu, 16 Apr 2020 11:04:27 +0000 (07:04 -0400)]
tests: Cleanup bgp config for evpn vxlan topotest
The bgp configuration for the vxlan topotest mixed
and matched some configuration that does not belong
for an IBGP setup.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
David Lamparter [Thu, 16 Apr 2020 10:55:02 +0000 (12:55 +0200)]
lib: #define FRR_CMD_NODE_20200416
... requested by Lou.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Thu, 2 Apr 2020 10:06:12 +0000 (12:06 +0200)]
vtysh: use parent_node for vtysh_exit()
Cleaning up the whole mess of "exit" and "quit" commands that follows is
left for a rainy day :(
Signed-off-by: David Lamparter <equinox@diac24.net>
David Lamparter [Sat, 8 Sep 2018 22:03:19 +0000 (00:03 +0200)]
*: add ->node_exit to struct cmd_node
Rather than doing a f*gly hack for the RPKI code, let's do an on-exit
hook in cmd_node. Also allows replacing some special-casing in the vty
code.
Signed-off-by: David Lamparter <equinox@diac24.net>
David Lamparter [Wed, 15 Apr 2020 10:26:01 +0000 (12:26 +0200)]
zebra: fix FPM node reusing VTY_NODE
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Sat, 8 Sep 2018 22:15:50 +0000 (00:15 +0200)]
*: move CLI node names to cmd_node->name
And again for the name. Why on earth would we centralize this, just so
people can forget to update it?
Signed-off-by: David Lamparter <equinox@diac24.net>
David Lamparter [Sat, 8 Sep 2018 21:15:09 +0000 (23:15 +0200)]
*: move CLI parent data to cmd_node->parent_node
Same as before, instead of shoving this into a big central list we can
just put the parent node in cmd_node.
Signed-off-by: David Lamparter <equinox@diac24.net>
David Lamparter [Sat, 8 Sep 2018 20:31:43 +0000 (22:31 +0200)]
*: remove second parameter on install_node()
There is really no reason to not put this in the cmd_node.
And while we're add it, rename from pointless ".func" to ".config_write".
[v2: fix forgotten ldpd config_write]
Signed-off-by: David Lamparter <equinox@diac24.net>
David Lamparter [Sat, 8 Sep 2018 20:00:24 +0000 (22:00 +0200)]
*: remove cmd_node->vtysh
The only nodes that have this as 0 don't have a "->func" anyway, so the
entire thing is really just pointless.
Signed-off-by: David Lamparter <equinox@diac24.net>
David Lamparter [Sat, 8 Sep 2018 19:46:23 +0000 (21:46 +0200)]
*: clean up cmd_node initializers
... and use named assignments everywhere (so I can change the struct.)
Signed-off-by: David Lamparter <equinox@diac24.net>
Donald Sharp [Thu, 16 Apr 2020 10:45:42 +0000 (06:45 -0400)]
Merge pull request #6237 from ton31337/fix/show_hostname_in_bgp
bgpd: Show hostname in `show [ip] bgp ...` only if nexthop is connected
Donatas Abraitis [Thu, 16 Apr 2020 07:37:21 +0000 (10:37 +0300)]
tests: Check if the right next-hop is shown (bgp_show_ip_bgp_fqdn)
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donatas Abraitis [Thu, 16 Apr 2020 07:36:59 +0000 (10:36 +0300)]
bgpd: Show hostname in `show [ip] bgp ...` only if nexthop is connected
The problem is when using kinda such topologies:
(192.168.1.1/32) r1 <-- eBGP --> r2 <-- iBGP --> r3
Looking at r3's nexthop for 192.168.1.1/32 we have it as r2, but really
it MUST be r1.
Checking if the nexthop is connected solves the problem even for cases
when route-reflectors are used.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>