Commit Graph

24884 Commits

Author SHA1 Message Date
Donald Sharp
c24e832ae9
Merge pull request #8946 from gpnaveen/bgp_lib_changes
tests: Adding lib changes for bgp peer type verification.
2021-07-16 09:15:36 -04:00
Donald Sharp
eeef611bad
Merge pull request #9068 from ton31337/fix/reduce_converge_time
tests: Reduce bgp_conditional_advertisement converge time 10x
2021-07-16 08:34:46 -04:00
Mark Stapp
65574cda3b
Merge pull request #9049 from LabNConsulting/chopps/improve-frr-reload-delta
tools: improve frr-reload.py delta file creation
2021-07-16 08:21:57 -04:00
Igor Ryzhov
6a09e0a34a
Merge pull request #9038 from donaldsharp/realloc_bgp
bgpd: XREALLOC handles NULL properly
2021-07-16 13:17:47 +03:00
Igor Ryzhov
3e763419d4
Merge pull request #9053 from opensourcerouting/ospfv3-debug-guard
ospf6d: remove extra debug message
2021-07-16 13:09:59 +03:00
Christian Hopps
be4a9b0570 tools: improve frr-reload.py delta file creation
- Remove incorrect requirement for `service integrated-vtysh-config`
  when producing a delta.
- Add `--test-reset` option which suppresses non-parseable lines from the
  produced delta
- Use new features in common_config.py

Signed-off-by: Christian Hopps <chopps@labn.net>
2021-07-15 22:12:01 -04:00
Donatas Abraitis
2c3d4b28bd tests: Reduce bgp_conditional_advertisement converge time 10x
~15min vs. ~1min.

Before:
```
1 passed, 1 skipped in 908.61 seconds
```

After:
```
1 passed, 1 skipped in 82.94 seconds
```

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-07-15 23:40:42 +03:00
Donald Sharp
0f8de6a8d8
Merge pull request #9055 from ton31337/fix/show_pfxsnt_even_when_default_route_originated
bgpd: Reflect changes to pfxSnt when using default-originate
2021-07-15 15:54:01 -04:00
Donald Sharp
cae48a42f8
Merge pull request #9065 from colinbs/fix_config_help_undefined_sanitizer
configure.ac: fix help text to --enable-undefined-sanitizer
2021-07-15 15:52:15 -04:00
Colin Sames
3f70087c2a configure.ac: fix help text to --enable-undefined-sanitizer
Signed-off-by: Colin Sames <colin.sames@haw-hamburg.de>
2021-07-15 19:18:02 +02:00
nguggarigoud
ea234209a1 tests: Fixing timing issue in evpn script.
Modified bgp timer values for faster convergence.

Signed-off-by: nguggarigoud <nguggarigoud@vmware.com>
2021-07-15 05:57:25 -07:00
Donald Sharp
5f179a1a61
Merge pull request #9018 from LabNConsulting/chopps/triage-features
tests: add triage features: strace, asan-abort, and shells/vtys/gdbs for docker runs too
2021-07-15 08:37:15 -04:00
nguggarigoud
ad03ea8ebf tests: Adding lib changes for bgp peer type verification.
Signed-off-by: nguggarigoud <nguggarigoud@vmware.com>
2021-07-15 05:28:08 -07:00
Igor Ryzhov
ac43358c17
Merge pull request #9051 from opensourcerouting/bgp-bfd-crash-fix 2021-07-15 01:14:22 +03:00
Donatas Abraitis
5fa869fcc7 tests: Check if pfxSnt is adjusted when default-originate is used for BGP
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-07-15 00:10:38 +03:00
Donatas Abraitis
fea96c555b bgpd: Increase sent prefix count per subgrp when originating default route
Before we didn't count default-originate to pfxSnt.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-07-14 23:55:20 +03:00
Christian Hopps
0ba1d257be tests: add triage features: strace, asan-abort, docker exec
TMUX and Screen support when running topotests inside docker. This
allows the gdb, shell and vtysh features to correctly work even when
running the tests inside docker.

Add options:
--asan-abort :: aborts the process on ASAN errors
--strace-daemons :: strace some or all daemons

Signed-off-by: Christian Hopps <chopps@labn.net>
2021-07-14 15:55:40 -04:00
Rafael Zalamena
ae2ba0c219 ospf6d: remove extra debug message
Somehow the hello message debugging code slipped outside the debug
guard. Lets just remove it.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2021-07-14 14:52:26 -03:00
Rafael Zalamena
373de4b5b0 bgpd: fix crash during configuration removal
Test the BFD config pointer before trying to free the session as it
might not exist.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2021-07-14 14:42:48 -03:00
Donatas Abraitis
a95ba7a7c8
Merge pull request #9041 from taspelund/next-hop-self-force-doc
doc: replace next-hop-self all with force
2021-07-14 14:05:09 +03:00
Trey Aspelund
42d623ac8a doc: replace next-hop-self all with force
Replaces next-hop-self keyword "all" with "force" to match the CLI.
Also mentions third-party next-hops will be bypassed by next-hop-self.

Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
2021-07-14 05:48:11 +00:00
Donatas Abraitis
558fbe6fac
Merge pull request #8893 from qlyoung/bgp-condadv-timer
bgpd: add knob to config cond-adv scanner period
2021-07-14 08:04:16 +03:00
Russ White
c88229774f
Merge pull request #9024 from idryzhov/isis-attached-bit
isisd: fix setting of the attached bit
2021-07-13 18:42:39 -04:00
Russ White
226732b19c
Merge pull request #8992 from opensourcerouting/workflow-knobs
workflow: add guidelines for config knobs
2021-07-13 18:41:52 -04:00
Donald Sharp
6e95e6419c
Merge pull request #9039 from ton31337/fix/no_need_to_check_for_null_in_cmp_functions
bgpd: Do not check for NULL values for vni_hash_cmp()
2021-07-13 16:42:23 -04:00
Quentin Young
389e4f92d6 bgpd: add knob to config cond-adv scanner period
Adds a knob that sets the time between loc-rib scans for conditional
advertisement.

I chose the range (5-240) because 1 second seems dumb and too easy to
hurt yourself at even moderate scale, 5 seconds you can still hurt
yourself but I could see a use case for it, and 4 minutes should be
enough for anyone (tm)

Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2021-07-13 13:19:14 -04:00
Donald Sharp
4c91056c86
Merge pull request #8961 from pguibert6WIND/bgp_unnumbered_config_find_nexthop
bgpd: associate correct nexthop when using peer link-local
2021-07-13 11:55:14 -04:00
Russ White
92eca6eb13
Merge pull request #9015 from Prerana-GB/GR
bgpd: Inconsistency in Local BGP GR state.
2021-07-13 11:39:31 -04:00
Donald Sharp
802a83935f
Merge pull request #9037 from idryzhov/ospf6-freebsd
ospf6d: fix freebsd mcast group issues
2021-07-13 09:40:13 -04:00
Donatas Abraitis
fab8462cca
Merge pull request #9036 from donaldsharp/hash_cmp_stuff
bgpd: hash compare functions never receive null values
2021-07-13 16:27:27 +03:00
Igor Ryzhov
d0f1492145 isisd: fix setting IS type in LSPs
IS type in an LSP is a type of the router, not a type of the circuit.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-07-13 14:49:49 +03:00
Igor Ryzhov
a4777e465a isisd: fix processing of the attached bit
There are two problems with the current code for processing the attached
bit:
- we should process it when acting both a level-1-only and level-1-2
- we should add the default route when we don't have L2 adjacensies, not
  when we don't have other routers configured on the device

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-07-13 14:49:49 +03:00
Igor Ryzhov
74ef8dd961 isisd: fix setting of the attached bit
Current code related to setting of the attached bit checks for existence
of L2 adjacencies in other routers configured on the device. This makes
no sense. We should check for L2 adjacencies in the same router where we
have L1 adjacencies.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-07-13 14:49:49 +03:00
Russ White
000df71ccd
Merge pull request #8767 from opensourcerouting/ospfd-gr
ospfd: introduce support for Graceful Restart (restarting mode)
2021-07-13 06:39:53 -04:00
Russ White
171b5527b9
Merge pull request #8734 from imzyxwvu/paf-deactivate
bgpd: Do not delete peer_af structure when deactivating peer-group from an address-family.
2021-07-13 06:35:30 -04:00
Igor Ryzhov
f27a93364d
Merge pull request #9029 from donaldsharp/ospfv3_stuff
ospf6d: Correct spelling in debug
2021-07-13 11:51:15 +03:00
Donatas Abraitis
107df351c6 tools: Add coccinelle script for hash compare functions NULL values
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-07-13 08:49:38 +03:00
Donatas Abraitis
ce40c6279a bgpd: Do not check for NULL values for vni_hash_cmp()
There is no need to test for null values in the hash compare
function as that we are guaranteed to send in data in
the hash compare functions.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-07-13 08:46:52 +03:00
Donald Sharp
0b04fa0e78 bgpd: XREALLOC handles NULL properly
the realloc man page:

If ptr is NULL, then the call is equivalent to malloc(size)

This should be sufficient for our needs to not have to have
XMALLOC and XREALLOC

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-07-12 19:32:42 -04:00
Igor Ryzhov
93828a9923 ospf6d: fix freebsd mcast group issues
There's a delay in FreeBSD between issuing a command to leave a
multicast group and an actual leave. If we execute "no router ospf6" and
"router ospf6" fast enough, we can end up in a situation when OS
performs the leave later than it performs the join and the interface
remains without a multicast group.

Instead of counting on a one second delay, we must wait until the
interface actually leaves the group.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-07-12 22:56:04 +03:00
Donald Sharp
63245a641a bgpd: hash compare functions never receive null values
There is no need to test for null values in the hash compare
function as that we are guaranteed to send in data in
the hash compare functions.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-07-12 14:23:51 -04:00
Donald Sharp
507559a089
Merge pull request #9027 from ton31337/fix/missing_unlock_bgp_dest
bgpd: Don't forget bgp_dest_unlock_node for bgp_static_set()
2021-07-12 07:27:12 -04:00
Donald Sharp
482467dc6a ospf6d: Correct spelling in debug
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-07-12 07:24:16 -04:00
Philippe Guibert
abe6805421 bgpd: associate correct nexthop when using peer link-local
When setting bgp configuration using peers referencing link local
ipv6 addresses, the bgp should be able to handle incoming bgp
connections, and find out the appropriate interface where the
connection comes from.

ipv6 link local sessions work by using bgp unnumbered interfaces
config, but it does not work if we have a shared media with
multiple potential link local ipv6 addresses on the network.

The fix consists in finding out the appropriate interface, when
the local configuration references a link local ipv6 addresses,
and the source address used references an interface. below
configuration illustrates what can be done then:

neighbor fe80::4113:5bba:2b61:b20c remote-as 55
neighbor fe80::4113:5bba:2b61:b20c update-source eth0

note: this change does not solve the ability for such config to
create an outgoing connection to remote peer (as the link local
ipv6 address config does not indicate which interface to use).

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-07-12 09:23:22 +02:00
Donatas Abraitis
70d9b134f6 bgpd: Don't forget bgp_dest_unlock_node for bgp_static_set()
Before returning an error, unlock bgp dest which is locked by
bgp_node_lookup().

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-07-11 23:39:53 +03:00
Igor Ryzhov
91b35264c2
Merge pull request #9004 from anlancs/fix-staticd-blackhole 2021-07-10 09:26:58 +03:00
anlan_cs
7ea5c53477 staticd: fix late initialization of blackhole type
If a static route is added to a not-yet-existing VRF, the blackhole type
is not initialized. Initialization must be done before the VRF existence
check.

Signed-off-by: anlan_cs <anlan_cs@tom.com>
2021-07-09 19:42:45 -04:00
Igor Ryzhov
cf420d4b48
Merge pull request #9010 from opensourcerouting/ospf-misc
doc,lib,ospfd,ospf6d: trivial improvements
2021-07-09 19:19:13 +03:00
Igor Ryzhov
d0f980f8bb
Merge pull request #9016 from LabNConsulting/chopps/ospf6d-fix-backlink-chk
ospf6d: fix backlink check
2021-07-09 15:46:43 +03:00
Rafael Zalamena
a0fbad5869 ospf6d: rework default-information configuration
Move code to its own function and remove most of the code indentation
(e.g. test for failure and quit as soon as possible).

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2021-07-09 07:55:25 -03:00