Commit Graph

25617 Commits

Author SHA1 Message Date
Donald Sharp
c59463fb1e
Merge pull request #9413 from pguibert6WIND/rtmgetneigh_too
zebra: RTM_GETNEIGH messages may be used by nhrp
2021-08-17 07:57:39 -04:00
Donatas Abraitis
bd67b727e9 bgpd: Return rmap match if large-community alias found
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-08-17 12:19:43 +03:00
Mobashshera Rasool
d2e8400570 ospfd: Summarised External LSA is not flushed in one scenario
Fix CI Failure test_ospf_type5_summary_tc45_p0

Problem Statement:
==================
Summarised LSA is not flushed in OSPFv2 in below scenario:
1. Configure summary-address in ospfv2
2. redistribute static and connected.
3. Check the LSAs are received on neighbor.
4. Now remove all OSPFv2 configs, so neighbor will still have the summarised LSA.
5. Configure router ospf with redistribute static and connected.
6. Check the DB, summarised LSA is present although the configuration is not present.
7. Now configure the summary-address and remove the configuration after sometime.
8. The summarised LSA will be still present.

RCA:
==================
When self originated LSA is received from the neighbor and that
LSA is summarised one, the LSA is refreshed but a flag is not set
due to which it was not able to remove it later.

Fix:
==================
Set the originated flag when refreshing summarised LSA.

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2021-08-17 02:15:42 -07:00
Igor Ryzhov
40d9855588
Merge pull request #9404 from neirbowj/notcares
Scan lib/resolver.c only when c-ares is installed
2021-08-17 11:28:22 +03:00
Mobashshera Rasool
ccfc58caae pimd: IGMPv2 query timer gets delayed in a scenario
Problem Statement:
==================
IGMP query is sent at irregular intervals
(more than 30 seconds) when "ip igmp query-max-response-time 100"
command is executed multiple times.

RCA:
=================
When "ip igmp query-max-response-time 100" is executed, the timers
are reset resulting in the delay of sending the query.

Fix:
=================
When there is no change in the config value, we should not reset
the timers.

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2021-08-17 00:24:30 -07:00
Philippe Guibert
7a52f27e75 zebra: RTM_GETNEIGH messages may be used by nhrp
When NHRP registers to zebra to receive link layer events related to
gre interfaces, then it is interested in receiving also RTM_GETNEIGH
messages.

Fixes ("b3b751046495") nhrpd: link layer registration to notifications

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-08-17 09:07:31 +02:00
Donald Sharp
8a66091763 include: Update rtnetlink.h to be correct with upstream kernels
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-16 15:18:55 -04:00
Mark Stapp
1f332cb0b2
Merge pull request #9375 from idryzhov/pcep-no-commands
vtysh, pathd: fix pcep node-entering commands
2021-08-16 12:57:53 -04:00
Renato Westphal
1dfa8b8991
Merge pull request #9380 from mjstapp/fix_static_lsp_cli
zebra: mpls validation and static lsp fixes
2021-08-16 12:06:01 -03:00
Donald Sharp
9a65115329 bgpd: Add code to output expire and retry interval for rpki
The code to output during a `show run` is missing for both
the expire_interval and the retry_interval in rpki.
Let's add it in so the end user can see what they
are set to if not set to the default.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-16 11:04:06 -04:00
Donald Sharp
73261b4759 bgpd: Continue processing rpki nodes
We are prematurely stopping processing of bgp_path_info's
when bgp_update returns a -1.  The only place that this
happens when we cross some prefix limit.  But we still
need to continiue processing other nodes in the list too.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-16 11:04:06 -04:00
Donald Sharp
35a1e798f8 bgpd: Limit processing to what is needed in rpki validation
The processing was looping over all bgp instances then
over all peers then over all safi's to find a match
for a prefix received in order to validate it.

Suppose you have 100 peers each sending you the same
prefix.  This code will cause it to look at each node 100
times since we look at for each peer.  This is especially
egregarious because we never ever do anything with the peer
when we are looping over them.

Remove the peer loop, significantly reduce processing.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-16 11:04:06 -04:00
Renato Westphal
c5be0ad631
Merge pull request #9395 from donaldsharp/pim_memory_leak
pimd: Prevent memory leak
2021-08-16 12:01:49 -03:00
Donatas Abraitis
3af20fda0b
Merge pull request #9369 from idryzhov/comm-alias-memleaks
bgpd: fix various memleaks when using community aliases
2021-08-16 17:24:21 +03:00
Igor Ryzhov
5838d3b452
Merge pull request #9265 from ton31337/fix/extcommunity_lb_route-map_persistent
bgpd: Extended community bandwidth fixes
2021-08-16 12:26:25 +03:00
Igor Ryzhov
06dc3705b7
Merge pull request #9350 from ton31337/feature/autocomplete_for_community_lists
bgpd: Auto-complete for community lists (show commands)
2021-08-16 12:02:13 +03:00
Igor Ryzhov
54a95babff
Merge pull request #9391 from mougams/master
tests: add feature to not run ospfd test when opted out
2021-08-16 11:54:55 +03:00
Igor Ryzhov
ab35b4ad5c
Merge pull request #9399 from ton31337/fix/doc_zebraBANDIWDTH
doc: Replace typo BANDIWDTH to BANDWIDTH
2021-08-16 11:52:34 +03:00
Igor Ryzhov
6020092152
Merge pull request #9400 from ton31337/fix/rename_topotest_dirs
tests: Get rid off `-` for directories
2021-08-16 11:51:51 +03:00
John W. O'Brien
433d9af2a6 lib: Scan lib/resolver.c only when c-ares is installed
Scan lib/resolver.c only when c-ares is installed

Signed-off-by: John W. O'Brien <john@saltant.com>
2021-08-15 12:54:37 -04:00
Donatas Abraitis
7fedbefb87 tests: Get rid off - for directories
Related: http://docs.frrouting.org/projects/dev-guide/en/latest/topotests.html

Directory name for a new topotest must not contain hyphen (-) characters.
To separate words, use underscores (_). For example, tests/topotests/bgp_new_example.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-08-15 11:12:56 +03:00
Donatas Abraitis
c5e0101cb8 doc: Replace typo BANDIWDTH to BANDWIDTH
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-08-15 11:10:22 +03:00
Takemasa Imada
b042667a3d bgpd: minimum-holdtime knob to prevent session establishment with BGP peer with low holdtime.
Signed-off-by: Takemasa Imada <takemasa.imada@gmail.com>
2021-08-15 06:08:08 +09:00
Donald Sharp
061bf350dd
Merge pull request #9271 from opensourcerouting/workflow-release-sched
workflow: document release scheduling discussed
2021-08-14 09:06:23 -04:00
Donatas Abraitis
426fb74775
Merge pull request #9394 from dslicenc/bgp-prepend-lastas
bgpd: Stop prepending peer-as if self-originated and lastas configured
2021-08-14 11:26:14 +03:00
Renato Westphal
a01b086340
Merge pull request #9338 from idryzhov/static-nb-err
staticd: replace NB checks with assert
2021-08-13 22:17:31 -03:00
Igor Ryzhov
f0010840e8
Merge pull request #9389 from mjstapp/fix_netlink_if_name_sa
zebra: interface name must be a valid string
2021-08-14 02:14:44 +03:00
Donald Sharp
5f1808acab pimd: Prevent memory leak
When we decide that we do not need a item on the partial_bsrp_list
don't just drop the memory on the floor, free it up.

This was happening when we decided that a pending item has
a hold time of 0.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-13 17:24:21 -04:00
Mark Stapp
e9f79fff57 zebra: interface name must be a valid string
Validate incoming netlink interface name strings.

Signed-off-by: Mark Stapp <mjs.ietf@gmail.com>
2021-08-13 16:06:07 -04:00
Don Slice
6ba0adacd2 bgpd: Stop prepending peer-as if self-originated and lastas configured
Problem seen where if "set aspath-prepend last-as" configured and
applied outbound, we prepend the peer's asn which causes our self-
originated routes to be denied.

Signed-off-by: Don Slice <dslice@nvidia.com>
2021-08-13 15:25:48 -04:00
Igor Ryzhov
cb5eb14c52
Merge pull request #9361 from qlyoung/upstream-8857
ospf6d: JSON output for database dump show command
2021-08-13 20:10:02 +03:00
Igor Ryzhov
cd9cc0e64a bgpd: fix memory leaks in bgp_show_table
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-13 14:45:08 +03:00
Igor Ryzhov
1ca0a0bc92 bgpd: fix memory leaks in route_match_alias
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-13 14:28:41 +03:00
Igor Ryzhov
1523c0f9ee
Merge pull request #9371 from donaldsharp/zebra_evpn_getl
zebra: Ensure stream is long enough
2021-08-13 14:06:37 +03:00
Basha Mougamadou
34a2283431 tests: add feature to not run ospfd test when opted out
Signed-off-by: Basha Mougamadou <b.mougamadou@criteo.com>
2021-08-13 11:38:38 +02:00
Quentin Young
6ddb368d6b ospf6d: JSON output for database dump show command
Added missing output to "show ipv6 ospf6 databse dump json" VTY shell
command.

Co-authored-by: David Schweizer dschweizer@opensourcerouting.org
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2021-08-12 16:26:01 -04:00
Quentin Young
0c0830c599 lib: add frrstr_hex to hexdump buffers
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2021-08-12 16:25:57 -04:00
Donald Sharp
a876da9b08
Merge pull request #9374 from mjstapp/fix_nhg_add_leak
zebra: clean up nhg allocations in error path
2021-08-12 15:34:07 -04:00
Donald Sharp
86d87c5352 zebra: Ensure stream is long enough
In zebra_evpn_proc_remote_nh if we do not pass in a long
enough stream, the stream reads will fail.  Ensure that
we have enough data.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-12 15:29:47 -04:00
Igor Ryzhov
30475121ad bgpd: fix segfault when re-adding "match evpn default-route" rule
When using "match evpn default-route" rule, match_arg is NULL and strcmp
is not happy with that. There's already a special function named rulecmp
that handles such situations.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-12 19:08:46 +03:00
Mark Stapp
1722cef455
Merge pull request #9304 from donaldsharp/zebra_random_stuff
Zebra random stuff
2021-08-12 10:16:46 -04:00
Mark Stapp
a44e310631 zebra: mpls validation and static lsp fixes
Handle TYPE_IFINDEX nexthops more consistently in a few places;
be more specific about a few integer return values that were
being treated as booleans.

Signed-off-by: Mark Stapp <mjs.ietf@gmail.com>
2021-08-12 08:53:53 -04:00
Igor Ryzhov
5bd78355d1 ospfd: fix initialization when vrf doesn't exist yet
There are a couple of things that are not initialized if the OSPF router
is created in a non-existent VRF:
- ospf_lsa_maxage_walker
- ospf_lsa_refresh_walker
- ospf_opaque_type11_lsa_init

Rearrange some code to always initialize them and make it easier to find
similar problems in the future.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-12 15:49:54 +03:00
Mark Stapp
86ba19b60f
Merge pull request #9376 from idryzhov/doc-fixes
a couple of ospf6 doc fixes
2021-08-12 08:49:41 -04:00
rgirada
0fc3e11323 ospf6d: GR helper configurations
Description:
	Adding the following cli commands to enable/disable GR helper
	functionality.
	1. [no] graceful-restart helper-only [A.B.C.D]
	2. [no] graceful-restart helper lsa-check-disable
	3. [no] graceful-restart helper planned-only
	4. [no] graceful-restart helper supported-grace-time (10-1800)

	show commands:
	show ipv6 ospf6 graceful-restart helper [detail] [json]

Signed-off-by: Rajesh Girada <rgirada@vmware.com>
2021-08-11 23:06:49 -07:00
Quentin Young
4596518981
Merge pull request #9370 from opensourcerouting/rpm-keep-config-master
redhat: Install frr.conf only if no per daemon config exists
2021-08-11 12:36:36 -04:00
Igor Ryzhov
1e29f449bc doc: fix ospf6 nssa area command description
Currently the NSSA support is a separate section, but it should actually
be a description of the corresponding CLI command.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-11 18:22:06 +03:00
Igor Ryzhov
df175bc89d doc: move ospf6 debugging section to the end of the doc
Currently the debugging section is placed in the middle of the section
with various configuration commands.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-11 18:14:53 +03:00
Igor Ryzhov
7e5e3c1919 doc: move ospf6 area commands to the appropriate section
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-11 18:00:28 +03:00
Igor Ryzhov
53fc645d33 vtysh, pathd: fix pcep node-entering commands
pce-config, pce and pcc node-entering commands in vtysh include no-form,
which is incorrect. Currently, when user passes a no-form command like
`no pcc`, vtysh enters the node while pathd deletes the node and this
leads to a desynchronization.

Regular and no-form commands should be defined separately to fix this.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-11 17:46:36 +03:00