]> git.puffer.fish Git - mirror/frr.git/log
mirror/frr.git
5 years agodoc: add libsnmp-dev to debian 8 & 9 build deps 4364/head
Quentin Young [Fri, 17 May 2019 17:12:12 +0000 (10:12 -0700)]
doc: add libsnmp-dev to debian 8 & 9 build deps

Needed for `--enable-snmp`

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
5 years agoMerge pull request #4349 from donaldsharp/bgp_reason
Sri Mohana Singamsetty [Fri, 17 May 2019 16:51:17 +0000 (09:51 -0700)]
Merge pull request #4349 from donaldsharp/bgp_reason

Bgp reason

5 years agoMerge pull request #4355 from donaldsharp/revert_rtadv_changes
Russ White [Thu, 16 May 2019 18:22:45 +0000 (14:22 -0400)]
Merge pull request #4355 from donaldsharp/revert_rtadv_changes

Revert rtadv changes

5 years agoMerge pull request #4354 from donaldsharp/more_gcc_9_1_werror
Mark Stapp [Thu, 16 May 2019 18:20:29 +0000 (14:20 -0400)]
Merge pull request #4354 from donaldsharp/more_gcc_9_1_werror

zebra: fix missed multipath_num change

5 years agoRevert "zebra: move rtadv service from zrouter to zvrf" 4355/head
Donald Sharp [Thu, 16 May 2019 18:13:40 +0000 (14:13 -0400)]
Revert "zebra: move rtadv service from zrouter to zvrf"

This reverts commit f20e2a09c8aef399698fa074b36f24becdf49cbb.

5 years agoRevert "zebra: keep rtadv_sock field in zrouter for optimisation"
Donald Sharp [Thu, 16 May 2019 18:13:27 +0000 (14:13 -0400)]
Revert "zebra: keep rtadv_sock field in zrouter for optimisation"

This reverts commit 3738d700ff9aac5b7c4fed1a41dc47644488009f.

5 years agozebra: fix missed multipath_num change 4354/head
Donald Sharp [Thu, 16 May 2019 15:49:19 +0000 (11:49 -0400)]
zebra: fix missed multipath_num change

The multipath_num global variable was moved into
zrouter.multipath_num but this particular usage
of it was not updated.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agoMerge pull request #4337 from donaldsharp/routemap_coverity
Russ White [Thu, 16 May 2019 15:45:17 +0000 (11:45 -0400)]
Merge pull request #4337 from donaldsharp/routemap_coverity

zebra: Make coverity SA happy with zebra_routemap.c

5 years agoMerge pull request #4352 from donaldsharp/routemap_fix_replace
Mark Stapp [Thu, 16 May 2019 15:01:20 +0000 (11:01 -0400)]
Merge pull request #4352 from donaldsharp/routemap_fix_replace

lib: Fix gcc 9.1 and --enable-werror issues found

5 years agoMerge pull request #4219 from bisdhdh/biswajitfrr_5
Russ White [Thu, 16 May 2019 14:36:02 +0000 (10:36 -0400)]
Merge pull request #4219 from bisdhdh/biswajitfrr_5

bgpd: Implement 3rd party nexthop for ebgp ipv6 sender, when nexthop matches IPV6 address of the neighbor.

5 years agoMerge pull request #4144 from pguibert6WIND/bfd_cbit
Russ White [Thu, 16 May 2019 14:13:26 +0000 (10:13 -0400)]
Merge pull request #4144 from pguibert6WIND/bfd_cbit

BFD CBIT

5 years agoMerge pull request #4269 from donaldsharp/other_tables
Russ White [Thu, 16 May 2019 14:11:56 +0000 (10:11 -0400)]
Merge pull request #4269 from donaldsharp/other_tables

zebra Other tables

5 years agoMerge pull request #4313 from lkrishnamoor/overlay_json_cli
Russ White [Thu, 16 May 2019 14:09:36 +0000 (10:09 -0400)]
Merge pull request #4313 from lkrishnamoor/overlay_json_cli

bgpd: json cli output for bgp evpn overlay

5 years agoMerge pull request #4327 from sworleys/Move-Multipath-Num
Russ White [Thu, 16 May 2019 14:04:14 +0000 (10:04 -0400)]
Merge pull request #4327 from sworleys/Move-Multipath-Num

zebra: Move multipath_num into zrouter

5 years agoMerge pull request #4340 from qlyoung/hash-key-const
Russ White [Thu, 16 May 2019 14:00:55 +0000 (10:00 -0400)]
Merge pull request #4340 from qlyoung/hash-key-const

lib: hashing functions should take const arguments

5 years agoMerge pull request #4339 from sworleys/Add-AFI_UNSPEC
Russ White [Thu, 16 May 2019 13:59:55 +0000 (09:59 -0400)]
Merge pull request #4339 from sworleys/Add-AFI_UNSPEC

lib,bgpd,pbrd: Add AFI_UNSPEC to AFI enum

5 years agoMerge pull request #4316 from LabNConsulting/working/master/tt-scale-vrfs
Donald Sharp [Thu, 16 May 2019 13:53:12 +0000 (09:53 -0400)]
Merge pull request #4316 from LabNConsulting/working/master/tt-scale-vrfs

bgp_l3vpn_to_bgp_vrf: test adding/removing 50K*2CEs VRF routes

5 years agolib: Fix gcc 9.1 and --enable-werror issues found 4352/head
Donald Sharp [Thu, 16 May 2019 13:20:12 +0000 (09:20 -0400)]
lib: Fix gcc 9.1 and --enable-werror issues found

Compiling FRR w/ gcc 9.1 and --enable-werror generates some
issues that need to be cleaned up.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agobgpd: Display best path selection reason 4349/head
Donald Sharp [Thu, 16 May 2019 01:11:02 +0000 (21:11 -0400)]
bgpd: Display best path selection reason

As part of detailed bgp route detail, include the
reason why a route was selected as best path.

robot# show bgp ipv4 uni 223.255.254.0
BGP routing table entry for 223.255.254.0/24
Paths: (1 available, best #1, table default)
  Advertised to non peer-group peers:
  annie(192.168.201.136)
  64539 15096 6939 7473 3758 55415
    192.168.201.136 from annie(192.168.201.136) (192.168.201.136)
      Origin IGP, valid, external, bestpath-from-AS 64539, best (First path received)
      Last update: Wed May 15 21:15:48 2019

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agobgpd: Store reason why bestpath was choosen
Donald Sharp [Thu, 16 May 2019 01:05:37 +0000 (21:05 -0400)]
bgpd: Store reason why bestpath was choosen

Store in bgp_node the reason why we choose a particular
best path over another.  At this point we do not do
anything other than just store this data when we make
the decision.  Future commits will display it.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agobgpd: Switch data structure passing to route_vty_out_detail
Donald Sharp [Thu, 16 May 2019 00:54:34 +0000 (20:54 -0400)]
bgpd: Switch data structure passing to route_vty_out_detail

Instead of just passing in the prefix, pass in the particular
bgp_node we are using.

This is setup for a future commit to use this data.
The long term goal is to collect data about why
a particular bgp_path_info was selected as best and
to display that reason.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agodoc/developer: topotest now compile should now enable sharpd, alos care most about... 4316/head
Lou Berger [Wed, 15 May 2019 21:31:31 +0000 (21:31 +0000)]
doc/developer: topotest now compile should now enable sharpd, alos care most about master

Signed-off-by: Lou Berger <lberger@labn.net>
5 years agobgp_l3vpn_to_bgp_vrf: test adding/removing 50K*2CEs VRF routes
Lou Berger [Sat, 11 May 2019 19:23:08 +0000 (19:23 +0000)]
bgp_l3vpn_to_bgp_vrf: test adding/removing 50K*2CEs VRF routes
      Only runs when configured with --enable-sharpd

Signed-off-by: Lou Berger <lberger@labn.net>
5 years agobgp_l3vpn_to_bgp_vrf: disable bgp debug logging
Lou Berger [Sun, 12 May 2019 20:41:29 +0000 (20:41 +0000)]
bgp_l3vpn_to_bgp_vrf: disable bgp debug logging

Signed-off-by: Lou Berger <lberger@labn.net>
5 years agotopotests/lib: support sharpd and other daemons in lutils
Lou Berger [Sat, 11 May 2019 18:52:29 +0000 (18:52 +0000)]
topotests/lib: support sharpd and other daemons in lutils
       needs both <daemon>.conf and <daemon> to be present

Signed-off-by: Lou Berger <lberger@labn.net>
5 years agoMerge pull request #4341 from donaldsharp/bgp_attr_should_actually_compile
Lou Berger [Wed, 15 May 2019 09:47:42 +0000 (05:47 -0400)]
Merge pull request #4341 from donaldsharp/bgp_attr_should_actually_compile

bgpd: Fix non-compilation of bgp_attr_extcom_tunnel_type

5 years agobgpd: Fix non-compilation of bgp_attr_extcom_tunnel_type 4341/head
Donald Sharp [Wed, 15 May 2019 02:42:05 +0000 (22:42 -0400)]
bgpd: Fix non-compilation of bgp_attr_extcom_tunnel_type

The bgp_attr_extcom_tunnel_type does not properly
compile with warnings turned on due to recent change.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agoMerge pull request #4296 from adharkar/frr-master-fib_prefix
Donald Sharp [Wed, 15 May 2019 01:46:38 +0000 (21:46 -0400)]
Merge pull request #4296 from adharkar/frr-master-fib_prefix

Zebra: Add "show ip/ipv6 fib <prefix> [json]" CLI

5 years agoMerge pull request #4332 from patrasar/2201630
Donald Sharp [Wed, 15 May 2019 01:20:21 +0000 (21:20 -0400)]
Merge pull request #4332 from patrasar/2201630

bgpd: display bgp neighbor advertised-routes json warning message

5 years agoMerge pull request #4314 from lkrishnamoor/extract_tunnel_type_extcom
Donald Sharp [Wed, 15 May 2019 00:18:29 +0000 (20:18 -0400)]
Merge pull request #4314 from lkrishnamoor/extract_tunnel_type_extcom

bgpd: Extract tunnel type from extended communities

5 years agolib: hashing functions should take const arguments 4340/head
Quentin Young [Tue, 14 May 2019 20:19:07 +0000 (20:19 +0000)]
lib: hashing functions should take const arguments

It doesn't make much sense for a hash function to modify its argument,
so const the hash input.

BGP does it in a couple places, those cast away the const. Not great but
not any worse than it was.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
5 years agozebra: Move multipath_num into zrouter 4327/head
Donald Sharp [Wed, 13 Feb 2019 19:58:29 +0000 (14:58 -0500)]
zebra: Move multipath_num into zrouter

The multipath_num variable is a property of zebra_router,
so move it there.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agobgpd: Extract tunnel type from extended communities 4314/head
Lakshman Krishnamoorthy [Sat, 11 May 2019 17:17:23 +0000 (10:17 -0700)]
bgpd: Extract tunnel type from extended communities

This diff contains 2 parts:
1. Extract the tunnel type info from bgp extended communities.
2. Make rfapi use this common tunnel type ap

Signed-off-by: Lakshman Krishnamoorthy <lkrishnamoor@vmware.com>
5 years agolib,bgpd,pbrd: Add AFI_UNSPEC to AFI enum 4339/head
Stephen Worley [Sun, 3 Mar 2019 01:58:38 +0000 (20:58 -0500)]
lib,bgpd,pbrd: Add AFI_UNSPEC to AFI enum

Add an upspecified option to the AFI enum and update
switch statements using it in bgpd and pbrd.

Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
5 years agobgpd: display bgp neighbor advertised-routes json warning message 4332/head
Sarita Patra [Tue, 14 May 2019 13:22:19 +0000 (06:22 -0700)]
bgpd: display bgp neighbor advertised-routes json warning message

Issue 1:
Getting an empty json without any warning message, while executing
the command "show ip bgp neighbor <x.x.x.x> advertised-routes
json" when the bgp instance is not present or getting created.

Issue 2:
Getting an empty json without any warning message, while executing
the command "show ip bgp vrf/view <name> advertised-routes json"
when the specified view/vrf is not present.

Fix:
Display warning message while executing the above cli commands, when
the bgp instance, specified vrf is not present.

Signed-off-by: Sarita Patra <saritap@vmware.com>
5 years agoMerge pull request #4335 from opensourcerouting/zebra-fpm-blackhole-info
Donald Sharp [Tue, 14 May 2019 17:36:31 +0000 (13:36 -0400)]
Merge pull request #4335 from opensourcerouting/zebra-fpm-blackhole-info

zebra: send nexthop blackhole information in FPM

5 years agozebra: send nexthop blackhole information in FPM 4335/head
Rafael Zalamena [Sat, 27 Apr 2019 14:19:43 +0000 (11:19 -0300)]
zebra: send nexthop blackhole information in FPM

Don't return prematurely so we can add blackhole nexthop information.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
5 years agobgpd: do not unregister bfd session when bgp session goes down 4144/head
Philippe Guibert [Tue, 14 May 2019 14:39:20 +0000 (16:39 +0200)]
bgpd: do not unregister bfd session when bgp session goes down

This commit fixes a previous commit:
"bfdd: remove operational bfd sessions from remote daemons"
where the handling of unregister call triggers the deletion of bfd
session.
Actually, the BFD session should not be deleted, while bgp session is
configured with BGP. this permits to receive BFD events up, and permit
quicker reconnecion.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
5 years agobfd-bgp-cbit-topo3: add bfd bgp cbit topotest test
Philippe Guibert [Tue, 16 Apr 2019 10:16:17 +0000 (12:16 +0200)]
bfd-bgp-cbit-topo3: add bfd bgp cbit topotest test

this test simulates the case where r1 keeps staled entries of r2,
because r2 is a 'non stop forwarding' device. For instance, r2 restarts
to be upgraded, then r1 keeps the entries, thus avoiding to flush
entries in the dataplane. Here, BFD is used, and the bgp
check-control-plane-failure command is used to inform BGP that if BFD
goes down, this may be because remote peer is restarting, and this may
be necessary to keep the entries of remote.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
5 years agodoc: add bfd check-control-plane-failure information
Philippe Guibert [Tue, 16 Apr 2019 10:15:25 +0000 (12:15 +0200)]
doc: add bfd check-control-plane-failure information

this command is used when user wants to use the cbit value.
more information in the documentation.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
5 years agobgpd: add vty command to enable bfd control-plane-check-failure
Philippe Guibert [Tue, 16 Apr 2019 09:50:47 +0000 (11:50 +0200)]
bgpd: add vty command to enable bfd control-plane-check-failure

new vty command is added:
neighbor XXX bfd check-control-plane-failure

this command will enforce the check of bgp controlplane, when bfd
detects changes in the dataplane.
- at configuration, the cbit will be set if that command is executed
- at flapping time, if the command is configured and remote cbit is set
  accordingly, then the bfd event will be ignored.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
5 years agobfdd, lib, bgpd: add bfd cbit usage
Philippe Guibert [Mon, 15 Apr 2019 15:20:25 +0000 (17:20 +0200)]
bfdd, lib, bgpd: add bfd cbit usage

bfd cbit is a value carried out in bfd messages, that permit to keep or
not, the independence between control plane and dataplane. In other
words, while most of the cases plan to flush entries, when bfd goes
down, there are some cases where that bfd event should be ignored. this
is the case with non stop forwarding mechanisms where entries may be
kept. this is the case for BGP, when graceful restart capability is
used. If BFD event down happens, and bgp is in graceful restart mode, it
is wished to ignore the BFD event while waiting for the remote router to
restart.
The changes take into account the following:
- add a config flag across zebra layer so that daemon can set or not the
  cbit capability.
- ability for daemons to read the remote bfd capability associated to a bfd
  notification.
- in bfdd, according to the value, the cbit value is set
- in bfdd, the received value is retrived and stored in the bfd session
  context.
- by default, the local cbit announced to remote is set to 1 while
  preservation of the local path is not set.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
5 years agoMerge pull request #4312 from lkrishnamoor/json_cli_bug_fix
David Lamparter [Tue, 14 May 2019 14:07:38 +0000 (16:07 +0200)]
Merge pull request #4312 from lkrishnamoor/json_cli_bug_fix

bgpd: evpn json cli bug fix

5 years agoMerge pull request #4307 from chiragshah6/evpn_dev1
David Lamparter [Tue, 14 May 2019 13:56:32 +0000 (15:56 +0200)]
Merge pull request #4307 from chiragshah6/evpn_dev1

zebra: unset sticky mac upon local deletion

5 years agoMerge pull request #4027 from pguibert6WIND/fix_interface_rtadv
David Lamparter [Tue, 14 May 2019 13:53:04 +0000 (15:53 +0200)]
Merge pull request #4027 from pguibert6WIND/fix_interface_rtadv

Fix interface rtadv

5 years agoMerge pull request #4258 from nikos-github/frr-nexthop
David Lamparter [Tue, 14 May 2019 13:31:19 +0000 (15:31 +0200)]
Merge pull request #4258 from nikos-github/frr-nexthop

bgpd: IPv6 session flapping with MP_REACH_NLRI and 0.0.0.0 in NEXT_HOP attribute

5 years agoMerge pull request #4304 from donaldsharp/route_map_switch
David Lamparter [Tue, 14 May 2019 13:29:58 +0000 (15:29 +0200)]
Merge pull request #4304 from donaldsharp/route_map_switch

Route map switch

5 years agoMerge pull request #4321 from sworleys/Ribsystem-Ribkernel
Mark Stapp [Tue, 14 May 2019 13:29:08 +0000 (09:29 -0400)]
Merge pull request #4321 from sworleys/Ribsystem-Ribkernel

zebra: Make RIB_SYSTEM|KERNEL_ROUTE a property of rib.h

5 years agoMerge pull request #4112 from pguibert6WIND/bfd_vrf
Rafael Zalamena [Tue, 14 May 2019 13:24:56 +0000 (10:24 -0300)]
Merge pull request #4112 from pguibert6WIND/bfd_vrf

support for BFD VRF

5 years agoMerge pull request #4329 from sworleys/RB-Const
Mark Stapp [Tue, 14 May 2019 12:58:17 +0000 (08:58 -0400)]
Merge pull request #4329 from sworleys/RB-Const

lib: Add const to openbsd-tree functions

5 years agoMerge pull request #4330 from donaldsharp/robo_covo
Mark Stapp [Tue, 14 May 2019 12:34:58 +0000 (08:34 -0400)]
Merge pull request #4330 from donaldsharp/robo_covo

zebra: ctx is dereferenced in every path

5 years agolib: Add const to openbsd-tree functions 4329/head
Stephen Worley [Tue, 14 May 2019 00:11:11 +0000 (17:11 -0700)]
lib: Add const to openbsd-tree functions

A few of the functions in openbsd's RB tree implementation
needed to have const in their parameters.

Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
5 years agozebra: Share route type checking macros 4321/head
Stephen Worley [Mon, 13 May 2019 21:32:33 +0000 (14:32 -0700)]
zebra: Share route type checking macros

Make the RIB_*_ROUTE() macro which is passed a route in rib.h just use
the R*_ROUTE() macros that directly check the type in rt.h.

Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
5 years agoMerge pull request #4320 from donaldsharp/re_monotime
Renato Westphal [Mon, 13 May 2019 21:28:07 +0000 (18:28 -0300)]
Merge pull request #4320 from donaldsharp/re_monotime

zebra: Switch to using monotime(NULL) for re->uptime

5 years agoMerge pull request #4324 from opensourcerouting/fix_grammar_sandbox
Mark Stapp [Mon, 13 May 2019 19:33:51 +0000 (15:33 -0400)]
Merge pull request #4324 from opensourcerouting/fix_grammar_sandbox

lib: fix crash in the CLI grammar sandbox

5 years agolib: fix crash in the CLI grammar sandbox 4324/head
Renato Westphal [Mon, 13 May 2019 18:18:57 +0000 (15:18 -0300)]
lib: fix crash in the CLI grammar sandbox

The CLI grammer sandbox needs to initialize the northbound subsystem
otherwise the running_config global variable won't be set, which
leads to crashes.

Fixes #4319.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
5 years agoMerge pull request #4318 from manuhalo/ospf6_rid_doc_fix
Renato Westphal [Mon, 13 May 2019 17:35:13 +0000 (14:35 -0300)]
Merge pull request #4318 from manuhalo/ospf6_rid_doc_fix

doc: fix ospf6d router-id cmd

5 years agoMerge pull request #4309 from nikos-github/frr-doc
Renato Westphal [Mon, 13 May 2019 17:32:18 +0000 (14:32 -0300)]
Merge pull request #4309 from nikos-github/frr-doc

doc: Provide info on what pkg to install if mpls-router module is missing

5 years agozebra: Make RIB_SYSTEM|KERNEL_ROUTE a property of rib.h
Donald Sharp [Tue, 29 Jan 2019 19:06:25 +0000 (14:06 -0500)]
zebra: Make RIB_SYSTEM|KERNEL_ROUTE a property of rib.h

These defines should be available from rib.h

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agodoc: fix ospf6d router-id cmd 4318/head
Emanuele Di Pascale [Mon, 13 May 2019 11:05:59 +0000 (13:05 +0200)]
doc: fix ospf6d router-id cmd

in ospf6d, the 'router-id' command must be prefixed with 'ospf6'.
Update the docs to reflect this.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
5 years agozebra: Make coverity SA happy with zebra_routemap.c 4337/head
Donald Sharp [Sat, 11 May 2019 17:18:29 +0000 (13:18 -0400)]
zebra: Make coverity SA happy with zebra_routemap.c

The CLI code ensures that the clippy code produces
valid input for the zebra_routemap.c functions, but
coverity SA does not understand this fact.  So add
some asserts to make the coverity SA happy.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agobgpd: json cli output for bgp evpn overlay 4313/head
Lakshman Krishnamoorthy [Sat, 11 May 2019 16:47:10 +0000 (09:47 -0700)]
bgpd: json cli output for bgp evpn overlay

This diff provides implementation for the cli:
"show bgp l2vpn evpn all overlay json"

Sample output after this change:
leaf-1# sh bgp l2vpn evpn all overlay json
{
  "bgpTableVersion":1,
  "bgpLocalRouterId":"10.100.0.1",
  "defaultLocPrf":100,
  "localAS":65000,
  "10.101.1.4:5":{
    "rd":"10.101.1.4:5",
    "[5]:[0]:[32]:[101.101.101.101]":{
      "prefix":"[5]:[0]:[32]:[101.101.101.101]",
      "prefixLen":288,
      "paths":[
        {
          "valid":true,
          "bestpath":true,
          "pathFrom":"external",
          "nexthop":{
            "ip":"10.100.0.2",
            "afi":"ipv4"
          },
          "overlay":{
            "esi":"00:00:00:00:00:00:00:00:00:00",
            "gw":"0.0.0.0",
            "rmac":"ea:47:79:75:22:1b"
          }
        },
        {
          "valid":true,
          "pathFrom":"external",
          "nexthop":{
            "ip":"10.100.0.2",
            "afi":"ipv4"
          },
          "overlay":{
            "esi":"00:00:00:00:00:00:00:00:00:00",
            "gw":"0.0.0.0",
            "rmac":"ea:47:79:75:22:1b"
          }
        }
      ]
    }
  },

...
...
}

Signed-off-by: Lakshman Krishnamoorthy <lkrishnamoor@vmware.com>
5 years agobgpd: evpn json cli bug fix 4312/head
Lakshman Krishnamoorthy [Sat, 11 May 2019 16:33:10 +0000 (09:33 -0700)]
bgpd: evpn json cli bug fix

Bug: If there are 2 different prefixes under an rd, the
output of "show bgp l2vpn evpn json" would print only one of the
prefixes.

RCA: prefix info was added to the json_object once per rd. Hence,
prefix and rd were added just once, as the loop iterated over all
the prefixes and paths.

This is related to my earlier commit that went in via PR 4283:
https://github.com/FRRouting/frr/pull/4283

Signed-off-by: Lakshman Krishnamoorthy <lkrishnamoor@vmware.com>
5 years agoMerge pull request #4311 from ton31337/fix/remote_trailing_tab
Donald Sharp [Sat, 11 May 2019 13:41:45 +0000 (09:41 -0400)]
Merge pull request #4311 from ton31337/fix/remote_trailing_tab

bgpd: Remove unnecessary trailing tab

5 years agozebra: ctx is dereferenced in every path 4330/head
Donald Sharp [Sat, 11 May 2019 12:39:54 +0000 (08:39 -0400)]
zebra: ctx is dereferenced in every path

No need to check for non-null ctx at this point in the
function as that it has already been derefed.

Signed-off-by: donald Sharp ,sahrpd@cumulusnetworks.com>
5 years agoMerge pull request #4310 from ton31337/fix/gitignore_skip_vscode
Donald Sharp [Sat, 11 May 2019 12:03:24 +0000 (08:03 -0400)]
Merge pull request #4310 from ton31337/fix/gitignore_skip_vscode

git: Ignore Visual Studio Code settings

5 years agobgpd: Remove unnecessary trailing tab 4311/head
Donatas Abraitis [Sat, 11 May 2019 07:14:06 +0000 (10:14 +0300)]
bgpd: Remove unnecessary trailing tab

This is very annoying and every time I have to fix this manually
after auto-formatting.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
5 years agogit: Ignore Visual Studio Code settings 4310/head
Donatas Abraitis [Sat, 11 May 2019 07:09:01 +0000 (10:09 +0300)]
git: Ignore Visual Studio Code settings

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
5 years agozebra: Switch to using monotime(NULL) for re->uptime 4320/head
Donald Sharp [Sat, 11 May 2019 05:44:42 +0000 (01:44 -0400)]
zebra: Switch to using monotime(NULL) for re->uptime

The re->uptime usage of time(NULL) leaves it open to
timing changes from outside influence.  Switching
to monotime allows us to ensure that we have a timestamp
that is always increasing.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agodoc: Provide info on what pkg to install if mpls-router module is missing 4309/head
nikos [Fri, 10 May 2019 22:21:14 +0000 (15:21 -0700)]
doc: Provide info on what pkg to install if mpls-router module is missing

The mpls-route module may be missing from Ubuntu 18.4. Provide info on
what pkg to install plus what directory py.test needs to be run from.

Signed-off-by: nikos <ntriantafillis@gmail.com>
5 years agobgpd, lib, ospf6d, ospfd, pimd, zebra: Rework routemap event callback 4304/head
Donald Sharp [Thu, 9 May 2019 03:19:55 +0000 (23:19 -0400)]
bgpd, lib, ospf6d, ospfd, pimd, zebra: Rework routemap event callback

The route_map_event_hook callback was passing the `route_map_event_t`
to each individual interested party.  No-one is ever using this data
so let's cut to the chase a bit and remove the pass through of data.
This is considered ok in that the routemap.c code came this way
originally and after 15+ years no-one is using this functionality.
Nor do I see any `easy` way to do anything useful with this data.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agoMerge pull request #4308 from adharkar/frr-master-bgp_rmap_debug
Donald Sharp [Fri, 10 May 2019 22:42:58 +0000 (18:42 -0400)]
Merge pull request #4308 from adharkar/frr-master-bgp_rmap_debug

bgpd: BGP debug for route-map apply

5 years agolib: in routemap.c if using a switch for an enum get rid of enum
Donald Sharp [Thu, 9 May 2019 03:00:52 +0000 (23:00 -0400)]
lib: in routemap.c if using a switch for an enum get rid of enum

From looking at a current PR: #4297, we see that routemap.c code
was not properly updating dependency information for some
route_map_event_t enum types.  This has lead to dependancy
information not being updated properly.  While at this time
I do not know whether or not we need to update the switch
for the missing types, I do know that if we add something in
the future we should make the person adding the code consider
this.  So let's remove all `default:` switch statement handlers
from routemap.c when switching on an enum.  Future time will
need to be spent to figure out what is needed to be done here.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
5 years agobgpd: BGP debug for route-map apply 4308/head
Ameya Dharkar [Fri, 10 May 2019 20:34:08 +0000 (13:34 -0700)]
bgpd: BGP debug for route-map apply

Display a debug message while sending a BGP route if the route is filtered by a
route-map.
Debug for incoming filtered route is already present.

Signed-off-by: Ameya Dharkar <adharkar@vmware.com>
5 years agobgpd: IPv6 session flapping with MP_REACH_NLRI and 0.0.0.0 in NEXT_HOP attribute 4258/head
nikos [Thu, 9 May 2019 07:02:16 +0000 (00:02 -0700)]
bgpd: IPv6 session flapping with MP_REACH_NLRI and 0.0.0.0 in NEXT_HOP attribute

This is causing interop issues with vendors. According to the RFC,
receiver should ignore the NEXT_HOP attribute with MP_REACH_NLRI
present.

Signed-off-by: nikos <ntriantafillis@gmail.com>
5 years agoMerge pull request #4305 from qlyoung/fix-lua-build
Mark Stapp [Fri, 10 May 2019 19:43:34 +0000 (15:43 -0400)]
Merge pull request #4305 from qlyoung/fix-lua-build

build: fix Lua build

5 years agoMerge pull request #4306 from mjstapp/doc_dplane_cli
Quentin Young [Fri, 10 May 2019 19:43:24 +0000 (15:43 -0400)]
Merge pull request #4306 from mjstapp/doc_dplane_cli

doc: add cli doc for zebra dplane cli

5 years agodoc: add doc for zebra dplane cli 4306/head
Mark Stapp [Wed, 8 May 2019 18:12:55 +0000 (14:12 -0400)]
doc: add doc for zebra dplane cli

Add some notes about the cli associated with the zebra
dataplane.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
5 years agoZebra: "show ip/ipv6 route/fib prefix" prefix not found cases 4296/head
Ameya Dharkar [Fri, 10 May 2019 19:05:47 +0000 (12:05 -0700)]
Zebra: "show ip/ipv6 route/fib prefix" prefix not found cases

1. If prefix not found, print "{}" for json
2. Print "Network not in table" for route option
3. Print "Network not in FIB" for fib option
4. Take care of "show ip route/fib vrf all prefix" command.

Signed-off-by: Ameya Dharkar <adharkar@vmware.com>
5 years agoMerge pull request #4245 from mjstapp/fix_vrf_lsps
Renato Westphal [Fri, 10 May 2019 18:23:58 +0000 (15:23 -0300)]
Merge pull request #4245 from mjstapp/fix_vrf_lsps

zebra: remove vrf LSPs when vrf is deleted

5 years agozebra: unset sticky mac upon local deletion 4307/head
Chirag Shah [Thu, 9 May 2019 19:25:44 +0000 (12:25 -0700)]
zebra: unset sticky mac upon local deletion

if the local sticky mac delete request is received,
if there are associated neighbor entries present, mac's
only local flag is removed and marked as auto mac.

this results in next local mac learning automatically assumes
mac is sticky.

There is a case when bridge learning off is configured, user
configures sticky mac via bridge fdb add.
This MAC learns associated neighbor entry.
Later user deletes stick mac via bridge fdb del, this triggers
frr to delete mac but if there are neighbors present, frr marks
MAC as AUTO but does not remove sticky flag.
User enables bridge learning on which triggers
The mac to learn as dynamic entry and in absence of this
fix, the mac is marked as sticky.

Ticket:CM-24968
Reviewed By:CCR-8683
Testing Done:

Validated broken condition with internally reproduction
with fix and without.

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
5 years agobuild: fix Lua build 4305/head
Quentin Young [Thu, 9 May 2019 20:08:40 +0000 (20:08 +0000)]
build: fix Lua build

Each of Lua's major versions are incompatible with each other. Ubuntu,
at least, does not provide a single liblua.so or /usr/include/lua; all
SOs and headers are versioned, e.g. liblua5.3.so and
/usr/include/lua5.3. There's already an m4 macro in the GNU collection
to handle this situation, so let's use that.

This allows building with Lua enabled to work on platforms other than
Fedora.

* Move lib/lua.[ch] -> lib/frrlua.[ch] to prevent path conflicts
* Fix configure.ac search for proper CPP and linker flags
* Add Lua include path to AM_CPPFLAGS
* Update vtysh/extract.pl.in

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
5 years agoMerge pull request #4275 from ton31337/fix/move_outside_bgp_input_modifier
Donald Sharp [Fri, 10 May 2019 15:34:40 +0000 (11:34 -0400)]
Merge pull request #4275 from ton31337/fix/move_outside_bgp_input_modifier

bgpd: Move inbound policy check outside bgp_input_modifier()

5 years agoMerge pull request #4272 from opensourcerouting/isis-prefix-sid-fix
Donald Sharp [Fri, 10 May 2019 15:06:56 +0000 (11:06 -0400)]
Merge pull request #4272 from opensourcerouting/isis-prefix-sid-fix

isisd: fix display of the Extended IPv4 reachability TLV

5 years agoMerge pull request #4214 from donaldsharp/s_g_channel_deletion
Jafar Al-Gharaibeh [Fri, 10 May 2019 14:49:24 +0000 (09:49 -0500)]
Merge pull request #4214 from donaldsharp/s_g_channel_deletion

pimd: Deletion of a ifchannel does not immediately mean remove from OIL

5 years agobgpd: Move inbound policy check outside bgp_input_modifier() 4275/head
Donatas Abraitis [Fri, 10 May 2019 14:01:39 +0000 (17:01 +0300)]
bgpd: Move inbound policy check outside bgp_input_modifier()

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
5 years agotopotests: Add test to check if eBGP required policy works
Donatas Abraitis [Fri, 10 May 2019 14:01:24 +0000 (17:01 +0300)]
topotests: Add test to check if eBGP required policy works

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
5 years agoMerge pull request #4297 from vishaldhingra/rmap
Donald Sharp [Fri, 10 May 2019 13:04:59 +0000 (09:04 -0400)]
Merge pull request #4297 from vishaldhingra/rmap

lib : Child rmap not sending an update to parent rmap,if there is an update in child rmap.

5 years agoMerge pull request #4295 from donaldsharp/topotest_if
Renato Westphal [Fri, 10 May 2019 11:42:07 +0000 (08:42 -0300)]
Merge pull request #4295 from donaldsharp/topotest_if

topotests: ifindex values are not guaranteed to be the same

5 years agoMerge pull request #4242 from donaldsharp/zebra_diet
Renato Westphal [Fri, 10 May 2019 11:29:59 +0000 (08:29 -0300)]
Merge pull request #4242 from donaldsharp/zebra_diet

Zebra diet

5 years agoisisd: Don't set subtlv structure if we didn't unpack any subtlvs 4272/head
Christian Franke [Fri, 10 May 2019 11:24:38 +0000 (13:24 +0200)]
isisd: Don't set subtlv structure if we didn't unpack any subtlvs

This ensures deserialized and serialized TLV representation is
consistent.

5 years agoMerge pull request #4288 from qlyoung/checkpatch-unsafe-function-lints
Renato Westphal [Fri, 10 May 2019 10:16:24 +0000 (07:16 -0300)]
Merge pull request #4288 from qlyoung/checkpatch-unsafe-function-lints

tools: add lints for unsafe functions

5 years agoMerge pull request #4287 from NaveenThanikachalam/dup_config_processing
Donald Sharp [Thu, 9 May 2019 22:36:50 +0000 (18:36 -0400)]
Merge pull request #4287 from NaveenThanikachalam/dup_config_processing

lib, bgpd: Disallow processing of duplicate config.

5 years agoMerge pull request #4284 from donaldsharp/conf_t
Jafar Al-Gharaibeh [Thu, 9 May 2019 22:01:51 +0000 (17:01 -0500)]
Merge pull request #4284 from donaldsharp/conf_t

Conf t

5 years agoMerge pull request #4292 from qlyoung/doc-bgp-maximum-prefix
Jafar Al-Gharaibeh [Thu, 9 May 2019 22:00:16 +0000 (17:00 -0500)]
Merge pull request #4292 from qlyoung/doc-bgp-maximum-prefix

doc: add doc for bgp maximum-prefix knob

5 years agoMerge pull request #4298 from qlyoung/gitignore-ccls-cache
Jafar Al-Gharaibeh [Thu, 9 May 2019 21:58:46 +0000 (16:58 -0500)]
Merge pull request #4298 from qlyoung/gitignore-ccls-cache

.gitignore: ignore .ccls-cache

5 years agoZebra: Add "show ip/ipv6 fib <prefix> [json]" CLI - review comments 1
Ameya Dharkar [Thu, 9 May 2019 20:36:59 +0000 (13:36 -0700)]
Zebra: Add "show ip/ipv6 fib <prefix> [json]" CLI - review comments 1

According to the review comments, added "Network not in FIB" message when we do
not have a FIB route present for given prefix.

Signed-off-by: Ameya Dharkar <adharkar@vmware.com>
5 years ago.gitignore: ignore .ccls-cache 4298/head
Quentin Young [Thu, 9 May 2019 17:25:18 +0000 (17:25 +0000)]
.gitignore: ignore .ccls-cache

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
5 years agoMerge pull request #4251 from rgirada/fix_pim_upstream
Donald Sharp [Thu, 9 May 2019 16:17:49 +0000 (12:17 -0400)]
Merge pull request #4251 from rgirada/fix_pim_upstream

Pimd : S,G Mroute entries are not expiring  even after KAT expiry, remain as stale entries.

5 years agozebra: Remove unused zebra_router_score_proto 4269/head
Donald Sharp [Thu, 9 May 2019 11:13:01 +0000 (07:13 -0400)]
zebra: Remove unused zebra_router_score_proto

With the previous commit, the zebra_router_score_proto function
became unnecessary, so let us remove it.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>