]>
git.ipfire.org Git - thirdparty/bird.git/log
Maria Matejka [Sun, 28 Jan 2024 13:53:38 +0000 (14:53 +0100)]
Merge commit '
v2.14-25-gb5378447 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:53:36 +0000 (14:53 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:52:33 +0000 (14:52 +0100)]
Merge commit '
v2.14-23-gf9bef5b9 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:52:32 +0000 (14:52 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:45:06 +0000 (14:45 +0100)]
Merge commit '
v2.14-21-gbd56a41b ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:45:04 +0000 (14:45 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:43:21 +0000 (14:43 +0100)]
Merge commit '
v2.14-18-g1d0371a6 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:43:20 +0000 (14:43 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:42:57 +0000 (14:42 +0100)]
Merge commit '
v2.13.1-145-g605780f9 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:42:56 +0000 (14:42 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:39:01 +0000 (14:39 +0100)]
Merge commit '
v2.13.1-143-g7441ff74 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:39:00 +0000 (14:39 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:29:16 +0000 (14:29 +0100)]
Merge commit '
v2.13.1-141-g4f806813 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:29:15 +0000 (14:29 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:28:09 +0000 (14:28 +0100)]
Merge commit '
v2.13.1-139-gc9d1ebbd ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:28:07 +0000 (14:28 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:24:55 +0000 (14:24 +0100)]
Merge commit '
v2.13.1-137-g31e60fd4 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:24:54 +0000 (14:24 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:22:53 +0000 (14:22 +0100)]
Merge commit '
v2.13.1-135-gb560a074 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:22:51 +0000 (14:22 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:20:45 +0000 (14:20 +0100)]
Merge commit '
v2.13.1-133-g7cc3d300 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:20:44 +0000 (14:20 +0100)]
Maria Matejka [Sun, 28 Jan 2024 13:20:22 +0000 (14:20 +0100)]
Merge commit '
v2.13.1-131-g21c3a54d ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 13:20:21 +0000 (14:20 +0100)]
Maria Matejka [Sun, 28 Jan 2024 12:30:06 +0000 (13:30 +0100)]
Merge commit '
v2.13.1-129-g481d3acc ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 12:30:05 +0000 (13:30 +0100)]
Maria Matejka [Sun, 28 Jan 2024 12:29:24 +0000 (13:29 +0100)]
Merge commit '
v2.13.1-127-gdcd0cc08 ' into mq-merge-step-2
Maria Matejka [Sun, 28 Jan 2024 12:29:22 +0000 (13:29 +0100)]
Maria Matejka [Fri, 26 Jan 2024 22:29:17 +0000 (23:29 +0100)]
Merge commit '
v2.13.1-125-g90b9e871 ' into mq-merge-step-2
Maria Matejka [Fri, 26 Jan 2024 22:29:14 +0000 (23:29 +0100)]
Maria Matejka [Fri, 26 Jan 2024 22:26:08 +0000 (23:26 +0100)]
Maria Matejka [Fri, 26 Jan 2024 22:25:25 +0000 (23:25 +0100)]
Maria Matejka [Fri, 26 Jan 2024 22:24:14 +0000 (23:24 +0100)]
Merge commit '
d5fd7ec6 ' into mq-aggregator-for-v3
Maria Matejka [Fri, 26 Jan 2024 22:23:56 +0000 (23:23 +0100)]
Maria Matejka [Fri, 8 Dec 2023 11:09:17 +0000 (12:09 +0100)]
Merge commit '
bb094fb6 ' into mq-aggregator-for-v3
Maria Matejka [Fri, 8 Dec 2023 11:07:46 +0000 (12:07 +0100)]
Refactoring also net_roa_check
Having 4 functions doing almost the same is more mess than three macros.
Maria Matejka [Fri, 8 Dec 2023 08:08:38 +0000 (09:08 +0100)]
Merge commit '
54ddf90f6370f06efc71c3ffd6e02d031a86866f ' into mq-aggregator-for-v3
Maria Matejka [Thu, 7 Dec 2023 13:38:05 +0000 (14:38 +0100)]
Conf: debug tables
For now just a dummy config but it is needed for forward
compatibility with v3.
Maria Matejka [Thu, 7 Dec 2023 13:10:11 +0000 (14:10 +0100)]
Refactoring of net_route
Maria Matejka [Thu, 7 Dec 2023 12:54:41 +0000 (13:54 +0100)]
Table: Adding route refresh begin and end debug messages
Maria Matejka [Thu, 26 Oct 2023 21:09:20 +0000 (23:09 +0200)]
C Compiler Attribute Cleanup Test
There is a long-known CC attribute cleanup which allows to call a custom
cleanup function when an auto-storage variable ceases to exist. We're
gonna use it for end-of-loop and leave-locked-block macros.
This commit adds a static unit test for this compiler feature to be sure
that it really does what we want. We're looking forward to the next ISO
C norm where this may finally get a nice syntax and standardization.
Maria Matejka [Thu, 9 Nov 2023 15:53:45 +0000 (16:53 +0100)]
Merge commit '
8f5511da ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 15:36:54 +0000 (16:36 +0100)]
Merge commit '
d8130da8 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 15:34:20 +0000 (16:34 +0100)]
Merge commit '
a7a9df86 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 15:00:44 +0000 (16:00 +0100)]
Merge commit '
9b775859 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 15:00:09 +0000 (16:00 +0100)]
Merge commit '
e915f99e ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 14:58:58 +0000 (15:58 +0100)]
Merge commit '
b6385dec ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 14:50:39 +0000 (15:50 +0100)]
Merge commit '
81a20ca5 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 14:50:28 +0000 (15:50 +0100)]
Merge commit '
35726051 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 14:50:02 +0000 (15:50 +0100)]
Merge commit '
fcf22586 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 14:35:18 +0000 (15:35 +0100)]
Merge commit '
8e9e013b ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 14:35:08 +0000 (15:35 +0100)]
Merge commit '
3397ca51 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 14:34:54 +0000 (15:34 +0100)]
Merge commit '
e338c4b6 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 10:06:07 +0000 (11:06 +0100)]
Merge commit '
bcff3ae7 ' into mq-aggregator-for-v3
Maria Matejka [Thu, 9 Nov 2023 09:52:53 +0000 (10:52 +0100)]
Merge commit '
9ca86ef6 ' into mq-aggregator-for-v3
Maria Matejka [Wed, 8 Nov 2023 21:14:58 +0000 (22:14 +0100)]
Merge commit '
9d456d53 ' into mq-aggregator-for-v3
Maria Matejka [Wed, 8 Nov 2023 20:56:58 +0000 (21:56 +0100)]
Merge commit '
15c86ed0 ' into mq-aggregator-for-v3
Ondrej Zajicek [Mon, 16 Oct 2023 13:21:36 +0000 (15:21 +0200)]
MPLS: Fix issue with recursive MPLS routes
Recursive MPLS routes used hostentry from the original route, which
triggered different table than MPLS table, and therefore were not
updated.
Maria Matejka [Wed, 1 Nov 2023 17:34:06 +0000 (18:34 +0100)]
Merge commit '
333ddd4f ' into mq-aggregator-for-v3
Maria Matejka [Wed, 1 Nov 2023 17:08:34 +0000 (18:08 +0100)]
Merge commit '
e55696a4 ' into mq-aggregator-for-v3
Maria Matejka [Wed, 1 Nov 2023 16:49:12 +0000 (17:49 +0100)]
Merge commit '
21213be5 ' into mq-aggregator-for-v3
Maria Matejka [Wed, 1 Nov 2023 16:46:52 +0000 (17:46 +0100)]
Merge commit '
8ad9c4bb ' into mq-aggregator-for-v3
Maria Matejka [Wed, 1 Nov 2023 13:30:46 +0000 (14:30 +0100)]
Aggregator: fixed route source unlocking on shutdown and withdraw
Maria Matejka [Wed, 1 Nov 2023 09:57:43 +0000 (10:57 +0100)]
Aggregator: Fixed bugs in filter usage
Maria Matejka [Wed, 1 Nov 2023 09:15:32 +0000 (10:15 +0100)]
Maria Matejka [Tue, 31 Oct 2023 10:37:54 +0000 (11:37 +0100)]
Aggregator: Expressed most of the attribute logic in filter language
Igor Putovny [Wed, 21 Jun 2023 11:15:07 +0000 (13:15 +0200)]
Basic route aggregation
Add a new protocol offering route aggregation.
User can specify list of route attributes in the configuration file and
run route aggregation on the export side of the pipe protocol. Routes are
sorted and for every group of equivalent routes new route is created and
exported to the routing table. It is also possible to specify filter
which will run for every route before aggregation.
Furthermore, it will be possible to set attributes of new routes
according to attributes of the aggregated routes.
This is a work in progress.
Original work by Igor Putovny, subsequent cleanups and finalization by
Maria Matejka.
This is a split-commit of the neighboring aggregator branch
with a bit improved lvalue handling, to have easier merge into v3.
Maria Matejka [Tue, 31 Oct 2023 11:03:49 +0000 (12:03 +0100)]
Filters: allowing to return any number of values
Maria Matejka [Tue, 31 Oct 2023 10:52:30 +0000 (11:52 +0100)]
Filter: value hashing
Added a code for computing hash of filter values.
This is a split-commit of the neighboring aggregator branch
with improved lvalue and attribute handling.
Maria Matejka [Mon, 30 Oct 2023 09:44:45 +0000 (10:44 +0100)]
Filter: predefined variables for specific blocks
This is a split-commit of the neighboring aggregator branch
with a bit improved lvalue handling, to have easier merge into v3.
Maria Matejka [Mon, 30 Oct 2023 08:49:20 +0000 (09:49 +0100)]
Filter: adding explicit route-block type
This is a split-commit of the neighboring aggregator branch
with a bit improved lvalue handling, to have easier merge into v3.
Maria Matejka [Sun, 29 Oct 2023 18:53:09 +0000 (19:53 +0100)]
Filter: adding explicit route type
This is a split-commit of the neighboring aggregator branch
with a bit improved lvalue handling, to have easier merge into v3.
Maria Matejka [Tue, 24 Oct 2023 10:40:52 +0000 (12:40 +0200)]
Autoconf: minor reduction of redundancy
Joined BIRD_CHECK_GCC_OPTION and BIRD_ADD_GCC_OPTION.
Ondrej Zajicek [Tue, 17 Oct 2023 23:48:11 +0000 (01:48 +0200)]
CI: Update for new netlab worker
- Change tag from 'birdlab' to 'netlab'
- Change path of gitlab-runner home dir
- Use stayrtr from Debian
Ondrej Zajicek [Mon, 16 Oct 2023 13:24:32 +0000 (15:24 +0200)]
CI: Add MPLS tests
Ondrej Zajicek [Mon, 16 Oct 2023 13:21:36 +0000 (15:21 +0200)]
MPLS: Fix issue with recursive MPLS routes
Recursive MPLS routes used hostentry from the original route, which
triggered different table than MPLS table, and therefore were not
updated.
Ondrej Zajicek [Fri, 6 Oct 2023 16:53:25 +0000 (18:53 +0200)]
NEWS and version update
Ondrej Zajicek [Fri, 6 Oct 2023 16:52:02 +0000 (18:52 +0200)]
Doc: Minor fixes
Ondrej Zajicek [Fri, 6 Oct 2023 00:36:59 +0000 (02:36 +0200)]
Conf: Bytestrings with hex: should use the same general format as ones without.
Either hex:
01234567 , or hex:01:23:45:67. No confusing formats like
hex:0123:4567:ab:cdef, which looks like there is an implicit zero byte.
Pavel Šorejs [Fri, 6 Oct 2023 02:31:19 +0000 (04:31 +0200)]
KRT: Allow to learn routes with RTPROT_KERNEL
The Kernel protocol, even with the option 'learn' enabled, ignores
direct routes created by the OS kernel (on Linux these are routes
with rtm_protocol == RTPROT_KERNEL).
Implement optional behavior where both OS kernel and third-party routes
are learned, it can be enabled by 'learn all' option.
Minor changes by committer.
Ondrej Zajicek [Thu, 5 Oct 2023 19:29:04 +0000 (21:29 +0200)]
BGP: Improve custom BGP attributes
- Implement EA_GET for custom BGP attributes
- Forbid EA_SET on existing opaque attributes
- Forbid redefining existing attributes
- Document possible compatibility problems
Ondrej Zajicek [Thu, 5 Oct 2023 15:54:43 +0000 (17:54 +0200)]
MPLS: Handle compatibility with old configs
Old configs do not define MPLS domains and may use a static protocol
to define static MPLS routes.
When MPLS channel is the only channel of static protocol, handle it
as a main channel. Also, define implicit MPLS domain if needed and
none is defined.
Ondrej Zajicek [Thu, 5 Oct 2023 12:26:22 +0000 (14:26 +0200)]
Filter: Fix scope handling in for loops
Changes in scope implementation broke scope handling in for loops.
The term in for loops is supposed to be parsed in the parent scope.
Ondrej Zajicek [Wed, 4 Oct 2023 18:14:12 +0000 (20:14 +0200)]
Conf: Fix 'show symbols'
Seems like the root scope was not marked as active.
Ondrej Zajicek [Wed, 4 Oct 2023 17:45:00 +0000 (19:45 +0200)]
BGP: Custom attribute definitions should use cfg_alloc(), not malloc()
Otherwise we would get memory leaks.
Maria Matejka [Wed, 4 Oct 2023 17:57:55 +0000 (19:57 +0200)]
Filter: explicitly forbidden for-loop with pre-defined variable
Ondrej Zajicek [Wed, 4 Oct 2023 15:36:03 +0000 (17:36 +0200)]
IO: Fix race condition in event processing
When regular event was added from work event, we did remember that
regular event list was empty and therefore we did not use zero time
in poll(). This leads to ~3 s latency in route reload during
reconfiguration.
Ondrej Zajicek [Wed, 4 Oct 2023 13:25:05 +0000 (15:25 +0200)]
Doc: Fix syntax errors in SGML
Ondrej Zajicek [Wed, 4 Oct 2023 13:00:24 +0000 (15:00 +0200)]
MPLS: Update to support and use 64bit source id
Ondrej Zajicek [Wed, 4 Oct 2023 11:00:06 +0000 (13:00 +0200)]
Doc: L3VPN documentation
Ondrej Zajicek [Tue, 3 Oct 2023 14:11:18 +0000 (16:11 +0200)]
Doc: MPLS documentation
Ondrej Zajicek [Sun, 1 Oct 2023 03:02:46 +0000 (05:02 +0200)]
L3VPN: Import/export target reconfiguration
Ondrej Zajicek [Sat, 30 Sep 2023 21:18:04 +0000 (23:18 +0200)]
BGP, L3VPN: Fix MPLS channel reload
When a MPLS channel is reloaded, it should reload all regular MPLS-aware
channels. This causes re-evaluation of routes in FEC map and possibly
reannouncement of MPLS routes.
Ondrej Zajicek [Sat, 30 Sep 2023 18:07:40 +0000 (20:07 +0200)]
MPLS: Implement FEC map reconfiguration
This allows changing label policy or label range without restart.
Ondrej Zajicek [Tue, 26 Sep 2023 16:50:20 +0000 (18:50 +0200)]
MPLS: Handle label allocation failures
Ondrej Zajicek [Sat, 23 Sep 2023 22:24:50 +0000 (00:24 +0200)]
L3VPN: Fix bug in reconfiguration
Fields import_target / export_target link to config structures, must be
updated during reconfiguration.
Ondrej Zajicek [Sat, 23 Sep 2023 15:55:01 +0000 (17:55 +0200)]
MPLS: Improve handling of static label allocations
Use mpls_new_label() / mpls_free_label() also for static labels, to keep
track of allocated labels and to enforce label ranges.
Static label allocations always use static label range, regardless of
configured label range.
Ondrej Zajicek [Fri, 22 Sep 2023 17:49:15 +0000 (19:49 +0200)]
Static: Add syntax for static MPLS labels
Instead of just using route attributes, static routes with
static MPLS labels can be defined just by e.g.:
route 10.1.1.0/24 mpls 100 via 10.1.2.1 mpls 200;
Ondrej Zajicek [Fri, 22 Sep 2023 13:47:48 +0000 (15:47 +0200)]
MPLS: Label range non-intersection check
Ondrej Zajicek [Mon, 18 Sep 2023 15:47:17 +0000 (17:47 +0200)]
MPLS: Improve label range reconfiguration
Allow to shorten label range over unused area.