Commit Graph

21766 Commits

Author SHA1 Message Date
Renato Westphal
48c14b34a8 isisd: give precedence to new-style TLVs when generating routes
When both old and new-style TLVs exist for a particular prefix, give
precedence to the new-style TLV (like JUNOS does) when generating
routes from the SPT. This changes the current behavior which is to
generate a route for both TLVs, whereas the first is overwritten by
the second in a non-deterministic order (i.e. either the old-style
or the new-style TLV can "win" depending on how the SPF TENTative
list is arranged).

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2020-10-23 10:30:36 -03:00
Mark Stapp
b3d6bc6ef0 * : update signature of thread_cancel api
Change thread_cancel to take a ** to an event, NULL-check
before dereferencing, and NULL the caller's pointer. Update
many callers to use the new signature.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-23 08:59:34 -04:00
Mark Stapp
e7be2bd719 pimd: replace some zlog_warn with zlog_debug
A pim module had a number of warnings being used instead of
debugs - use debugs.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-23 08:35:57 -04:00
Mark Stapp
e9f934853c pimd: avoid possible unaligned pointer
Use inet_ntop instead of %pI4 in one place - clang doesn't like
the struct's address being taken that way.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-23 08:34:41 -04:00
Donatas Abraitis
90a65457d1
Merge pull request #7345 from opensourcerouting/bgp-aggr-suppress
bgpd: aggregate-address suppress-map
2020-10-23 15:02:57 +03:00
Donald Sharp
ab8ce28c9b
Merge pull request #7365 from mjstapp/fix_ntoa_pimd
pimd: replace inet_ntoa
2020-10-23 07:31:17 -04:00
Emanuele Bovisio
7134d0e9b2 build: add --disable-rpath option in configure
Add an option to remove RPATH entry from binary files.
Useful for cross-compilation, otherwise libtool hardcodes
the building path.

Signed-off-by: Emanuele Bovisio <emanuele.bovisio@eolo.it>
2020-10-23 10:00:08 +02:00
Donald Sharp
a927c1556d
Merge pull request #7372 from mjstapp/fix_ntoa_ripd
ripd, staticd, isisd, babeld: replace inet_ntoa
2020-10-22 20:56:18 -04:00
Donald Sharp
4ba3ba1233
Merge pull request #7367 from mjstapp/fix_ntoa_ldpd
ldpd: replace inet_ntoa
2020-10-22 18:40:15 -04:00
Donald Sharp
b7f49e15a2
Merge pull request #7358 from mjstapp/fix_ntoa
ospfd, zebra: Replace use of inet_ntoa
2020-10-22 18:39:04 -04:00
Donald Sharp
cc1107bf59
Merge pull request #7340 from ton31337/fix/inet_ntoa_to_pI4_lib
lib: Convert inet_ntoa to %pI4
2020-10-22 18:34:03 -04:00
Stephen Worley
7fa239f165 zebra: disable dependent backpointers for backup nexthops
Because the backup nexthop groups currently are more like pseudo-NHEs
(they don't have IDs and are not inserted into the ID table or
hashed), they can't really have this depends/dependents relationship
yet in both directions. Some work needs to be done there to make
them more like first class citizens like "normal" NHGs to enable
this.

Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
2020-10-22 18:10:44 -04:00
Stephen Worley
8459128259 Revert "Revert "zebra: fix NHE dependents backpointer relationship""
This reverts commit a682deea0f.
2020-10-22 18:09:44 -04:00
Mark Stapp
a854ea43ed isisd: replace inet_ntoa
Replace use of inet_ntoa, using pI4

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 16:25:41 -04:00
Mark Stapp
2bd8bc157d babeld: replace inet_ntoa
Replace use of inet_ntoa, using pI4, pFX, or inet_pton.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 16:25:41 -04:00
Mark Stapp
4a3873a319 staticd: replace inet_ntoa
Replace inet_ntoa with pI4

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 16:25:41 -04:00
Mark Stapp
53bb7f9bb3 ripd: replace inet_ntoa
Replace all uses of inet_ntoa, using pI4, pFX, or inet_pton.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 16:25:41 -04:00
Mark Stapp
903a72269a ldpd: replace inet_ntoa
Replace all use of inet_ntoa; use pI4 or inet_ntop instead.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 15:49:56 -04:00
Donald Sharp
582e9e0098
Merge pull request #7369 from eololab/fix-bgp-strings-in-vtsh
bgpd: fix information strings for vtysh
2020-10-22 14:41:42 -04:00
Renato Westphal
70190bab1c
Merge pull request #7302 from donaldsharp/eigrp_neighbor_warning
eigrpd: Tone down warning when command is not implemented yet
2020-10-22 14:50:54 -03:00
Mark Stapp
d0b0a2c545 ospfclient: replace inet_ntoa
Replace all use of inet_ntoa; use pI4 (and printfrr).

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 13:41:51 -04:00
Mark Stapp
9bcef951be zebra: replace inet_ntoa
Stop using inet_ntoa - use %pI4 or inet_ntop instead

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 13:37:25 -04:00
Mark Stapp
96b663a381 ospfd: replace inet_ntoa
Stop using inet_ntoa, use %pI4 etc or inet_ntop instead

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 13:37:25 -04:00
Rafael Zalamena
6ba6de7e17 bgpd,topotests: log route suppression messages
To see the messages activate the BGP debug: `debug bgp updates`.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2020-10-22 13:52:06 -03:00
Rafael Zalamena
4056a5f6a5 bgpd: route suppression refactory
Instead of just counting the route suppressions, keep a reference for
all aggregations that are doing it. It should help the with the
following problems:

- Which aggregation suppressed the route.
- Double suppression
- Double unsuppression
- Avoids calling `bgp_process` if already suppressed/unsuppressed.
- Easier code maintenance and understanding

This also fixes a crash when modifying a route map that is
associated with a working aggregate-address.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2020-10-22 13:52:00 -03:00
Emanuele Bovisio
36d4bb44c4 bgpd: fix information strings for vtysh
set correct information strings for vtysh.

Signed-off-by: Emanuele Bovisio <emanuele.bovisio@eolo.it>
2020-10-22 17:51:04 +02:00
Igor Ryzhov
95570b2d55 staticd: remove redundant checks from vty
These checks are moved to NB layer.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-22 17:22:23 +03:00
Mark Stapp
ee2bbf7ce2 pimd: replace inet_ntoa
Replace all use of inet_ntoa, using %pI4 or inet_ntoa instead

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-22 10:13:56 -04:00
Donald Sharp
45afb6f701 eigrpd: Tone down warning when command is not implemented yet
Currently eigrp has a bunch of commands that are not fully
implemented yet.  Tone down the yang code change of making
these in your face errors to zlog_warns, so the end-user
can not be freaked out by the message.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-10-22 09:02:00 -04:00
Donatas Abraitis
af3b34f690 lib: Convert inet_ntoa to %pI4
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2020-10-22 15:32:50 +03:00
Donald Sharp
84de5a245a
Merge pull request #7343 from ton31337/fix/prefix2str_to_pFX
:* Convert prefix2str to %pFX
2020-10-22 08:07:57 -04:00
Donald Sharp
b1b07ef5a6 zebra: Do not delete nhg's when retain_mode is engaged
When `-r` is specified to zebra, on shutdown we should
not remove any routes from the fib.  This was a problem
with nhg's on shutdown due to their ref-count behavior.

Introduce a methodology where on shutdown we don't mess
with the nexthop groups in the kernel.  That way on
next startup things will be ok.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-10-22 08:02:33 -04:00
Wesley Coakley
cc38347778 alpine: Remove old docker deps for alpine
Remove py-ipaddr and ipsec-tools as deps in the Alpine build container,
as these were both Python 2 libraries and are not used here anymore

`ipsec-tools` is also no longer available in Alpine's test repos and was
causing breakage on this builder

Signed-off-by: Wesley Coakley <wcoakley@nvidia.com>
2020-10-22 03:03:53 -04:00
Donatas Abraitis
2dbe669bdf :* Convert prefix2str to %pFX
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2020-10-22 09:07:41 +03:00
Donatas Abraitis
e58496183e
Merge pull request #7360 from donaldsharp/eigrp_printing
eigrpd: Replace inet_ntoa with %pI4
2020-10-22 08:52:13 +03:00
Rafael Zalamena
e84dfa4c2e topotests: test aggregate address suppress map
Add test for new aggregate address option: test aggregate address option
without converged routes, then test again with a different route map
with converged routes.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2020-10-21 21:50:06 -03:00
Rafael Zalamena
8fbb9c9581 doc: document new aggregate address option
Add documentation for the newly implement aggregate address command.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2020-10-21 21:50:06 -03:00
Rafael Zalamena
365ab2e74b bgpd: aggregate address suppress more specific
Add new aggregate-address option to selectively suppress routes based
on route map results.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2020-10-21 21:31:49 -03:00
Russ White
3506f3f907
Merge pull request #7337 from donaldsharp/bgp_process_workqueue
bgpd: Make the process_queue per bgp process
2020-10-21 19:02:19 -04:00
Donald Sharp
37b4b3cc34 eigrpd: Replace inet_ntoa with %pI4
Search and destroy the inet_ntoa usage in eigrp

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-10-21 18:55:09 -04:00
Donald Sharp
b6c386bbbd bgpd: Make the process_queue per bgp process
We currently have a global process queue for handling route
updates in bgp.  This is fine, in general, except there are
places and times where we plug the queue for no new work
during certain peer states of bgp update delay.  If we
happen to be processing multiple bgp instances on startup
why do we want to stop processing in vrf A when vrf B
is in a bit of a pickle?

Also this separation will allow us to start forward thinking
about how to fully integrate pthreads into route processing
in bgp.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-10-21 15:34:47 -04:00
Donatas Abraitis
719e0a6a6c
Merge pull request #7353 from AnuradhaKaruppiah/mh-cleanup-fix-1
bgpd: fix crash in the MH cleanup handling
2020-10-21 22:06:36 +03:00
Mark Stapp
f054aa3cca
Merge pull request #7350 from qlyoung/improve-bug-report-template
.github: improve bug report template
2020-10-21 13:52:41 -04:00
Anuradha Karuppiah
45a859f1c3 bgpd: fix crash in the MH cleanup handling
The MH datastructures were being released before the paths that were
referencing them. Fix is to do the MH cleanup last.

The MH finish function has also been stripped down to only do a
datastructure cleanup i.e. avoid sending route updates etc.

Ticket: 31376

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
2020-10-21 09:09:21 -07:00
Martin Winter
dad65cbe73
Merge pull request #7276 from donaldsharp/speedup_isis_topotests
tests: add `lsp-gen-interval 2` to isis configuration
2020-10-21 13:30:51 +02:00
Donatas Abraitis
2bf6fe2d5c
Merge pull request #7356 from sworleys/Revert-NHG-Dependents
Revert "zebra: fix NHE dependents backpointer relationship"
2020-10-21 06:57:57 +03:00
Stephen Worley
a682deea0f Revert "zebra: fix NHE dependents backpointer relationship"
This reverts commit f9f9466e04.
2020-10-20 17:11:35 -04:00
Quentin Young
368def518e .github: improve bug report template
- Enclose template help text in HTML comments so that it does not show
up in issues
- Add more help text explaining what is requested
- Yell to increase visibility

Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-10-20 16:12:03 -04:00
Donald Sharp
203098301c
Merge pull request #7348 from mjstapp/fix_router_id_lists
zebra: clean up all router id lists
2020-10-20 15:53:52 -04:00
Russ White
742e0f4428
Merge pull request #7206 from ckishimo/fix7086
ospfd: flush type 5 when type 7 is removed
2020-10-20 09:28:13 -04:00