0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-09-18 19:35:20 +00:00
Commit Graph

399 Commits

Author SHA1 Message Date
Maria Matejka
83045e9a1f Configuration obstacles made a separate, explicit structure
With this, one can walk the obstacle list in a debugger and
easier see which specific object is holding the reference.
2024-06-14 23:16:07 +02:00
Maria Matejka
61dcbb1d83 Global runtime values separated from config 2024-06-14 23:16:07 +02:00
Maria Matejka
c4fbc5592d Filter global values are not used directly from config 2024-06-14 23:16:07 +02:00
Maria Matejka
397eee5a00 Config: Removed obsolete force_restart option when commiting 2024-06-14 23:16:07 +02:00
Maria Matejka
ea996d8403 CLI keeps its active config pointer explicitly 2024-06-14 23:16:07 +02:00
Maria Matejka
0fb9177374 Loop scheduler tracing options configurable 2024-06-12 09:23:50 +02:00
Maria Matejka
10bb1c1e9d Real almost-lockless feeds and more pull-like exports
Introducing a new omnipotent internal API to just pass route updates
from whatever point wherever we want.

From now on, all the exports should be processed by RT_WALK_EXPORTS
macro, and you can also issue a separate feed-only request to just get a
feed and finish.

The exporters can now also stop and the readers must expect that to
happen and recover. Main tables don't stop, though.
2024-06-04 10:11:36 +02:00
Maria Matejka
6fb467a54c RCU Unwinder refactored from route table to a separate structure 2024-05-22 11:34:34 +02:00
Maria Matejka
46164395b2 Fixed all implicit seq_cst warnings caused by the previous commit 2024-05-22 11:34:34 +02:00
Ondrej Zajicek
0883ce66bf Merge commit '1b064355f752b9bfe4644f775697bbd9b711f762' into thread-next 2024-04-01 18:20:18 +02:00
Ondrej Zajicek
f27d1bae0f Merge commit '26dd61ee7f91c15157601b2404de5b6500a6061c' into thread-next 2024-04-01 03:01:59 +02:00
Ondrej Zajicek
1b064355f7 Client: Add support for completion of command options
We can easily extend command completion to handle also keywords for
command options. Help for command options is not yet supported.
2024-03-05 19:04:10 +01:00
Ondrej Zajicek
26dd61ee7f BFD: Add arguments to 'show bfd sessions' command
Add several arguments to 'show bfd sessions' command to filter
the list of sessions.
2024-03-05 00:02:16 +01:00
Maria Matejka
2e5cf618ef Hack-fix of IPv6 SADR literal parsing
This should be probably once done better, not by ad-hoc disabling
the attribute symbol table when parsing SADR literals.
2024-01-28 23:37:08 +01:00
Maria Matejka
b7400f73a4 Config: Moved hostname check before any other commit is done
This was sending <none> hostname via UDP while reconfiguring.
2024-01-28 23:03:54 +01:00
Maria Matejka
1b0d3f5c8c Merge commit 'v2.14-83-g1709843f' into thread-next 2024-01-28 14:56:01 +01:00
Maria Matejka
1709843f15 Merge commit 'v2.14-30-g41d6002f' into mq-merge-step-2 2024-01-28 14:55:50 +01:00
Maria Matejka
41d6002f59 Merge commit 'a740054db50b8532680bd1673a5d4519af889c0f' into mq-merge-step-1 2024-01-28 14:55:49 +01:00
Maria Matejka
8fe58b9f8d Merge commit 'v2.13.1-192-gb8312130' into thread-next 2024-01-28 14:43:05 +01:00
Maria Matejka
b831213072 Merge commit 'v2.13.1-145-g605780f9' into mq-merge-step-2 2024-01-28 14:42:57 +01:00
Maria Matejka
605780f9f5 Merge commit 'c5c3a22bccda5454775b48ad318a7fd4bf197f86' into mq-merge-step-1 2024-01-28 14:42:56 +01:00
Maria Matejka
0ab64e2739 Merge commit 'v2.13.1-135-gb560a074' into mq-merge-step-2 2024-01-28 14:22:53 +01:00
Maria Matejka
b560a0749b Merge commit 'abae806efdf6ac5f919c93057dd8df1faff1058c' into mq-merge-step-1 2024-01-28 14:22:51 +01:00
Maria Matejka
8c19f8a209 Merge commit 'db1eb46664d4c76d56dc55a63ce7abe853fc6862' into HEAD 2023-12-08 11:33:43 +01:00
Maria Matejka
db1eb46664 Merge commit '54ddf90f6370f06efc71c3ffd6e02d031a86866f' into mq-aggregator-for-v3 2023-12-08 09:08:38 +01:00
Maria Matejka
4aac1b259f Merge commit '54ddf90f' 2023-12-08 08:30:30 +01:00
Maria Matejka
54ddf90f63 Conf: debug tables
For now just a dummy config but it is needed for forward
compatibility with v3.
2023-12-07 14:38:05 +01:00
Maria Matejka
c7cc1ccd2e Merge branch 'mq-aggregator-for-v3' into thread-next 2023-11-09 15:50:13 +01:00
Maria Matejka
8429b4bc38 Merge commit '8e9e013b' into mq-aggregator-for-v3 2023-11-09 15:35:18 +01:00
Maria Matejka
30712a2bdf Merge branch 'mq-aggregator-for-v3' into thread-next 2023-11-08 21:51:46 +01:00
Maria Matejka
c6fba7d7e6 Merge branch 'thread-next' into HEAD 2023-11-02 14:43:15 +01:00
Katerina Kubecova
9680bf68e4 Automatic ROA reloads on channel import
This includes updating OSPF, Pipe and RIP to enable partial route reload
directly from the protocols' internal tables.
2023-11-02 14:37:27 +01:00
Maria Matejka
3611555883 Merge commit '333ddd4f' into mq-aggregator-for-v3 2023-11-02 12:01:22 +01:00
Maria Matejka
8917f16e4b Merge branch 'mq-aggregator-for-v3' into HEAD 2023-11-01 10:58:31 +01:00
Igor Putovny
f42c118aa7 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.
2023-10-31 16:40:46 +01:00
Maria Matejka
b0797c2dcd Merge commit 'de70474fed139f9acb4ed3f8e925d12de4edcdd0' into thread-next 2023-10-31 09:58:42 +01:00
Maria Matejka
de70474fed 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.
2023-10-30 13:10:36 +01:00
Maria Matejka
ddf698ec99 Renamed nest/rt.h back to nest/route.h
Some [redacted] (yes, myself) had a really bad idea
to rename nest/route.h to nest/rt.h while refactoring
some data structures out of it.

This led to unnecessarily complex problems with
merging updates from v2. Reverting this change
to make my life a bit easier.

At least it needed only one find-sed command:

    find -name '*.[chlY]' -type f -exec sed -i 's#nest/rt.h#nest/route.h#' '{}' +
2023-10-29 16:29:26 +01:00
Maria Matejka
c5f6dc8142 Merge commit '0a729b50' into thread-next
This merge was particularly difficult. I finally resorted to delete the
symbol scope active flag altogether and replace its usage by other
means.

Also I had to update custom route attribute registration to fit
both the scope updates in v2 and the data model in v3.
2023-10-29 15:42:46 +01:00
Maria Matejka
737807c118 Merge commit 'bb8e2824' into thread-next 2023-10-29 00:56:06 +02:00
Maria Matejka
cc6a233c7f Merge commit '9ffea830' into thread-next 2023-10-29 00:51:34 +02:00
Maria Matejka
de8288c679 Merge commit 'a3dc2645' into thread-next 2023-10-29 00:50:38 +02:00
Maria Matejka
a725e3e580 Merge commit 'cc1099a0' into thread-next
Updated f_implicit_roa_check() to use type methods and moved to filter/f-util.c
2023-10-29 00:14:52 +02:00
Maria Matejka
1a49a4aea8 Merge commit 'fc9d471b' into thread-next
Conflicts:
	conf/cf-lex.l
	conf/conf.h
	filter/config.Y
	filter/data.c
	filter/data.h
2023-10-28 23:42:21 +02:00
Maria Matejka
d6d122e245 Merge commit '6b95353e' into thread-next 2023-10-27 18:34:16 +02:00
Maria Matejka
0ba22509a8 Merge commit '51f2e7af' into thread-next
Conflicts:
	conf/cf-lex.l
	conf/conf.h
	conf/confbase.Y
	filter/config.Y
	nest/config.Y
	nest/proto.c
	nest/rt-table.c
	proto/bgp/bgp.c
	sysdep/unix/main.c
2023-10-27 18:29:31 +02:00
Ondrej Zajicek
a740054db5 Nest: Minor fixes in MPLS 2023-10-25 18:25:46 +02:00
Maria Matejka
da52d66177 Merge commit '58efa944' into thread-next
Conflicts:
	conf/cf-lex.l
	conf/conf.h
	conf/confbase.Y
	conf/gen_keywords.m4
	conf/gen_parser.m4
	filter/config.Y
	nest/config.Y
	proto/bgp/config.Y
	proto/static/config.Y

Keywords and attributes are split to separate namespaces, to avoid
collisions between regular keyword use and attribute overlay.
2023-10-25 14:41:11 +02:00
Maria Matejka
7efa3bac4f Merge commit 'cce48c6c' into thread-next 2023-10-13 14:02:21 +02:00
Maria Matejka
cdb95c2858 Merge commit 'f411a19b' into thread-next 2023-10-13 13:46:04 +02:00