]>
git.puffer.fish Git - mirror/frr.git/log
Igor Ryzhov [Thu, 29 Jul 2021 17:21:00 +0000 (20:21 +0300)]
zebra: remove checks for src address existence when using "set src"
1. This check is absolutely useless. Nothing keeps user from deleting
the address right after this check.
2. This check prevents zebra from correctly reading the user config with
"set src" because of a race with interface startup (see #4249).
3. NO OPERATIONAL DATA USAGE ON VALIDATION STAGE.
Fixes #7319.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Thu, 29 Jul 2021 15:28:06 +0000 (18:28 +0300)]
Merge pull request #9222 from ton31337/fix/bgp_dampening_clear
bgpd: Drop double-pointer for bgp_damp_info_free()
Rafael Zalamena [Thu, 29 Jul 2021 10:10:29 +0000 (07:10 -0300)]
Merge pull request #9212 from idryzhov/pim-crash
pimd: fix missing list remove when deleting mesh group
Donatas Abraitis [Thu, 29 Jul 2021 08:47:56 +0000 (11:47 +0300)]
Merge pull request #9215 from idryzhov/bgp-damp-crash
bgpd: fix double free in dampening code
Donatas Abraitis [Thu, 29 Jul 2021 08:11:15 +0000 (11:11 +0300)]
bgpd: Drop double-pointer for bgp_damp_info_free()
This causes a crash using `clear ip bgp dampening <prefix>`.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donatas Abraitis [Thu, 29 Jul 2021 08:09:26 +0000 (11:09 +0300)]
Merge pull request #9207 from donaldsharp/snmp_pytest_mark
Snmp pytest mark
Donatas Abraitis [Thu, 29 Jul 2021 07:30:32 +0000 (10:30 +0300)]
Merge pull request #9209 from donaldsharp/bgp_ipv6_unicast
bgpd: Mark the node as the correct type for bgp ipv6 unicast
Igor Ryzhov [Wed, 28 Jul 2021 21:14:31 +0000 (00:14 +0300)]
bgpd: fix double free in dampening code
bgp_damp_info_unclaim already calls bgp_reuselist_del. We must not call
it again here.
Fixes #9046.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 28 Jul 2021 19:25:31 +0000 (22:25 +0300)]
pimd: fix missing list remove when deleting mesh group
This leads to a crash when you use "show run" after deleting the group.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Donald Sharp [Wed, 28 Jul 2021 15:22:26 +0000 (11:22 -0400)]
Merge pull request #9104 from idryzhov/topotest-multiline
tests: fix invalid multiline format
Donald Sharp [Wed, 28 Jul 2021 14:56:48 +0000 (10:56 -0400)]
bgpd: Mark the node as the correct type for bgp ipv6 unicast
The bgp ipv6 unicast node should be called `bgp ipv6 unicast`
to make it consistent with other nodes where we list the afi/safi
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Wed, 28 Jul 2021 14:05:58 +0000 (10:05 -0400)]
Merge pull request #9189 from idryzhov/ospf-dont-exit
ospfd: don't exit when socket is not created
Donald Sharp [Wed, 28 Jul 2021 14:04:44 +0000 (10:04 -0400)]
Merge pull request #9194 from idryzhov/pim-bool-false
pimd: fix incorrect bool returns
Donald Sharp [Wed, 28 Jul 2021 13:44:34 +0000 (09:44 -0400)]
tests: add pytest.mark.isisd to those tests missing it
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Wed, 28 Jul 2021 13:41:45 +0000 (09:41 -0400)]
tests: add pytest.mark.nhrpd for those missing it
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Wed, 28 Jul 2021 13:40:58 +0000 (09:40 -0400)]
tests: Add pytest.mark.sharpd for those missing it
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Wed, 28 Jul 2021 13:39:47 +0000 (09:39 -0400)]
tests: add pytest.mark.staticd for those tests missing it
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Wed, 28 Jul 2021 13:38:06 +0000 (09:38 -0400)]
tests: Add pytest.mark.pimd for those missing it
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Wed, 28 Jul 2021 13:37:28 +0000 (09:37 -0400)]
tests: Add pytest.mark.bgpd for tests missing this mark
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Wed, 28 Jul 2021 13:36:30 +0000 (09:36 -0400)]
tests: Add pytest.mark.ospfd on tests missing this mark
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Wed, 28 Jul 2021 12:31:30 +0000 (08:31 -0400)]
tests: Add pytestmark to get all snmp tests marked
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Renato Westphal [Wed, 28 Jul 2021 01:40:51 +0000 (22:40 -0300)]
Merge pull request #9202 from LabNConsulting/chopps/fix-ospf-quotes
ospfd: remove gratuitous non-ascii quotation marks
Jafar Al-Gharaibeh [Tue, 27 Jul 2021 20:09:29 +0000 (15:09 -0500)]
Merge pull request #9007 from donaldsharp/pbr_stuff
add ability to match on proto to pbr
Christian Hopps [Mon, 26 Jul 2021 06:48:50 +0000 (06:48 +0000)]
ospfd: remove gratuitous non-ascii quotation marks
Signed-off-by: Christian Hopps <chopps@labn.net>
Igor Ryzhov [Tue, 27 Jul 2021 14:24:32 +0000 (17:24 +0300)]
Merge pull request #9187 from mobash-rasool/pim-upst-2
pimd: Validate the fields before accessing it
Igor Ryzhov [Tue, 27 Jul 2021 13:10:35 +0000 (16:10 +0300)]
ospfd: don't exit when socket is not created
Let's be less radical. There's no reason to stop the whole daemon when
there's a socket creation error in a single VRF. The user can always
restart this single VRF to retry to create a socket.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Tue, 27 Jul 2021 13:06:40 +0000 (16:06 +0300)]
Merge pull request #8944 from opensourcerouting/ospf6-mtu-revert
ospf6d: revert PR #8622
Russ White [Tue, 27 Jul 2021 12:49:51 +0000 (08:49 -0400)]
Merge pull request #8897 from gpnaveen/ospfv3_base_cases
tests: adding ospfv3 basic cases
David Lamparter [Tue, 27 Jul 2021 12:28:13 +0000 (14:28 +0200)]
Merge pull request #9107 from donaldsharp/label_destruction
zebra: On client shutdown cleanup any vrf labels associated with it
Donatas Abraitis [Tue, 27 Jul 2021 12:26:52 +0000 (15:26 +0300)]
Merge pull request #9190 from donaldsharp/join_prune_smaller
Join prune smaller
David Lamparter [Tue, 27 Jul 2021 12:14:23 +0000 (14:14 +0200)]
Merge pull request #9088 from donaldsharp/zebra_redistribute_wrong_tables
zebra: Do not allow redistribution for non-vrf tables
Donald Sharp [Tue, 27 Jul 2021 12:06:54 +0000 (08:06 -0400)]
Merge pull request #9090 from opensourcerouting/ospfv3-fixes-
20210720
ospf6d: small batch of random fixes/improvements
Igor Ryzhov [Tue, 27 Jul 2021 09:15:32 +0000 (12:15 +0300)]
Merge pull request #9162 from ton31337/fix/use_strcmp_for_match_alias
bgpd: Use strcmp comparing BGP alias with an actual entered alias
Mobashshera Rasool [Mon, 26 Jul 2021 13:35:31 +0000 (06:35 -0700)]
pimd: Validate the fields before accessing it
This commit is to correct the order in which the fields are
accessed while verifying it. First the fields should be
verified, and if it is valid then access it.
Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
Igor Ryzhov [Tue, 27 Jul 2021 08:41:36 +0000 (11:41 +0300)]
pimd: fix incorrect bool returns
-1 is true when casted to bool.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Donald Sharp [Mon, 26 Jul 2021 15:57:25 +0000 (11:57 -0400)]
tests: Reduce pim join/prune interval to 5 seconds
Tests should have low enough overhead that sending
the join/prune every 5 seconds should be sufficient
also it should allow us to converge faster in case of
dropped packets.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 26 Jul 2021 14:04:39 +0000 (10:04 -0400)]
doc: Modify documentation for timer change
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 26 Jul 2021 14:02:21 +0000 (10:02 -0400)]
pimd: Allow join prune intervals to be as small as 5 seconds
Allow the join-prune interval to be as small as 5 seconds instead
of limiting the value to 60.
This can and will come at a price of being able to converge less
mroutes.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 26 Jul 2021 11:22:03 +0000 (07:22 -0400)]
Merge pull request #9166 from idryzhov/vtysh-enable
vtysh: another take at "enable" in vtysh user mode
Donatas Abraitis [Mon, 26 Jul 2021 09:20:54 +0000 (12:20 +0300)]
Merge pull request #8637 from opensourcerouting/pim-vrf-acl-fixes
Pim vrf acl fixes
Igor Ryzhov [Fri, 23 Jul 2021 15:38:20 +0000 (18:38 +0300)]
vtysh: don't install "enable" command in user mode
Recent change in
d1b287e only fixed the problem for 3-letter words.
We were still displaying error for longer words starting with "ena":
```
nfware> enac
% Command not allowed: enable
nfware> enad
% Command not allowed: enable
nfware> enaena
% Command not allowed: enable
```
If we don't allow "enable" command in user mode, why add it at all?
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Donatas Abraitis [Fri, 23 Jul 2021 12:14:54 +0000 (15:14 +0300)]
bgpd: Use strcmp comparing BGP alias with an actual entered alias
It might be a case when a partial match is hit and this needs to be fixed.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donatas Abraitis [Fri, 23 Jul 2021 05:39:56 +0000 (08:39 +0300)]
Merge pull request #9120 from taspelund/remove_rmac_seq
zebra: Remove MM seq from evpn rmac json output
Donatas Abraitis [Fri, 23 Jul 2021 05:33:02 +0000 (08:33 +0300)]
Merge pull request #9116 from donaldsharp/vtysh_enable
vtysh: Handle `en` better when in -u for vtysh
Donatas Abraitis [Fri, 23 Jul 2021 05:27:37 +0000 (08:27 +0300)]
Merge pull request #9126 from donaldsharp/rpki_spacing
bgpd: Fix rpki spacing to be 1 for indentation
Donald Sharp [Thu, 22 Jul 2021 20:53:15 +0000 (16:53 -0400)]
bgpd: Fix rpki spacing to be 1 for indentation
The rpki sub-node was outputting 2 spaces instead
of 1 space. Let's fix that to be consistent with
the rest of our code.
Fixes: #2738
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Trey Aspelund [Thu, 1 Apr 2021 04:43:55 +0000 (04:43 +0000)]
zebra: Remove MM seq from evpn rmac json output
Currently 'show evpn rmac vni .. mac .. json' includes fields for
localSequence and remoteSequence, which are misleading since they
aren't applicable to a macs in the IP-VRF mac table (RMAC).
This removes the localSequence + remoteSequence fields from the output.
Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
Donald Sharp [Thu, 22 Jul 2021 15:59:25 +0000 (11:59 -0400)]
vtysh: Handle `en` better when in -u for vtysh
vtysh was unable to distinguish between end and ena. The
code can now do so:
sharpd@eva ~/frr5 (master)> sudo vtysh/vtysh -u sharpd
Hello, this is FRRouting (version 8.1-dev).
Copyright 1996-2005 Kunihiro Ishiguro, et al.
eva> e
% Ambiguous command: e
eva> en
% Command not allowed: enable
eva> ena
% Command not allowed: enable
eva> enab
% Command not allowed: enable
eva> enabl
% Command not allowed: enable
eva> enable
% Command not allowed: enable
eva> enb
% Unknown command: enb
eva> enc
% Unknown command: enc
eva> end
% Unknown command: end
eva> ene
% Unknown command: ene
eva> quit
Fixes: #2296
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Thu, 22 Jul 2021 12:35:06 +0000 (08:35 -0400)]
Merge pull request #8983 from mobash-rasool/pim-upstreaming-activity
pimd: Minor fixes for BSM Show CLI and Hold Timer CLI
Donald Sharp [Thu, 22 Jul 2021 12:33:24 +0000 (08:33 -0400)]
Merge pull request #8986 from mobash-rasool/pim-upst-2
pimd: To print querierIP address on the querier and nonQuerier IGMP e…
Donald Sharp [Thu, 22 Jul 2021 12:30:15 +0000 (08:30 -0400)]
Merge pull request #9082 from ton31337/feature/bgp_alias_route-map_match
bgpd: `match alias` for route-map
Donald Sharp [Thu, 22 Jul 2021 11:04:20 +0000 (07:04 -0400)]
Merge pull request #9091 from gord1306/remove_lst_vlan
zebra: trigger remove all access vlans info for access port
Donald Sharp [Wed, 21 Jul 2021 23:26:15 +0000 (19:26 -0400)]
Merge pull request #9102 from opensourcerouting/autoconf-fix-gcov
build: fix LDFLAGS confusion & gcov
Donald Sharp [Wed, 21 Jul 2021 23:20:07 +0000 (19:20 -0400)]
Merge pull request #9105 from idryzhov/vtysh-ls-pw
vtysh, lib, zebra: fix exit from link-params and pseudowire nodes
Donald Sharp [Wed, 21 Jul 2021 17:55:52 +0000 (13:55 -0400)]
zebra: On client shutdown cleanup any vrf labels associated with it
When a vrf label is created by a client and the client disconnects
we should clean up any vrf labels associated with that client.
eva# show mpls table
Inbound Label Type Nexthop Outbound Label
-----------------------------------------------
1000 SHARP RED -
eva# exit
sharpd@eva ~/f/zebra (label_destruction)> ps -ef | grep frr
root
4017793 1 0 13:57 ? 00:00:00 /usr/lib/frr/watchfrr -d -F datacenter --log file:/var/log/frr/watchfrr.log --log-level debug zebra bgpd ospfd isisd pimd eigrpd sharpd staticd
frr
4017824 1 0 13:57 ? 00:00:00 /usr/lib/frr/zebra -d -F datacenter --log file:/tmp/zebra.log -r --graceful_restart 60 -A 127.0.0.1 -s
90000000
frr
4017829 1 0 13:57 ? 00:00:00 /usr/lib/frr/bgpd -d -F datacenter -M rpki -A 127.0.0.1
frr
4017836 1 0 13:57 ? 00:00:00 /usr/lib/frr/ospfd -d -F datacenter -A 127.0.0.1
frr
4017839 1 0 13:57 ? 00:00:00 /usr/lib/frr/isisd -d -F datacenter -A 127.0.0.1
frr
4017842 1 0 13:57 ? 00:00:00 /usr/lib/frr/pimd -d -F datacenter -A 127.0.0.1
frr
4017865 1 0 13:57 ? 00:00:00 /usr/lib/frr/eigrpd -d -F datacenter -A 127.0.0.1
frr
4017869 1 0 13:57 ? 00:00:00 /usr/lib/frr/sharpd -d -F datacenter -A 127.0.0.1
frr
4017888 1 0 13:57 ? 00:00:00 /usr/lib/frr/staticd -d -F datacenter -A 127.0.0.1
sharpd
4018624 3938423 0 14:02 pts/10 00:00:00 grep --color=auto frr
sharpd@eva ~/f/zebra (label_destruction)> sudo kill -9
4017869
sharpd@eva ~/f/zebra (label_destruction)> sudo vtysh -c "show mpls table"
sharpd@eva ~/f/zebra (label_destruction)>
Fixes: #1787
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
David Lamparter [Wed, 21 Jul 2021 09:23:23 +0000 (11:23 +0200)]
build: use `--coverage` for gcov
libtool does not understand `-coverage` with a single dash. Official
gcc docs also say `--coverage` rather than `-coverage`. (clang lists
both.)
Also, for correct linking, libtool needs `--coverage` in LDFLAGS as
opposed to `-lgcov` (with the latter you get library ordering/deps
issues)
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Wed, 21 Jul 2021 09:04:23 +0000 (11:04 +0200)]
build: fix `AM_LDFLAGS` usage (and gcov)
like the other automake variables, setting `xyz_LDFLAGS` causes
`AM_LDFLAGS` to be ignored for `xyz`. For some reason I had in my mind
that automake doesn't do this for LDFLAGS, but... it does. (Which is
consistent with `_CFLAGS` and co.)
So, all the libraries and modules have been ignoring `AM_LDFLAGS` (which
includes `SAN_FLAGS` too). Set up new `LIB_LDFLAGS` and
`MODULE_LDFLAGS` to handle all of this correctly (and move these bits to
a central location.)
Fixes: #9034
Fixes: 0c4285d77eb ("build: properly split CFLAGS from AC_CFLAGS")
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Igor Ryzhov [Wed, 21 Jul 2021 14:23:45 +0000 (17:23 +0300)]
lib, zebra: fix exit from link-params node
When exiting from link-params node, we must not decrement xpath_index
because it is not incremented when entering the node.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 21 Jul 2021 14:22:14 +0000 (17:22 +0300)]
vtysh: fix exit from zebra-only nodes
When exiting from link-params and pseudowire nodes, we were sending exit
command to all VTYSH_INTERFACE daemons. This led to a desynchronized
state in vtysh and daemons other then zebra. We must send exit command
only to zebra.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 21 Jul 2021 12:37:15 +0000 (15:37 +0300)]
tests: fix invalid multiline format
`format` can't be used per-line when we have a multiline string.
This was recently broken in
3881d05 .
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Donald Sharp [Wed, 21 Jul 2021 11:48:28 +0000 (07:48 -0400)]
Merge pull request #9094 from mjstapp/fix_pathd_pcep_localtime
pathd: don't use localtime
Donatas Abraitis [Wed, 21 Jul 2021 06:28:21 +0000 (09:28 +0300)]
Merge pull request #8956 from pguibert6WIND/bgp_loop_through_itself
bgpd: prevent routes loop through itself
Donatas Abraitis [Sun, 18 Jul 2021 12:14:01 +0000 (15:14 +0300)]
doc: Add `match alias` command for BGP route-maps
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donatas Abraitis [Sun, 18 Jul 2021 11:36:53 +0000 (14:36 +0300)]
tests: Check if `match alias` works for route-maps
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donatas Abraitis [Sun, 18 Jul 2021 09:14:24 +0000 (12:14 +0300)]
bgpd: Add route-map `match alias` command
Will be handy to filter BGP prefixes by using BGP community alias
instead of numerical community values.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Renato Westphal [Wed, 21 Jul 2021 04:06:42 +0000 (01:06 -0300)]
Merge pull request #9098 from donaldsharp/if_secondary_bsd
zebra: Mark some bsd interface prefixes as SECONDARY
Russ White [Tue, 20 Jul 2021 19:25:27 +0000 (15:25 -0400)]
Merge pull request #9095 from opensourcerouting/ospfv3-stub-def-always
ospf6d: always generate default route for stubs
Russ White [Tue, 20 Jul 2021 19:25:07 +0000 (15:25 -0400)]
Merge pull request #9093 from rgirada/nbr_crash
ospfd: ospfd crash while giving 'clear ip ospf neighbor'
Donald Sharp [Tue, 20 Jul 2021 16:29:53 +0000 (12:29 -0400)]
Merge pull request #9074 from mobash-rasool/pim-fixes
pimd: IGMPv3 conformance fixes for invalid TTL and invalid TOS
Donald Sharp [Tue, 20 Jul 2021 14:12:04 +0000 (10:12 -0400)]
zebra: Mark some bsd interface prefixes as SECONDARY
Notice when a ip address on a bsd interface is considered
an alias, let's mark the connected prefix we generate as
a SECONDARY.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Mark Stapp [Tue, 20 Jul 2021 12:52:33 +0000 (08:52 -0400)]
pathd: don't use localtime
Use localtime_r() instead of localtime() in pathd.
Signed-off-by: Mark Stapp <mjs.ietf@gmail.com>
Rafael Zalamena [Tue, 20 Jul 2021 12:43:03 +0000 (09:43 -0300)]
ospf6d: always generate default route for stubs
In RFC 2328 OSPF Version 2, Section 12.4.3.1 "Originating summary-LSAs
into stub areas" mentions that the stub areas should not import external
routes and instead should generate a 'default summary-LSA' set to
default destination.
> In a stub area, instead of importing external routes
> each area border router originates a "default summary-
> LSA" into the area. The Link State ID for the default
> summary-LSA is set to DefaultDestination, and the metric
> set to the (per-area) configurable parameter
> StubDefaultCost. Note that StubDefaultCost need not be
> configured identically in all of the stub area's area
> border routers.
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
rgirada [Tue, 20 Jul 2021 11:39:05 +0000 (04:39 -0700)]
ospfd: ospfd crash while giving 'clear ip ospf neighbor'
Description:
Ospf process crashes upon giving 'clear ip ospf neighbor' with
self routerId. It is asserting if it is a self neighbor in ospf
neighbour kill event processing.
Added a check to validate the provided router-id is self
router-id.
Signed-off-by: Rajesh Girada <rgirada@vmware.com>
gord_chen [Tue, 20 Jul 2021 09:28:37 +0000 (09:28 +0000)]
zebra: trigger remove all access vlans for access port
When port was removed from last access vlan, the linux kernel
won't send any vlan info in the netlink message, it might affact
the evpn mh not withdraw EAD-EVI routes.
Signed-off-by: Gord Chen <gord_chen@edge-core.com>
nguggarigoud [Tue, 1 Jun 2021 03:22:59 +0000 (20:22 -0700)]
tests: Adding ospfv3 basic functionality test cases
1. Adding APIs to configure and verify ospfv3.
2. Adding ospfv3 base functionality testcase.
Signed-off-by: nguggarigoud <nguggarigoud@vmware.com>
David Lamparter [Mon, 28 Jun 2021 14:04:17 +0000 (16:04 +0200)]
ospf6d: use OSPF6_INTERFACE_LOOPBACK state
The OSPF6_INTERFACE_LOOPBACK interface state wasn't entered anywhere,
even if the interface was OSPF6_IFTYPE_LOOPBACK. Fix.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Mon, 28 Jun 2021 14:29:56 +0000 (16:29 +0200)]
ospf6d: don't create Adv-ID:0.0.0.0 LSAs at start
When ospf6d comes up, it gets interface and address state before it
decides on its router ID. This results in a bunch of LSAs with
advertising router ID 0.0.0.0 in the LSDB. Not quite right.
There's a whole bunch of paths leading to this, so just drop the LSA in
ospf6_lsa_originate. The router-ID change causes everything to be
readvertised anyway (... but the delete doesn't catch the 0.0.0.0 stuff
because the router-ID is now different.)
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Mon, 28 Jun 2021 14:12:49 +0000 (16:12 +0200)]
ospf6d: actually print prefix options
Well at least I had a good laugh at the "xxx".
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Mon, 28 Jun 2021 13:18:29 +0000 (15:18 +0200)]
ospf6d: move prefix_options from _path to _route
Prefix options are per-prefix, not per-path. As evident by the fact
that the field is never used on ECMP paths. Move it where it belongs.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Donald Sharp [Mon, 19 Jul 2021 23:52:43 +0000 (19:52 -0400)]
zebra: Do not allow redistribution for non-vrf tables
Current code was allowing redistribution of kernel routes from
the non-default non vrf tables once FRR was already up and running.
In the case where we add `redistribute kernel` in an upper level
protocol we never consider the non-default vrf or non-vrf tables
so it is never accepted.
In the case where a kernel route is added after `redistribute kernel`
is already in place we were never looking at the fact that the
route was in a non-default non-vrf table. This code fixes
that issue.
Fixes: #9073
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Stephen Worley [Mon, 19 Jul 2021 20:21:20 +0000 (16:21 -0400)]
Merge pull request #8554 from mjstapp/evpn_workqueue
lib,zebra: move some evpn dplane installation to the zebra workqueue
Mobashshera Rasool [Mon, 19 Jul 2021 19:31:56 +0000 (19:31 +0000)]
pimd: Add TOS check for IGMP conformance
IGMPv3 packets with invalid TOS should be dropped.
Test Case ID: 4.10
TEST_DESCRIPTION
Every IGMP message described in this document is sent with
IP Precedence of Internetwork Control (e.g., Type of Service
0xc0)
(Tests that IGMPv3 Membership Query Message conforms to
above statement)
TEST_REFERENCE
NEGATIVE: RFC 3376, IGMP Version 3, s4 p7 Message Formats
Issue: #9071
Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
Mobashshera Rasool [Mon, 19 Jul 2021 19:29:09 +0000 (19:29 +0000)]
pimd: Add TTL check for IGMP conformance
IGMPv3 packets with invalid TTL should be dropped.
Test Case ID: 4.10
TEST_DESCRIPTION
Every IGMP message described in this document is sent with an IP
Time-to-Live of 1 (Tests that IGMPv3 Membership Report Message
conforms to above statement)
TEST_REFERENCE
NEGATIVE: RFC 3376, IGMP Version 3, s4 p7 Message Formats
Issue: #9070
Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
Mobashshera Rasool [Fri, 16 Jul 2021 11:55:56 +0000 (11:55 +0000)]
pimd: Abstracting header verification for igmp
Moving the header verification checks inside a function.
Signed-off-by: Mobashshera Rasool <mrassol@vmware.com>
Mark Stapp [Thu, 22 Apr 2021 18:59:29 +0000 (14:59 -0400)]
zebra: replace ipaddr2str in dplane module
Replace a couple of ipaddr2str calls with pIA in the dplane
module.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Mark Stapp [Thu, 22 Apr 2021 18:32:57 +0000 (14:32 -0400)]
tests: skip tests after errors in bgp-evpn-vxlan
In bgp-evpn-vxlan, skip test cases if there's been a failure;
a couple of cases were missing this.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Mark Stapp [Tue, 20 Apr 2021 13:14:46 +0000 (09:14 -0400)]
zebra: process EVPN remote VTEP updates from the workqueue
Move remote VTEP updates from immediate, inline processing
in their ZAPI message handlers to the main workqueue.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Mark Stapp [Mon, 19 Apr 2021 19:25:27 +0000 (15:25 -0400)]
zebra: use workqueue for vxlan remote macip updates
Enqueue incoming vxlan remote macip updates on the main
workqueue, instead of performing the updates immediately,
in-line.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Mark Stapp [Mon, 19 Apr 2021 18:26:57 +0000 (14:26 -0400)]
zebra: use more const
Use const in many more evpn apis, especially for macaddr,
ipaddr arguments.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Mark Stapp [Mon, 19 Apr 2021 15:12:51 +0000 (11:12 -0400)]
zebra: add workqueue support for EVPN updates
Add workqueue subqueue for EVPN/VxLAN updates; migrate the
evpn route and remote ES processing from their ZAPI handlers
to the workqueue.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Mark Stapp [Fri, 16 Apr 2021 19:28:14 +0000 (15:28 -0400)]
lib: remove quagga from route_types.txt
Remove the q-word.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Mark Stapp [Fri, 16 Apr 2021 16:17:11 +0000 (12:17 -0400)]
zebra: give some evpn apis better names
Use more useful names for a few evpn apis.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Donald Sharp [Sun, 18 Jul 2021 19:33:19 +0000 (15:33 -0400)]
Merge pull request #9080 from ton31337/fix/reason_bgpd
bgpd: Drop unnecessary chars for filtered reason
Donatas Abraitis [Sun, 18 Jul 2021 17:30:41 +0000 (20:30 +0300)]
Merge pull request #9075 from donaldsharp/alias_auto_completion
bgpd: Allow for auto-completion of community alias's created
Donatas Abraitis [Sun, 18 Jul 2021 15:03:25 +0000 (18:03 +0300)]
bgpd: Drop unnecessary chars for filtered reason
Seems missed grammarly review for the reason "as-path contains our own AS;"
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donatas Abraitis [Sun, 18 Jul 2021 08:46:35 +0000 (11:46 +0300)]
Merge pull request #9061 from donaldsharp/bgp_max_path_doc
doc: Document the maximum-paths command for bgp
Donald Sharp [Fri, 16 Jul 2021 18:41:32 +0000 (14:41 -0400)]
Merge pull request #9062 from ton31337/fix/bgp_dampening_json_crash
bgpd: BGP dampening JSON fixes
Donald Sharp [Fri, 16 Jul 2021 13:52:53 +0000 (09:52 -0400)]
bgpd: Allow for auto-completion of community alias's created
Add a bit of code to allow for auto-completion of the community
alias command when attempting to use it for show commands.
example:
eva(config)# bgp community alias 11:22 FOO
eva(config)# end
eva# show bgp ipv4 uni alias
ALIAS_NAME BGP community alias
FOO
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Mark Stapp [Fri, 16 Jul 2021 13:33:52 +0000 (09:33 -0400)]
Merge pull request #9063 from sworleys/Fix-IFP-NHG
zebra: fix ifp pointer for groups/recursives
Rafael Zalamena [Fri, 16 Jul 2021 13:24:27 +0000 (10:24 -0300)]
Merge pull request #9001 from donaldsharp/pim_mrib_lookup_do_all
pimd: When passing lookup information back pass the fully resolved