Statistics
| Branch: | Revision:

iof-bird-daemon / nest @ d14f8c3c

# Date Author Comment
d14f8c3c 12/22/2016 08:38 PM Jan Moskyto Matejka

Netlink: MPLS routes in kernel

Anyway, Bird is now capable to insert both MPLS routes and MPLS encap
routes into kernel.

It was (among others) needed to define platform-specific AF_MPLS to 28
as this constant has been assigned in the linux kernel.

No support for BSD now, it may be added in the future.

f2010f9c 12/22/2016 08:38 PM Jan Moskyto Matejka

Static: Protocol rework wrt. struct nexthop changes; MPLS label support

ec5e5d23 12/22/2016 12:23 PM Jan Moskyto Matejka

Nexthop: Support for label stack in nest

5b208e29 12/22/2016 12:09 PM Jan Moskyto Matejka

Removing (struct rta)->cast. Never used.

4e276a89 12/22/2016 12:01 PM Jan Moskyto Matejka

Merged multipath and single-path data structures.

Dropped struct mpnh and mpnh_*()
Now struct nexthop exists, nexthop_*(), and also included struct nexthop
into struct rta.

Also converted RTD_DEVICE and RTD_ROUTER to RTD_UNICAST. If it is needed
to distinguish between these two cases, RTD_DEVICE is equivalent to...

c42ecaab 12/07/2016 03:27 PM Ondrej Zajicek (work)

Tests: Fix build

77234bbb 12/07/2016 02:54 PM Ondrej Zajicek (work)

Basic flow specification support (RFC 5575)

Add flow4/flow6 network and rt-table type and operations, config grammar
and static protocol support.

Squashed flowspec branch from Pavel Tvrdik.

ad88b94b 12/07/2016 02:30 PM Jan Moskyto Matejka

Merge branch 'int-new-rpki-squashed' (early part) into int-new

d15b0b0a 12/07/2016 01:20 PM Ondrej Zajicek (work)

BGP redesign

Integrated and extensible BGP with generalized AFI handling,
support for IPv4+IPv6 AFI and unicast+multicast SAFI.

f6e8e141 12/07/2016 08:35 AM Pavel Tvrdik

Check table type at `show route for ...'

65d2a88d 12/07/2016 08:35 AM Pavel Tvrdík

RPKI protocol with one cache server per protocol

The RPKI protocol (RFC 6810) using the RTRLib
(http://rpki.realmv6.org/) that is integrated inside
the BIRD's code.

Implemeted transports are:
- unprotected transport over TCP
- secure transport over SSHv2...

0eb7f17d 11/30/2016 10:57 AM Pavel Tvrdik

nest/a-path.c: Fix description of BS constant (block size)

5e3cd0e5 11/11/2016 04:43 PM Pavel Tvrdik

Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0

9b0a0ba9 11/09/2016 03:36 PM Ondrej Zajicek (work)

Unit Testing for BIRD

- Unit Testing Framework (BirdTest)
- Integration of BirdTest into the BIRD build system
- Tests for several BIRD modules
Based on squashed Pavel Tvrdik's int-test branch, updated for
current int-new branch.
8860e991 11/08/2016 06:27 PM Ondrej Zajicek (work)

Merge branch 'master' into int-new

cc5b93f7 11/08/2016 04:04 PM Ondrej Zajicek (work)

Merge tag 'v1.6.2' into int-new

390601f0 11/02/2016 04:53 PM Ondrej Zajicek (work)

RIP: Use message authentication interface

Based on former commit from Pavel Tvrdik

56cb3bed 11/02/2016 03:23 PM Pavel Tvrdík

Nest: Add support for MAC algorithms in grammar

de2a27e2 11/02/2016 03:23 PM Ondrej Zajicek (work)

Add generic message authentication interface

Add generic interface for generating and verifying MACs (message
authentication codes). Replace multiple HMAC implementation with
a generic one.

3e236955 11/01/2016 01:52 PM Jan Moskyto Matejka

Build: switch on -Wextra, get rid of most of the warnings

There are several unresolved -Wmissing-field-initializers on older
versions of GCC than 5.1, all of them false positive.

3c09af41 10/13/2016 02:59 PM Pavel Tvrdik

Clist: The add() function will append a new value

The add() function used to prepend a new community to clist, but after
this fix the add() function appends new community.

2e7fb11a 10/12/2016 12:22 PM Jan Moskyto Matejka

Fixed memory bloating on kernel merge paths together with export filter.

Some memory was being allocated from bad linpool, not from the given one
as they should.

Thanks to Madhu and Justin Cattle for reporting this.

9df52a98 10/12/2016 10:48 AM Pavel Tvrdik

Doc: Change debug to { flag1|flag2|flag3 [, ...] } style

Thanks to Micah Anderson for bug report and Ondrej Zajicek for the idea!

9fcb9637 10/12/2016 10:48 AM Pavel Tvrdik

Nest: Remove trailing whitespaces

a46e01ee 10/04/2016 10:45 AM Ondrej Zajicek (work)

Nest: Fix signedness of large communities

66dbdbd9 10/03/2016 10:48 AM Ondrej Zajicek (work)

BGP: Support for large communities

Add support for large communities (draft-ietf-idr-large-community),
96bit alternative to RFC 1997 communities.

Thanks to Matt Griswold for the original patch.

a290da25 09/15/2016 01:57 PM Pavel Tvrdik

rt-table: Fix kernel protocol export filter memory bug

Kernel protocol calls rt_export_merged(), which used @rte_update_pool for
temporary allocations, supposing it is called from other functions from
rt-table.c that handles locking and flushing of the linpool. Therefore,...

84cac51a 09/14/2016 09:53 AM Ondrej Zajicek (work)

Nest: Keep multipath next hops sorted

d107ef78 08/16/2016 11:02 AM Pavel Tvrdik

Whitespace fixes

12640c14 07/19/2016 10:16 AM Ondrej Zajicek (work)

Babel: Documentation updates

This updates the documentation to correctly mention Babel when protocols
are listed, and adds examples and route attribute documentation to the
Babel section of the docs.

Signed-off-by: Toke Høiland-Jørgensen <>

6887f409 07/17/2016 12:54 PM Ondrej Filip

Prepare for longer interface names - clean up of the code.

a0fe1944 06/08/2016 02:22 PM Ondrej Filip

Add AS# ranges to bgpmask.

5af7b596 05/13/2016 11:48 AM Jan Moskyto Matejka

Merge branch 'int-new' of gitlab.labs.nic.cz:labs/bird into int-new

d39d41fb 05/13/2016 11:46 AM Jan Moskyto Matejka

Hash: Fix of previous commit

659f80f2 05/12/2016 07:47 PM Ondrej Zajicek (work)

Make int-new compilable again

776d6b2c 05/12/2016 04:11 PM Ondrej Zajicek (work)

Merge remote-tracking branch 'origin/int-new' into int-new

af678af0 05/12/2016 04:03 PM Ondrej Zajicek (work)

Merge remote-tracking branch 'origin/master' into int-new

54ac0bec 05/12/2016 02:16 PM Jan Moskyto Matejka

Hash: fixed rta hashing wrt. structure padding

286e2011 05/12/2016 02:04 PM Ondrej Zajicek (work)

Miscellaneous minor fixes

8e433d6a 05/12/2016 01:49 PM Pavel Tvrdik

Prog Doc: Complete several missing parameters

0c6dfe52 05/10/2016 12:30 PM Jan Moskyto Matejka

Merge branch 'int-new' into int-new-merged

92912f06 05/10/2016 12:21 PM Jan Moskyto Matejka

Merge remote-tracking branch 'origin/rte-update' into int-new

7152e5ef 05/10/2016 12:07 PM Jan Moskyto Matejka

Build system reworked to one global Makefile with includes and no nesting

Also removed the lib-dir merging with sysdep. Updated #include's
accordingly.

Fixed make doc on recent Debian together with moving generated doc into
objdir.

Moved Makefile.in into root dir...

937e75d8 04/28/2016 04:01 PM Ondrej Zajicek (work)

Add the Babel routing protocol (RFC 6126)

This patch implements the IPv6 subset of the Babel routing protocol.
Based on the patch from Toke Hoiland-Jorgensen, with some heavy
modifications and bugfixes.

Thanks to Toke Hoiland-Jorgensen for the original patch.

e90dd656 04/08/2016 01:11 PM Ondrej Zajicek (work)

Direct: Implement check link for direct protocol

When enabled, direct protocol generates routes only if the underlying
link state is up.

2003a184 04/08/2016 11:09 AM Jan Moskyto Matejka

Route update: move table lookup from protocols into rte_update2().

Many protocols do almost the same when creating a rte_update request
before calling rte_update2(). This commit should simplify the protocol
side of the route-creation routine.

7a7ac656 04/08/2016 10:28 AM Jan Moskyto Matejka

Merge branch 'master' into int-new-channels

4bdf1881 04/07/2016 08:08 AM Jan Moskyto Matejka

Channelize: rt_notify arg conversion table -> channel

0c8c8151 04/07/2016 07:58 AM Jan Moskyto Matejka

Merge branch 'int-new-channels' of gitlab.labs.nic.cz:labs/bird into int-new-channels

06edbb67 04/06/2016 11:10 PM Ondrej Zajicek (work)

Nest: Reset export route counter during graceful restart

Counter exp_routes is increased during initial route feed after GR
recovery, so it has to start with zero, otherwise BIRD will end with
double value in exp_routes.

e86cfd41 04/06/2016 09:46 AM Ondrej Zajicek (work)

KRT: Fix route learn scan when route changed

When a kernel route changed, function krt_learn_scan() noticed that and
replaced the route in internal kernel FIB, but after that, function
krt_learn_prune() failed to propagate the new route to the nest, because...

79a4f74a 03/17/2016 05:40 PM Pavel Tvrdík

BGP: Add documentaion for extended messages

43fd8fae 03/10/2016 03:07 PM Pavel Tvrdík

nest/proto fix local_debug mode

062d18fd 03/10/2016 03:07 PM Pavel Tvrdík

Fix typo

a815d62d 02/19/2016 03:33 PM Jan Moskyto Matejka

Hash: typecast error fix

9c9cc35c 02/16/2016 04:33 PM Ondrej Zajicek (work)

Filter: Implement last_nonaggregated operator on bgp_path

9a74622c 02/10/2016 12:26 PM Jan Moskyto Matejka

Updated RTA hashes to 32-bit values.

... and reworked the hashes a bit. Also added mem_hash function
which just computes a hash of given memory block.

1bb3ecb2 02/08/2016 03:08 PM Pavel Tvrdík

Fix closing flushed channel

Fix reading from freed memory.
Free at: channel_set_state(c, CS_DOWN)
Read at: WALK_LIST2_DELSAFE(c, n, x, tab->channels, table_node)

00:00:00:00.261 24718
00:00:09:31.755 24718 Invalid read of size 8
00:00:09:31.755 24718 at 0x4061BA: rt_prune_table (rt-table.c:1688)...
2a013bb3 02/01/2016 03:01 PM Jan Moskyto Matejka

Fixed sigsegv for missing proto->rt_notify hook

If rt_notify is NULL, the export must always stay DOWN.

f4a60a9b 02/01/2016 09:28 AM Ondrej Zajicek (work)

Channels - explicit links between protocols and tables

The patch adds support for channels, structures connecting protocols and
tables and handling most interactions between them. The documentation is
missing yet.

9f5782d9 01/28/2016 04:16 PM Pavel Tvrdík

Add 'GENERATE/ACCEPT FROM datetime TO datetime' to password options

3f358161 01/21/2016 01:55 PM Jan Moskyto Matejka

BSD: Explicitly dropping routes with mismatched AF's.

650b4189 01/20/2016 03:46 PM Pavel Tvrdík

Delete old ROA code

0264ccf6 01/20/2016 03:46 PM Pavel Tvrdík

Rewrite roa_check() for integrated BIRD

Thanks to Ondrej Zajicek for his support with writing this code.

cb1bd816 01/20/2016 03:46 PM Pavel Tvrdík

Add ROA_* constants values to grammar of configuration

Add ROA_UNKNOWN, ROA_VALID and ROA_INVALID

f9d729ab 01/14/2016 01:31 PM Pavel Tvrdík

NET ROAx: add max_pxlen, fix format

b9f56921 01/07/2016 05:24 PM Pavel Tvrdík

Fix check in net_route() in debug mode

de9b87f5 01/07/2016 05:21 PM Pavel Tvrdík

Add NET ROA4/6 structures

74c838a8 12/29/2015 02:42 PM Ondrej Zajicek (work)

Move ID allocator to a separate file and use it also in OSPF

04632fd7 12/24/2015 02:56 PM Ondrej Zajicek (work)

Follow-up work on integration

600998fc 12/21/2015 07:28 PM Ondrej Zajicek (work)

Modify FIB_WALK() and FIB_ITERATE() to work with new FIB code

Returned user data pointers have offset relative to fib_node.

0bf95f99 12/21/2015 04:17 PM Ondrej Zajicek (work)

Follow-up work on integration

Contains some patches from Jan Moskyto Matejka

23c212e7 12/21/2015 02:33 AM Ondrej Zajicek (work)

Follow-up work on integration

0f7d5b1a 12/20/2015 05:16 PM Ondrej Zajicek (work)

Nest: Reimplement fib_route() and add some consts

7fd4143e 12/20/2015 12:47 PM Jan Moskyto Matejka

Integrated address print lengths

Minor changes by Ondrej Santiago Zajicek

9656dce7 12/20/2015 12:04 PM Jan Moskyto Matejka

ROA code switchoff

5e173e9f 12/19/2015 10:49 PM Jan Moskyto Matejka

Stop perusing f_prefix for non-prefix-set uses

Multiple changes by Ondrej Santiago Zajicek

d7661fbe 12/19/2015 02:57 PM Jan Moskyto Matejka

Removed BITS_PER_IP_ADDRESS, MAX_PREFIX_LENGTH, BIRD_AF

Explicit setting of AF_INET(6|) in IP socket creation. BFD set to listen
on v6, without setting the V6ONLY flag to catch both v4 and v6 traffic.

Squashing and minor changes by Ondrej Santiago Zajicek

9b136840 12/18/2015 07:03 PM Jan Moskyto Matejka

Netlink and BSD: Integrating IPv4 and IPv6

Squashing and minor changes by Ondrej Santiago Zajicek

04ae8dda 11/25/2015 01:24 PM Ondrej Zajicek (work)

Merge branch 'master' into int-new

90f78507 11/24/2015 02:21 PM Ondrej Zajicek (work)

Merge branch 'master' into rip-new

d44e686e 11/12/2015 01:03 AM Ondrej Zajicek (work)

Follow-up commit on integrated BIRD

Use net_addr for interface address prefixes, support net_addr in
configuration parser.

86b4e170 11/09/2015 12:01 AM Ondrej Zajicek (work)

Nest: Fixes bug in missing cleanup during table removal

When a table is removed during reconfiguration, a reference was not
cleared in the old configuration, which breaks undo.

9b9a7143 11/08/2015 11:42 PM Ondrej Zajicek (work)

Conf: Fixes bug in symbol lookup during reconfiguration

Symbol lookup by cf_find_symbol() not only did the lookup but also added
new void symbols allocated from cfg_mem linpool, which gets broken when
lookups are done outside of config parsing, which may lead to crashes...

fe9f1a6d 11/05/2015 11:48 AM Ondrej Zajicek (work)

Initial commit on integrated BIRD

New data types net_addr and variants (in lib/net.h) describing
network addresses (prefix/pxlen). Modifications of FIB structures
to handle these data types and changing everything to use these
data types instead of prefix/pxlen pairs where possible....

8eb8e546 10/17/2015 12:44 PM Ondrej Zajicek (work)

Merge branch 'master' into rip-new

acb04cfd 10/17/2015 12:43 PM Ondrej Zajicek (work)

Minor changes

8465dccb 10/05/2015 11:18 AM Ondrej Zajicek (work)

Major RIP redesign

The new RIP implementation fixes plenty of old bugs and also adds support
for many new features: ECMP support, link state support, BFD support,
configurable split horizon and more. Most options are now per-interface.

c7b99a93 07/28/2015 01:08 PM Ondrej Zajicek

Nest: Fixes one of previous commit

538264cf 07/24/2015 04:02 PM Ondrej Zajicek

Static: Support for BFD controlled static routes

17661ff9 07/18/2015 05:30 PM Ondrej Zajicek

Nest: Fixes symbols in router id

Thanks to Peter Hudec for noticing the problem.

ab4da342 07/18/2015 11:05 AM Ondrej Zajicek

Direct: Fixes behavior for the same routes on different interfaces

Thanks to Andrew (seti.kr.ua) for the bug report.

8d9eef17 06/08/2015 12:24 AM Ondrej Zajicek

BGP multipath support

Kernel option 'merge paths' allows to merge routes exported to kernel
protocol (currently BGP and static routes) to multipath routes.

db027a41 06/08/2015 12:24 AM Ondrej Zajicek

Fixes subtle bug in temporary attribute handling

In some cases, export filter accessed attributes of a different route.

d217ba51 06/08/2015 12:24 AM Ondrej Zajicek

Moving of mulipath merging code from OSPF to nest

ca34698c 06/08/2015 12:24 AM Ondrej Zajicek

Fixes bug in pipe feeding when filtered routes are kept in table

ae80a2de 06/08/2015 12:24 AM Pavel Tvrdík

unsigned [int] -> uint

e348ef01 06/08/2015 12:24 AM Pavel Tvrdík

unsgined char -> byte

9fe1d3ca 05/22/2015 09:12 AM Ondrej Zajicek

Fixes unnamed protocols from templates

d0e23d42 05/16/2015 10:56 PM Ondrej Zajicek

Simplify flushing process

Related to changes from previous patch.