Commit Graph

23013 Commits

Author SHA1 Message Date
ckishimo
8ae79ff269 ospf6d: remove redundant code when printing prefix options
Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-02-23 18:04:18 +01:00
ckishimo
66721aaee7 ospf6d: print prefix options for lsa type 3 and 5
Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-02-23 15:39:25 +01:00
Donald Sharp
68009c04f3
Merge pull request #8130 from ton31337/feature/document_systemtap_usdt
doc: Instruction how to use Systemtap with FRRouting
2021-02-23 07:25:19 -05:00
Donatas Abraitis
4fe016fe13
Merge pull request #7435 from sudhanshukumar22/bgp-peer-group-issue
Bgp peer group issue
2021-02-23 09:14:24 +02:00
Donatas Abraitis
2a267d5aca
Merge pull request #7460 from pguibert6WIND/remove_bgp_constraint
bgpd: upon bgp deletion, do not systematically ask to remove main bgp
2021-02-23 09:02:04 +02:00
Donatas Abraitis
c952f18422 doc: Instruction how to use Systemtap with FRRouting
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-02-22 23:36:01 +02:00
Mark Stapp
76787f231d
Merge pull request #8105 from donaldsharp/reduce_monotime
lib: Reduce getrusage/monotime for event handling
2021-02-22 13:04:43 -05:00
Donald Sharp
fa17cdc70f
Merge pull request #8125 from opensourcerouting/topotest-labn-jsoncmp
tests: JSON comparison command for LabN topotests
2021-02-22 09:38:03 -05:00
Donald Sharp
5e8229578a lib: Reduce getrusage/monotime for event handling
When handling a large number of events at one time
FRR will call monotime and getrusage 2 times for each
event.  With this change modify the code to change
this to (X events / 2) + 1 calls of getrusage and monotime

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-02-22 09:20:33 -05:00
David Lamparter
b6be812717
Merge pull request #8114 from volta-networks/fix_c++_xrefdata
lib: fix c++ usage of zlog
2021-02-22 14:52:37 +01:00
Mark Stapp
6589cae5f8
Merge pull request #7920 from donaldsharp/more_pytest_cleanup
More pytest cleanup
2021-02-22 07:31:22 -05:00
David Schweizer
92cf76677b
tests: example using new "jsoncmp_pass" command
Signed-off-by: David Schweizer <dschweizer@opensourcerouting.org>
2021-02-22 10:49:36 +01:00
Emanuele Di Pascale
c364a0962b lib: fix c++ usage of zlog
Since some recent commit, building c++ code attempting to use zlog_debug
(or any other level) would fail with the following complaint:

lib/zlog.h:91:3: sorry, unimplemented: non-trivial designated
initializers not supported
   };
   ^
lib/zlog.h:105:26: note: in expansion of macro ‘_zlog_ref’
 #define zlog_debug(...)  _zlog_ref(LOG_DEBUG, __VA_ARGS__)

This is due to out-of-order initialization of the xrefdata struct
fields. Setting them all in the order in which they are defined
fixes the issue.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2021-02-22 10:38:42 +01:00
David Schweizer
4e3828b771
tests: JSON comparison command for LabN topotests
The changes add the "jsoncmp_pass" and the "jsoncmp_fail" commands to
compare VTY shell's JSON output to an expected JSON object during
topotests using the LabN testing framework. This helps to eliminate
false negative test results (i.e. due to routes beeing out of order
after convergence or cosmetic changes in VTY shell's text output).

Signed-off-by: David Schweizer <dschweizer@opensourcerouting.org>
2021-02-22 10:31:57 +01:00
Donatas Abraitis
2031dbf31c
Merge pull request #7444 from sudhanshukumar22/bgp-clean-dampening-issue
bgpd: clear ip bgp dampening was not triggering the route calculation…
2021-02-22 09:37:04 +02:00
David Lamparter
3e62a52bb2
Merge pull request #8119 from donaldsharp/clippy_mem_leak
lib: Free memory leak in error path in clippy
2021-02-22 06:41:23 +01:00
Donald Sharp
f52aee04b3 lib: Free memory leak in error path in clippy
When running clippy, the main function in it's
error path could leak the memory pointed to by name.
Fix this.  This was/is reported by clang SA.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-02-20 07:40:01 -05:00
Donatas Abraitis
1c0f3e760a
Merge pull request #8111 from volta-networks/fix_bgp_plist_vpn
bgpd: fix 'neighbor X prefix-list Y in' SAFI VPN
2021-02-20 12:23:26 +02:00
Donald Sharp
ecb98792bf
Merge pull request #8112 from pguibert6WIND/bgp_flowspec_attrunchanged
bgpd: add attribute-unchanged attribute to flowspec
2021-02-19 18:30:36 -05:00
Martin Winter
79fcb69405
Merge pull request #8116 from qlyoung/clippy-name-wchar
lib: use right type for wconv() return val
2021-02-20 00:26:05 +01:00
Quentin Young
0f3073387b lib: use right type for wconv() return val
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2021-02-19 11:58:11 -05:00
Donald Sharp
dc86ef74e6
Merge pull request #8079 from pjdruddy/pr-snmp-coverity
MPLSL3VPN snmp coverity fixes
2021-02-19 08:54:02 -05:00
Donald Sharp
ba877ace25
Merge pull request #8102 from volta-networks/fix_ospf6_error_logs
ospf6d: Update logs that indicate why ospf6 adjacency is not coming up.
2021-02-19 08:22:47 -05:00
Donald Sharp
c6b8506c6c
Merge pull request #8103 from mjstapp/fix_thread_awaken
lib: don't awaken from poll for every timer
2021-02-19 08:21:31 -05:00
Donald Sharp
2ddbefc6ab
Merge pull request #8107 from ranjanyash54/intra_prefix_metric
ospf6d: Show metric in intra-prefix LSA detail
2021-02-19 08:19:53 -05:00
Philippe Guibert
b8ad84d211 bgpd: add attribute-unchanged attribute to flowspec
flowspec address family can now use attribute-unchanged attribute.
This parameter is necessary when it comes to play with
route-server-client, as that latter command forces to change
attribute-unchanged nexthop.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-02-19 14:17:05 +01:00
Emanuele Di Pascale
9fa7a8bf37 bgpd: fix 'neighbor X prefix-list Y in' SAFI VPN
this particular callback had not been implemented in the northbound
conversion, so the command had no effect.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2021-02-19 13:30:45 +01:00
Yash Ranjan
2727b66027 ospf6d: Metric option in intra-prefix LSA detail
Signed-off-by: Yash Ranjan <ranjany@vmware.com>
2021-02-18 20:36:13 -08:00
Mark Stapp
1d73eba70d
Merge pull request #8106 from donaldsharp/fix_bad_interaction
bgpd: Fix crash when we don't have a nexthop
2021-02-18 10:31:04 -05:00
lynne
ff99e5b648 ospf6d: Update logs that indicate why ospf6 adjacency is not coming up.
Add more details to these logs to help make it easier to determine why
ospf6 adjacency is not coming up.   Also make these logs show up without
having to turn on debug logging, again making it easier to debug the
misconfiguration.

Signed-off-by: Lynne Morrison <lynne@voltaio.net>
2021-02-18 10:24:51 -05:00
Mark Stapp
e7d9e44b02 lib: pass the thread_master to process_timers()
Pass the thread_master pointer to process_timers() as we
do for other list-processing apis.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-02-18 09:42:03 -05:00
Mark Stapp
96fe578a64 lib: don't awaken from poll for every timer
Only ask the event-loop poll() to awaken if a newly-added timer
actually might have changed the required timeout. Also compute
timer deadline outside of mutex locks.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-02-18 09:42:03 -05:00
Mark Stapp
4322dea7e0 lib: remove unneeded arg from timer api
Timers are always type TIMER - remove 'type' arg from some
timer apis.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-02-18 09:42:03 -05:00
Mark Stapp
a582429008 lib: small code cleanup in thread.c
Fix an indentation in thread.c.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-02-18 09:41:38 -05:00
Donald Sharp
e817f2ccbf bgpd: Fix crash when we don't have a nexthop
Recent changes to allow bgpd to handle v6 LL slightly
differently in the nexthop tracking code has not
interacted well with the blackhole nexthop change
for peers.  Modify the code to do the right thing

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-02-18 06:55:29 -05:00
Donatas Abraitis
d30260ee9e
Merge pull request #8104 from qlyoung/fix-clang-sa-feb2021
lib: fix some misc SA warnings
2021-02-18 13:30:26 +02:00
Donatas Abraitis
82451d0cc7
Merge pull request #7942 from donaldsharp/rpki_reload_fix
frr-reload: rpki context exiting uses exit and not end
2021-02-18 09:34:27 +02:00
Donatas Abraitis
e5e1330853
Merge pull request #8012 from mjstapp/fix_topo_ver_check
tests: report kernel version check failures
2021-02-18 09:26:15 +02:00
Donatas Abraitis
830fd32903
Merge pull request #8041 from donaldsharp/v6_ll_interface
bgpd: Switch LL nexthop tracking to be interface based
2021-02-18 09:22:51 +02:00
Quentin Young
4da4b9d4f1 lib: fix some misc SA warnings
- clippy.c: fix valid memleak
- defun_lex.l: suppress warnings in generated code
- northbound_cli.c: suppress warning in eldritch libyang macro

Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2021-02-17 17:01:06 -05:00
Russ White
95e336226e
Merge pull request #8062 from donaldsharp/bgp_blackhole
bgpd: Blackhole nexthops are not reachable
2021-02-17 15:47:51 -05:00
Russ White
c3a407489a
Merge pull request #8068 from qlyoung/bmp-tracing
BMP tracepoints
2021-02-17 12:59:56 -05:00
Mark Stapp
09145e272b
Merge pull request #8101 from idryzhov/staticd-fixes
multiple staticd fixes
2021-02-17 11:05:17 -05:00
Pat Ruddy
5a224c19f1 bgpd, lib: add oid2in6_addr utility and use it
The existing code was using the oid2in_addr API to copy IPv6
addresses passing an IPv6 length. Create a utility to do this
properly and avoid annoying coverity with type checking.

Signed-off-by: Pat Ruddy <pat@voltanet.io>
2021-02-17 13:35:31 +00:00
Pat Ruddy
23b88a967d bgpd: mplsvpn snmp: NULL check correct pointer
Check the dereferenced pointer to the bgp instance and not the
pointer to it.

Signed-off-by: Pat Ruddy <pat@voltanet.io>
2021-02-17 13:33:59 +00:00
Pat Ruddy
f01828a1d7 bgpd: mplsvpn SNMP correctly validate incoming rt_index
check that RT index is in the allowed range

Signed-off-by: Pat Ruddy <pat@voltanet.io>
2021-02-17 13:33:58 +00:00
Mark Stapp
e0b3b43716
Merge pull request #8098 from donaldsharp/af_inet_is_proto
zebra: use AF_INET for protocol family
2021-02-17 08:15:24 -05:00
Donald Sharp
8761cd6ddb bgpd: Switch LL nexthop tracking to be interface based
bgp is currently registering v6 LL as nexthops to be tracked
from zebra.  This presents several problems.

a) zebra does not properly track multiple prefixes that match
the same route properly at this point in time.
b) BGP was receiving nexthops that were just incorrect because
of (a).
c) When a nexthop changed that really didn't affect the v6 LL
we were responding incorrectly because of this

Modify the code such that bgp nexthop tracking notices that
we are trying to register a v6 LL.  When we do so, shortcut
and watch interface up/down events for this v6 LL and do
the work when an interface goes up / down for this type
of tracking.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-02-17 08:14:45 -05:00
Mark Stapp
2e31125cbf
Merge pull request #8099 from donaldsharp/more_ignore_revs
*: Add another commit to .git-blame-ignore-revs
2021-02-17 08:11:32 -05:00
Igor Ryzhov
cb3f5e1897 staticd: fix vrf enabling
When enabling the VRF, we should not install the nexthops that rely on
non-existent VRF.

For example, if we have route "1.1.1.0/24 2.2.2.2 vrf red nexthop-vrf blue",
and VRF red is enabled, we should not install it if VRF blue doesn't exist.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-02-17 15:06:20 +03:00