]> git.ipfire.org Git - thirdparty/bird.git/log
thirdparty/bird.git
8 years agoFixed sigsegv for missing proto->rt_notify hook
Jan Moskyto Matejka [Mon, 1 Feb 2016 09:25:31 +0000 (10:25 +0100)] 
Fixed sigsegv for missing proto->rt_notify hook

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

8 years agoBSD: compilation error fix
Jan Moskyto Matejka [Mon, 1 Feb 2016 08:22:18 +0000 (09:22 +0100)] 
BSD: compilation error fix

8 years agoChannels - explicit links between protocols and tables
Ondrej Zajicek (work) [Tue, 26 Jan 2016 10:48:58 +0000 (11:48 +0100)] 
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.

8 years agoAdd 'GENERATE/ACCEPT FROM datetime TO datetime' to password options
Pavel Tvrdík [Thu, 28 Jan 2016 15:55:27 +0000 (16:55 +0100)] 
Add 'GENERATE/ACCEPT FROM datetime TO datetime' to password options

8 years agoio.c: fix reads from uninitialized memory
Pavel Tvrdík [Wed, 27 Jan 2016 11:14:46 +0000 (12:14 +0100)] 
io.c: fix reads from uninitialized memory

8 years agoRIP: Fix DBG output
Pavel Tvrdík [Wed, 27 Jan 2016 11:25:30 +0000 (12:25 +0100)] 
RIP: Fix DBG output

8 years agoRIPng: fixed misrejection of host routes
Jan Moskyto Matejka [Mon, 25 Jan 2016 09:29:06 +0000 (10:29 +0100)] 
RIPng: fixed misrejection of host routes

8 years agoBSD: fix no-return warning
Jan Moskyto Matejka [Thu, 21 Jan 2016 14:46:33 +0000 (15:46 +0100)] 
BSD: fix no-return warning

8 years agoBSD: Explicitly dropping routes with mismatched AF's.
Jan Moskyto Matejka [Thu, 21 Jan 2016 09:59:52 +0000 (10:59 +0100)] 
BSD: Explicitly dropping routes with mismatched AF's.

8 years agoAll the current pthread implementations are OK and working with us.
Jan Moskyto Matejka [Wed, 20 Jan 2016 14:23:17 +0000 (15:23 +0100)] 
All the current pthread implementations are OK and working with us.

No more need to disable pthread for specific BSD's.

8 years agoAdd condition for max_pxlen by ROA grammar
Pavel Tvrdík [Thu, 21 Jan 2016 09:30:08 +0000 (10:30 +0100)] 
Add condition for max_pxlen by ROA grammar

8 years agoUse net_addr pointer for net_addr_roaX
Pavel Tvrdík [Thu, 21 Jan 2016 09:24:50 +0000 (10:24 +0100)] 
Use net_addr pointer for net_addr_roaX

net_addr_roa6 is bigger than net_addr

Thanks to Ondrej Zajicek for notice

8 years agoAdd forgotten semicolon
Pavel Tvrdík [Wed, 20 Jan 2016 14:41:15 +0000 (15:41 +0100)] 
Add forgotten semicolon

8 years agoDelete old ROA code
Pavel Tvrdík [Wed, 20 Jan 2016 15:29:17 +0000 (16:29 +0100)] 
Delete old ROA code

8 years agoRewrite roa_check() for integrated BIRD
Pavel Tvrdík [Wed, 20 Jan 2016 14:38:37 +0000 (15:38 +0100)] 
Rewrite roa_check() for integrated BIRD

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

8 years agoAdd ROA_* constants values to grammar of configuration
Pavel Tvrdík [Wed, 20 Jan 2016 14:06:19 +0000 (15:06 +0100)] 
Add ROA_* constants values to grammar of configuration

Add ROA_UNKNOWN, ROA_VALID and ROA_INVALID

8 years agoAdd ROA net_addr to grammar
Pavel Tvrdík [Wed, 20 Jan 2016 13:55:37 +0000 (14:55 +0100)] 
Add ROA net_addr to grammar

Example:
  protocol static
  {
    route 10.110.0.0/16 max 16 as 1000 blackhole;
    route 10.120.0.0/16 max 24 as 1000 blackhole;
    route 10.130.0.0/16 max 24 as 2000 blackhole;
    route 10.130.128.0/18 max 24 as 3000 blackhole;
    ...
  }

8 years agoBSD integration fixes
Jan Moskyto Matejka [Thu, 7 Jan 2016 13:45:01 +0000 (14:45 +0100)] 
BSD integration fixes

8 years agoNET ROAx: add max_pxlen, fix format
Pavel Tvrdík [Thu, 14 Jan 2016 09:03:50 +0000 (10:03 +0100)] 
NET ROAx: add max_pxlen, fix format

8 years agoNet address format: Do not print the -4 or -6 suffix in %I4 and %I6
Jan Moskyto Matejka [Mon, 11 Jan 2016 10:03:11 +0000 (11:03 +0100)] 
Net address format: Do not print the -4 or -6 suffix in %I4 and %I6

8 years agoNET ROAx more small changes
Pavel Tvrdík [Tue, 12 Jan 2016 10:36:28 +0000 (11:36 +0100)] 
NET ROAx more small changes

- Remove `u8 src` from net_add_roaX
- Add `u8 max_pxlen` to net_add_roaX
- Add some missing macro and functions for ROA
- Remove ASN from hash function for ROA

Thanks to Ondrej Santiago Zajicek

8 years agoROA change printf 'ASN: xxx' to 'ASxxx'
Pavel Tvrdík [Tue, 12 Jan 2016 10:27:38 +0000 (11:27 +0100)] 
ROA change printf 'ASN: xxx' to 'ASxxx'

8 years agoHidden AF_INET* inside sysdep/
Jan Moskyto Matejka [Thu, 7 Jan 2016 11:02:54 +0000 (12:02 +0100)] 
Hidden AF_INET* inside sysdep/

8 years agoBFD: split of v4/v6 sockets
Jan Moskyto Matejka [Thu, 7 Jan 2016 10:29:05 +0000 (11:29 +0100)] 
BFD: split of v4/v6 sockets

8 years agoFix check in net_route() in debug mode
Pavel Tvrdík [Thu, 7 Jan 2016 17:24:14 +0000 (18:24 +0100)] 
Fix check in net_route() in debug mode

8 years agoAdd NET ROA4/6 structures
Pavel Tvrdík [Thu, 7 Jan 2016 17:17:16 +0000 (18:17 +0100)] 
Add NET ROA4/6 structures

8 years agoExplicit ip4_addr / ip6_addr printf support
Ondrej Zajicek (work) [Tue, 29 Dec 2015 16:12:47 +0000 (17:12 +0100)] 
Explicit ip4_addr / ip6_addr printf support

8 years agoMove ID allocator to a separate file and use it also in OSPF
Ondrej Zajicek (work) [Tue, 29 Dec 2015 14:34:48 +0000 (15:34 +0100)] 
Move ID allocator to a separate file and use it also in OSPF

8 years agoNetlink: Removed forgotten if-stub (caused strange errors)
Jan Moskyto Matejka [Tue, 29 Dec 2015 12:01:00 +0000 (13:01 +0100)] 
Netlink: Removed forgotten if-stub (caused strange errors)

8 years agoFollow-up work on integration
Ondrej Zajicek (work) [Thu, 24 Dec 2015 14:52:03 +0000 (15:52 +0100)] 
Follow-up work on integration

8 years agoBetter fix of missing AF_INET6? definition in lib/socket.h
Jan Moskyto Matejka [Tue, 22 Dec 2015 08:45:09 +0000 (09:45 +0100)] 
Better fix of missing AF_INET6? definition in lib/socket.h

Moved the code to sysdep.

8 years agoModify FIB_WALK() and FIB_ITERATE() to work with new FIB code
Ondrej Zajicek (work) [Mon, 21 Dec 2015 19:16:05 +0000 (20:16 +0100)] 
Modify FIB_WALK() and FIB_ITERATE() to work with new FIB code

Returned user data pointers have offset relative to fib_node.

8 years agoBSD wants to include sys/socket.h in lib/socket.h (AF_INET6? definitions)
Jan Moskyto Matejka [Mon, 21 Dec 2015 17:23:08 +0000 (18:23 +0100)] 
BSD wants to include sys/socket.h in lib/socket.h (AF_INET6? definitions)

8 years agoFollow-up work on integration
Ondrej Zajicek (work) [Mon, 21 Dec 2015 16:17:21 +0000 (17:17 +0100)] 
Follow-up work on integration

Contains some patches from Jan Moskyto Matejka

8 years agoFollow-up work on integration
Ondrej Zajicek (work) [Mon, 21 Dec 2015 02:27:41 +0000 (03:27 +0100)] 
Follow-up work on integration

8 years agoFilter: Fix some changes in IP<->Quad implicit conversion
Ondrej Zajicek (work) [Sun, 20 Dec 2015 20:43:00 +0000 (21:43 +0100)] 
Filter: Fix some changes in IP<->Quad implicit conversion

8 years agoDelete ipv6 option from configure
Ondrej Zajicek (work) [Sun, 20 Dec 2015 18:47:36 +0000 (19:47 +0100)] 
Delete ipv6 option from configure

8 years agoNest: Reimplement fib_route() and add some consts
Ondrej Zajicek (work) [Sun, 20 Dec 2015 17:16:48 +0000 (18:16 +0100)] 
Nest: Reimplement fib_route() and add some consts

8 years agoKRT: Integration of IPv4/IPv6 in sysdep/linux
Ondrej Zajicek (work) [Sun, 20 Dec 2015 15:58:37 +0000 (16:58 +0100)] 
KRT: Integration of IPv4/IPv6 in sysdep/linux

8 years agoIntegrated address print lengths
Jan Moskyto Matejka [Fri, 18 Dec 2015 10:57:38 +0000 (11:57 +0100)] 
Integrated address print lengths

Minor changes by Ondrej Santiago Zajicek

8 years agoROA code switchoff
Jan Moskyto Matejka [Wed, 16 Dec 2015 14:30:44 +0000 (15:30 +0100)] 
ROA code switchoff

8 years agoImplemented missing prefix manipulation functions
Jan Moskyto Matejka [Wed, 16 Dec 2015 09:43:58 +0000 (10:43 +0100)] 
Implemented missing prefix manipulation functions

8 years agoStop perusing f_prefix for non-prefix-set uses
Jan Moskyto Matejka [Wed, 16 Dec 2015 09:25:12 +0000 (10:25 +0100)] 
Stop perusing f_prefix for non-prefix-set uses

Multiple changes by Ondrej Santiago Zajicek

8 years agoRemoved BITS_PER_IP_ADDRESS, MAX_PREFIX_LENGTH, BIRD_AF
Jan Moskyto Matejka [Fri, 11 Dec 2015 14:35:37 +0000 (15:35 +0100)] 
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

8 years agoNetlink and BSD: Integrating IPv4 and IPv6
Jan Moskyto Matejka [Mon, 7 Dec 2015 15:24:18 +0000 (16:24 +0100)] 
Netlink and BSD: Integrating IPv4 and IPv6

Squashing and minor changes by Ondrej Santiago Zajicek

8 years agoMerge branch 'master' into int-new
Ondrej Zajicek (work) [Wed, 25 Nov 2015 13:24:35 +0000 (14:24 +0100)] 
Merge branch 'master' into int-new

8 years agoMD5: Mormalize naming style
Pavel Tvrdík [Fri, 13 Nov 2015 15:08:28 +0000 (16:08 +0100)] 
MD5: Mormalize naming style

8 years agoMerge branch 'master' into rip-new
Ondrej Zajicek (work) [Tue, 24 Nov 2015 14:21:11 +0000 (15:21 +0100)] 
Merge branch 'master' into rip-new

8 years agoNetlink: attribute validation before parsing
Jan Moskyto Matejka [Tue, 10 Nov 2015 13:59:41 +0000 (14:59 +0100)] 
Netlink: attribute validation before parsing

Wanted netlink attributes are defined in a table, specifying
their size and neediness. Removing the long conditions that did the
validation before.

Also parsing IPv4 and IPv6 versions regardless on the IPV6 macro.

8 years agoSome consts for function arguments
Ondrej Zajicek (work) [Tue, 24 Nov 2015 12:52:26 +0000 (13:52 +0100)] 
Some consts for function arguments

Patch from Pavel Tvrdik

8 years agoMinor changes to SHA hash functions
Ondrej Zajicek (work) [Tue, 24 Nov 2015 12:47:28 +0000 (13:47 +0100)] 
Minor changes to SHA hash functions

8 years agoMerge commit 'origin/crypto-hash^'
Ondrej Zajicek (work) [Mon, 23 Nov 2015 10:32:18 +0000 (11:32 +0100)] 
Merge commit 'origin/crypto-hash^'

8 years agoNest: Fix bug in device proto
Ondrej Zajicek (work) [Mon, 23 Nov 2015 10:13:40 +0000 (11:13 +0100)] 
Nest: Fix bug in device proto

If an interface address notification is received during device protocol
shutdown/restart, BIRD crashed.

Thanks to Wei Huang for the bugreport.

8 years agoAdd SHA-384/512 and HMAC-SHA-384/512 crypto hash
Pavel Tvrdík [Fri, 13 Nov 2015 15:14:36 +0000 (16:14 +0100)] 
Add SHA-384/512 and HMAC-SHA-384/512 crypto hash

8 years agoAdd SHA-224/256 and HMAC-SHA-224/256 crypto hash
Pavel Tvrdík [Fri, 13 Nov 2015 15:13:15 +0000 (16:13 +0100)] 
Add SHA-224/256 and HMAC-SHA-224/256 crypto hash

8 years agoAdd SHA1 and SHA1-HMAC crypto hash
Pavel Tvrdík [Fri, 13 Nov 2015 15:11:51 +0000 (16:11 +0100)] 
Add SHA1 and SHA1-HMAC crypto hash

8 years agoAdd get_u64() and put_u64() into lib/unaligned.h
Pavel Tvrdík [Fri, 13 Nov 2015 15:10:33 +0000 (16:10 +0100)] 
Add get_u64() and put_u64() into lib/unaligned.h

8 years agoFollow-up commit on integrated BIRD
Ondrej Zajicek (work) [Thu, 12 Nov 2015 01:03:59 +0000 (02:03 +0100)] 
Follow-up commit on integrated BIRD

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

8 years agoFix compiling with --enable-debug option
Pavel Tvrdík [Mon, 9 Nov 2015 08:14:26 +0000 (09:14 +0100)] 
Fix compiling with --enable-debug option

8 years agoNetlink: Allow more than 256 routing tables.
Jan Moskyto Matejka [Tue, 3 Nov 2015 13:42:41 +0000 (14:42 +0100)] 
Netlink: Allow more than 256 routing tables.

Since 2.6.19, the netlink API defines RTA_TABLE routing attribute to
allow 32-bit routing table IDs. Using this attribute to index routing
tables at Linux, instead of 8-bit rtm_table field.

8 years agoNest: Fixes bug in missing cleanup during table removal
Ondrej Zajicek (work) [Mon, 9 Nov 2015 00:01:12 +0000 (01:01 +0100)] 
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.

8 years agoConf: Fixes bug in symbol lookup during reconfiguration
Ondrej Zajicek (work) [Sun, 8 Nov 2015 23:42:02 +0000 (00:42 +0100)] 
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
during reconfiguration.

The patch separates lookup-only cf_find_symbol() and config-modifying
cf_get_symbol(), while the later is called only during parsing. Also
new_config and cfg_mem global variables are NULLed outside of parsing.

8 years agoInitial commit on integrated BIRD
Ondrej Zajicek (work) [Thu, 5 Nov 2015 11:48:52 +0000 (12:48 +0100)] 
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.

The commit is WiP, some protocols are not yet updated (BGP, Kernel),
and the code contains some temporary scaffolding.

Comments are welcome.

8 years agoIO: Fix the previous bugfix
Ondrej Zajicek (work) [Tue, 3 Nov 2015 10:27:27 +0000 (11:27 +0100)] 
IO: Fix the previous bugfix

I should check it after making some trivial changes. The original patch
from Alexander has it right.

8 years agoIO: Handle fd values too big for select()
Ondrej Zajicek (work) [Tue, 3 Nov 2015 10:08:57 +0000 (11:08 +0100)] 
IO: Handle fd values too big for select()

If the number of sockets is too much for select(), we should at least
handle it with proper error messages and reject new sockets instead of
breaking the event loop.

Thanks to Alexander V. Chernikov for the patch.

8 years agoMerge branch 'master' into rip-new
Ondrej Zajicek (work) [Sat, 17 Oct 2015 12:44:34 +0000 (14:44 +0200)] 
Merge branch 'master' into rip-new

8 years agoMinor changes
Ondrej Zajicek (work) [Sat, 17 Oct 2015 12:36:53 +0000 (14:36 +0200)] 
Minor changes

8 years agoMajor RIP redesign
Ondrej Zajicek (work) [Mon, 5 Oct 2015 10:14:50 +0000 (12:14 +0200)] 
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.

9 years agoOSPF: Fixes some issues with link detection
Ondrej Zajicek [Wed, 19 Aug 2015 09:16:23 +0000 (11:16 +0200)] 
OSPF: Fixes some issues with link detection

Thanks to Bernardo Figueiredo and Israel G. Lugo for the bugreport.

9 years agoNest: Fixes one of previous commit
Ondrej Zajicek [Tue, 28 Jul 2015 13:08:21 +0000 (15:08 +0200)] 
Nest: Fixes one of previous commit

9 years agoMinor update to test commits
Ondrej Zajicek [Tue, 28 Jul 2015 10:56:51 +0000 (12:56 +0200)] 
Minor update to test commits

9 years agoNetlink: Fixes uninitialized variable
Ondrej Zajicek [Tue, 28 Jul 2015 10:35:12 +0000 (12:35 +0200)] 
Netlink: Fixes uninitialized variable

Thanks to Pavel Tvrdik for the bugfix

9 years agoStatic: Support for BFD controlled static routes
Ondrej Zajicek [Fri, 24 Jul 2015 16:02:07 +0000 (18:02 +0200)] 
Static: Support for BFD controlled static routes

9 years agoStatic: Allows to specify attributes for static routes
Ondrej Zajicek [Mon, 20 Jul 2015 09:12:02 +0000 (11:12 +0200)] 
Static: Allows to specify attributes for static routes

The patch adds suport for specifying route attributes together with
static routes, e.g.:

 route 10.1.1.0/24 via 10.0.0.1 { krt_advmss = 1200; ospf_metric1 = 100; };

9 years agoBFD: Fixes crash after socket error
Ondrej Zajicek [Sun, 19 Jul 2015 09:39:24 +0000 (11:39 +0200)] 
BFD: Fixes crash after socket error

Thanks to Thomas King for the bugreport.

9 years agoSimplify build messages
Ondrej Zajicek [Sat, 18 Jul 2015 21:15:04 +0000 (23:15 +0200)] 
Simplify build messages

Thanks to Christian Tacke for the original patch.

9 years agoNest: Fixes symbols in router id
Ondrej Zajicek [Sat, 18 Jul 2015 17:30:35 +0000 (19:30 +0200)] 
Nest: Fixes symbols in router id

Thanks to Peter Hudec for noticing the problem.

9 years agoDocumentation update
Ondrej Zajicek [Sat, 18 Jul 2015 17:05:11 +0000 (19:05 +0200)] 
Documentation update

9 years agoBGP: Extended messages support
Ondrej Zajicek [Sat, 18 Jul 2015 11:38:21 +0000 (13:38 +0200)] 
BGP: Extended messages support

Implements draft-ietf-idr-bgp-extended-messages-10, for now
undocumented and with temporary private capability number.

9 years agoDirect: Fixes behavior for the same routes on different interfaces
Ondrej Zajicek [Sat, 18 Jul 2015 11:05:05 +0000 (13:05 +0200)] 
Direct: Fixes behavior for the same routes on different interfaces

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

9 years agoBGP multipath support
Ondrej Zajicek [Mon, 8 Jun 2015 00:20:43 +0000 (02:20 +0200)] 
BGP multipath support

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

9 years agoFixes subtle bug in temporary attribute handling
Ondrej Zajicek [Thu, 4 Jun 2015 09:35:26 +0000 (11:35 +0200)] 
Fixes subtle bug in temporary attribute handling

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

9 years agoKRT: Fixes some minor bugs in kernel protocol
Ondrej Zajicek [Wed, 3 Jun 2015 09:58:46 +0000 (11:58 +0200)] 
KRT: Fixes some minor bugs in kernel protocol

9 years agoMoving of mulipath merging code from OSPF to nest
Ondrej Zajicek [Sun, 31 May 2015 21:25:33 +0000 (23:25 +0200)] 
Moving of mulipath merging code from OSPF to nest

9 years agoFixes bug in pipe feeding when filtered routes are kept in table
Ondrej Zajicek [Sun, 31 May 2015 09:29:53 +0000 (11:29 +0200)] 
Fixes bug in pipe feeding when filtered routes are kept in table

9 years agounsigned [int] -> uint
Pavel Tvrdík [Tue, 19 May 2015 06:53:34 +0000 (08:53 +0200)] 
unsigned [int] -> uint

9 years agounsgined char -> byte
Pavel Tvrdík [Tue, 19 May 2015 06:14:04 +0000 (08:14 +0200)] 
unsgined char -> byte

9 years agoTypo fix by Hans van Kranenburg
Ondrej Filip [Mon, 1 Jun 2015 08:41:17 +0000 (10:41 +0200)] 
Typo fix by Hans van Kranenburg

9 years agoFixes unnamed protocols from templates
Ondrej Zajicek [Fri, 22 May 2015 09:12:48 +0000 (11:12 +0200)] 
Fixes unnamed protocols from templates

9 years agoSimplify flushing process
Ondrej Zajicek [Sat, 16 May 2015 22:54:33 +0000 (00:54 +0200)] 
Simplify flushing process

Related to changes from previous patch.

9 years agoFix minor issue in pipe route propagation
Ondrej Zajicek [Sat, 16 May 2015 18:17:59 +0000 (20:17 +0200)] 
Fix minor issue in pipe route propagation

In some circumstances during reconfiguration, routes propagated by pipes
to other tables may hang there even after the primary routes are removed.

There is already a workaround for this issue in the code which removes
these stale routes by flush process when source protocols are shut down.

This patch is a cleaner fix and allows to simplify the flush process

9 years agoFix in the last commit
Ondrej Zajicek [Wed, 13 May 2015 11:19:26 +0000 (13:19 +0200)] 
Fix in the last commit

9 years agoKRT: Add support for plenty of kernel route metrics
Ondrej Zajicek [Tue, 12 May 2015 14:42:22 +0000 (16:42 +0200)] 
KRT: Add support for plenty of kernel route metrics

Linux kernel route metrics (RTA_METRICS netlink route attribute) are
represented and accessible as new route attributes:

krt_mtu, krt_window, krt_rtt, krt_rttvar, krt_sstresh, krt_cwnd, krt_advmss,
krt_reordering, krt_hoplimit, krt_initcwnd, krt_rto_min, krt_initrwnd,
krt_quickack, krt_lock_mtu, krt_lock_window, krt_lock_rtt, krt_lock_rttvar,
krt_lock_sstresh, krt_lock_cwnd, krt_lock_advmss, krt_lock_reordering,
krt_lock_hoplimit, krt_lock_rto_min, krt_feature_ecn, krt_feature_allfrag

9 years agoAdd bitfield route attribute type
Ondrej Zajicek [Sat, 9 May 2015 16:50:15 +0000 (18:50 +0200)] 
Add bitfield route attribute type

9 years agoOSPF: Redesign LSA checksumming
Ondrej Zajicek [Fri, 1 May 2015 12:40:56 +0000 (14:40 +0200)] 
OSPF: Redesign LSA checksumming

New LSA checksumming code separates generic Fletcher-16 and OSPF-specific
code and avoids back and forth endianity conversions, making it much more
readable and also several times faster.

9 years agoOSPF: Fixes validation of LSA checksums
Ondrej Zajicek [Tue, 28 Apr 2015 11:45:44 +0000 (13:45 +0200)] 
OSPF: Fixes validation of LSA checksums

Prior to this patch, BIRD validates the OSPF LSA checksum by calculating
a new checksum and comparing it with the checksum in the header. Due to
the specifics of the Fletcher checksum used in OSPF, this is not
necessarily correct as the checkbytes in the header may be calculated via
a different means and end up with a different value that is nonetheless
still correct.

The documented means of validating the checksum as specified in RFC 905
B.4 is to calculate c0 and c1 from the unchanged contents of the packet,
which must result in a zero value to be considered valid.

Thanks to Chris Boot for the patch.

9 years agoKRT: Fixes route reload
Ondrej Zajicek [Sat, 25 Apr 2015 19:41:43 +0000 (21:41 +0200)] 
KRT: Fixes route reload

Did not really worked

9 years agoKRT: Fixes learning of preferred kernel routes.
Ondrej Zajicek [Sat, 25 Apr 2015 18:43:43 +0000 (20:43 +0200)] 
KRT: Fixes learning of preferred kernel routes.

When a new route was imported from kernel and chosen as preferred, then
the old best route was propagated as a withdraw to the kernel protocol.
Under some circumstances such withdraw propagated to the BSD kernel could
remove the new alien route and thus reverting the import.

9 years agoKRT: Support for RTM_CHANGE on BSD
Ondrej Zajicek [Wed, 22 Apr 2015 08:53:15 +0000 (10:53 +0200)] 
KRT: Support for RTM_CHANGE on BSD

9 years agoNEWS and version update v1.5.0
Ondrej Zajicek [Mon, 20 Apr 2015 10:27:00 +0000 (12:27 +0200)] 
NEWS and version update