- 04 Dec, 2018 5 commits
-
-
Ondřej Zajíček authored
The old behavior was that enabling debugging did many nontrivial changes in BIRD behavior. The patch changes it that these changes are generally independent. Compiling with --enable-debug now just enables compile-time debug macros, but do not automatically activate debug mode (-d) nor local mode (-l). Debug mode with output to file (-D) do not force foreground mode (-f), therefore there is no need for backgroud option (-b), which is removed. Also fixes a bug when the default log target in -D mode was stderr instead of given debug file.
-
Jan Maria Matejka authored
-
Jan Maria Matejka authored
This is still OK for everybody to fit into RAM and also probably enough to keep a little collision rate for full BGP table.
-
Jan Maria Matejka authored
-
Jan Maria Matejka authored
Once upon a time, far far away, there were the old Bird developers discussing what direction of route flow shall be called import and export. They decided to say "import to protocol" and "export to table" when speaking about a protocol. When speaking about a table, they spoke about "importing to table" and "exporting to protocol". The latter terminology was adopted in configuration, then also the bird CLI in commit ea2ae6dd started to use it (in year 2009). Now it's 2018 and the terminology is the latter. Import is from protocol to table, export is from table to protocol. Anyway, there was still an import_control hook which executed right before route export. One thing is funny. There are two commits in April 1999 with just two minutes between them. The older announces the final settlement on config terminology, the newer uses the other definition. Let's see their commit messages as the git-log tool shows them (the newer first): commit 9e0e485e Author: Martin Mares <mj@ucw.cz> Date: Mon Apr 5 20:17:59 1999 +0000 Added some new protocol hooks (look at the comments for better explanation): make_tmp_attrs Convert inline attributes to ea_list store_tmp_attrs Convert ea_list to inline attributes import_control Pre-import decisions commit 5056c559 Author: Martin Mares <mj@ucw.cz> Date: Mon Apr 5 20:15:31 1999 +0000 Changed syntax of attaching filters to protocols to hopefully the final version: EXPORT <filter-spec> for outbound routes (i.e., those announced by BIRD to the rest of the world). IMPORT <filter-spec> for inbound routes (i.e., those imported by BIRD from the rest of the world). where <filter-spec> is one of: ALL pass all routes NONE drop all routes FILTER <name> use named filter FILTER { <filter> } use explicitly defined filter For all protocols, the default is IMPORT ALL, EXPORT NONE. This includes the kernel protocol, so that you need to add EXPORT ALL to get the previous configuration of kernel syncer (as usually, see doc/bird.conf.example for a bird.conf example :)). Let's say RIP to this almost 19-years-old inconsistency. For now, if you import a route, it is always from protocol to table. If you export a route, it is always from table to protocol. And they lived happily ever after.
-
- 28 Nov, 2018 1 commit
-
-
Ondřej Zajíček authored
Modify protocols to use preferred address change notification instead on depending on hard-reset of interfaces in that case, and remove hard-reset in that case. This avoids issue when e.g. IPv6 protocol restarts interface when IPv4 preferred address changed (as hard-reset is unavoidable and common for whole iface). The patch also fixes a bug when removing last address does not send preferred address change notification.
-
- 21 Nov, 2018 2 commits
-
-
Ondřej Zajíček authored
-
Ondřej Zajíček authored
-
- 20 Nov, 2018 1 commit
-
-
Ondřej Zajíček authored
The new MRT protocol is responsible for periodic RIB table dumps in the MRT format (RFC 6396). Also the existing code for BGP4MP MRT dumps is refactored and splitted between BGP to MRT protocols, will be more integrated into MRT in the future. Example: protocol mrt { table "*"; filename "%N_%F_%T.mrt"; period 60; } It is partially based on the old MRT code from Pavel Tvrdik.
-
- 18 Nov, 2018 3 commits
-
-
Ondřej Zajíček authored
Allow to specify log file size limit and ensure that log file is rotated to secondary name to avoid exceeding of log size limit. The patch also fixes a bug related to keeping old fds open after reconfiguration and using old fds after 'configure undo'.
-
Ondřej Zajíček authored
We need access to resource in order to free it.
-
Ondřej Zajíček authored
Newer Autoconf defines --runstatedir option for setting directory for run-time variable data. Use it instead our old --with-runtimedir.
-
- 05 Nov, 2018 2 commits
-
-
Ondřej Zajíček authored
Allow to change an interface associated with a route by setting ifname attribute. It will also change the route to a direct one.
-
Ondřej Zajíček authored
Some new route source values did not have associated string in rta_show(), which might caused crash in some cases.
-
- 26 Oct, 2018 1 commit
-
-
Ondřej Zajíček authored
Listening socket should be bound to specified interface and VRF. Thanks to Alexander Zubkov for the bugreport.
-
- 25 Oct, 2018 4 commits
-
-
Ondřej Zajíček authored
Missing argument in MTU change trace message can crash bird when MTU change happens and trace messages are active. Thanks to Alexander Velkov for the bugreport.
-
Ondřej Zajíček authored
Fixes type issue when u64 is pushed into it.
-
Ondřej Zajíček authored
-
Ondřej Zajíček authored
Not relevant for regular BGP paths, just for BGP paths added by filters to e.g. static routes.
-
- 11 Oct, 2018 2 commits
-
-
Ondřej Zajíček authored
The old check assumed that @CLIENT@ does not contain birdc, which is not true in 2.0 branc. Thanks to Thomas Petazzoni for the bugreport and original patch.
-
Ondřej Zajíček authored
The command showed interfaces that were removed / in shutdown.
-
- 01 Oct, 2018 2 commits
-
-
Ondřej Zajíček authored
-
Ondřej Zajíček authored
When channel is not active due to not be negotiated during sessino establishment, the LLGR timer is not allocated, so we should not show it.
-
- 18 Sep, 2018 1 commit
-
-
Jan Maria Matejka authored
no more warnings No more warnings over me And while it is being compiled all the log is black and white Release BIRD now and then let it flee (use the melody of well-known Oh Freedom!)
-
- 11 Sep, 2018 1 commit
-
-
Jan Maria Matejka authored
-
- 28 Aug, 2018 1 commit
-
-
Jan Maria Matejka authored
-
- 24 Aug, 2018 1 commit
-
-
Ondřej Zajíček authored
Thanks to Clemens Schrimpe for the bugreport.
-
- 22 Aug, 2018 1 commit
-
-
Jan Maria Matejka authored
Use like this: void func(const char *msg, va_list args) { ... bvsnprintf(buf, len, "file %s, line %d: %V (foo %d, bar %d)", file, line, msg, &args, foo, bar); ... }
-
- 21 Aug, 2018 1 commit
-
-
Ondřej Zajíček authored
Pipe mode was removed in 2.0, remove reference to it in the documentation. Thanks to Piotr Wydrych for the bugreport.
-
- 14 Aug, 2018 3 commits
-
-
Jan Maria Matejka authored
-
Jan Maria Matejka authored
-
Jan Maria Matejka authored
This also includes Bison version check. Versions before 3.0 don't support them in a reliable way and we don't promise to work with versions older than 2.4.
-
- 13 Aug, 2018 1 commit
-
-
Pavel Tvrdik authored
-
- 07 Aug, 2018 1 commit
-
-
Ondřej Zajíček authored
Thanks to Julien Dessaux for the report.
-
- 31 Jul, 2018 1 commit
-
-
Ondřej Zajíček authored
The patch implements long-lived graceful restart for BGP, namely draft-uttaro-idr-bgp-persistence-03.
-
- 28 Jul, 2018 1 commit
-
-
Ondřej Zajíček authored
BSD systems cannot use SO_DONTROUTE, because it does not work properly with multicast packets (perhaps it tries to find iface based on multicast group address). But we can use MSG_DONTROUTE sendmsg() flag for unicast packets. Works on FreeBSD, is ignored on OpenBSD and is broken on NetBSD (i guess due to integrated routing table and ARP table).
-
- 19 Jul, 2018 2 commits
-
-
Ondřej Zajíček authored
Thanks to Julian Schuh for the bugreport.
-
Ondřej Zajíček authored
The bug was introduced by an earler patch which removed additional eattr argument to rt_notify hook.
-
- 06 Jul, 2018 1 commit
-
-
Ondřej Zajíček authored
If export filter is changed during reconfiguration and a route disappears between reconfiguration and refeed (e.g., if the route is a static route also removed during the reconfiguration), the route is not withdrawn. The issue was fixed for regular channels by an earlier patch. This patch fixes the issue for channels in RA_ACCEPTED mode (first-pass-the-filter), used by BGP with 'secondary' option.
-
- 03 Jul, 2018 1 commit
-
-
Ondřej Zajíček authored
-