Pavel Tvrdík
696acee0c7
MRT Dump: Support for draft-petrie-grow-mrt-add-paths
...
Thanks to Colin Petrie for patch.
2016-01-06 14:41:42 +01:00
Pavel Tvrdík
5125741512
MRT Table Dump: Fix size of AS_PATH in BGP Attributes
...
All AS numbers in the AS_PATH attribute in RIB Entries MUST be encoded as 4-byte AS numbers.
-- RFC 6396
Thanks to Colin Petrie for noticing us about this bug in BIRD!
2016-01-06 13:43:26 +01:00
Pavel Tvrdík
b89e7aee8a
Add the BIRD's documentation for MRT Table Dump (RFC 6396) feature
2016-01-06 13:28:55 +01:00
Pavel Tvrdík
6702b7ad74
Integrate MRT Table Dump (RFC 6396) into BIRD
...
Asynchronous periodic mrt table dumps of routes configuration in bird.conf:
mrtdump routes {
[ filename "<format>"; ]
[ table <name>|"<wildcard name>"; ]
[ period <num>; ]
[ filter <filter>|where <condition>; ]
}
Synchronous mrt table dumps of routes in BIRD client:
mrtdump routes [table <name>|"<wildcard name>"] [to "<filename format>"] [filter <filter>|where <condition>]
2016-01-06 13:28:46 +01:00
Pavel Tvrdík
33b4f40acc
MD5: Mormalize naming style
2015-11-24 16:01:48 +01:00
Ondrej Zajicek (work)
90f78507f4
Merge branch 'master' into rip-new
2015-11-24 15:21:11 +01:00
Jan Moskyto Matejka
ad27615760
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.
2015-11-24 14:30:20 +01:00
Ondrej Zajicek (work)
e422ca0f29
Some consts for function arguments
...
Patch from Pavel Tvrdik
2015-11-24 13:52:26 +01:00
Ondrej Zajicek (work)
5126380bea
Minor changes to SHA hash functions
2015-11-24 13:47:28 +01:00
Ondrej Zajicek (work)
12d752ef24
Merge commit 'origin/crypto-hash^'
2015-11-23 11:32:18 +01:00
Ondrej Zajicek (work)
1e4891e48e
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.
2015-11-23 11:13:40 +01:00
Pavel Tvrdík
f312a837e9
Add SHA-384/512 and HMAC-SHA-384/512 crypto hash
2015-11-13 19:34:12 +01:00
Pavel Tvrdík
4035e0e79c
Add SHA-224/256 and HMAC-SHA-224/256 crypto hash
2015-11-13 19:34:02 +01:00
Pavel Tvrdík
5d0c36f1da
Add SHA1 and SHA1-HMAC crypto hash
2015-11-13 19:33:48 +01:00
Pavel Tvrdík
75ff08022e
Add get_u64() and put_u64() into lib/unaligned.h
2015-11-13 19:31:19 +01:00
Pavel Tvrdík
fce764f90e
Fix compiling with --enable-debug option
2015-11-11 11:46:38 +01:00
Jan Moskyto Matejka
9ddbfbddf8
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.
2015-11-11 11:40:49 +01:00
Ondrej Zajicek (work)
86b4e17001
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.
2015-11-09 01:01:12 +01:00
Ondrej Zajicek (work)
9b9a7143c4
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.
2015-11-09 00:42:02 +01:00
Ondrej Zajicek (work)
3aed0a6ff7
IO: Fix the previous bugfix
...
I should check it after making some trivial changes. The original patch
from Alexander has it right.
2015-11-03 11:27:27 +01:00
Ondrej Zajicek (work)
338f85ca77
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.
2015-11-03 11:08:57 +01:00
Ondrej Zajicek (work)
8eb8e546dc
Merge branch 'master' into rip-new
2015-10-17 14:44:34 +02:00
Ondrej Zajicek (work)
acb04cfdc5
Minor changes
2015-10-17 14:43:37 +02:00
Ondrej Zajicek (work)
8465dccb06
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.
2015-10-05 13:18:10 +02:00
Ondrej Zajicek
b5e76398de
OSPF: Fixes some issues with link detection
...
Thanks to Bernardo Figueiredo and Israel G. Lugo for the bugreport.
2015-08-19 11:16:23 +02:00
Ondrej Zajicek
c7b99a932c
Nest: Fixes one of previous commit
2015-07-28 15:08:21 +02:00
Ondrej Zajicek
dbf4c0cb25
Minor update to test commits
2015-07-28 12:56:51 +02:00
Ondrej Zajicek
641172c6e5
Netlink: Fixes uninitialized variable
...
Thanks to Pavel Tvrdik for the bugfix
2015-07-28 12:36:03 +02:00
Ondrej Zajicek
538264cf1a
Static: Support for BFD controlled static routes
2015-07-24 18:02:07 +02:00
Ondrej Zajicek
1321e12ac4
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; };
2015-07-20 17:11:10 +02:00
Ondrej Zajicek
ffa398b8d8
BFD: Fixes crash after socket error
...
Thanks to Thomas King for the bugreport.
2015-07-19 11:39:24 +02:00
Ondrej Zajicek
a8ad8fd649
Simplify build messages
...
Thanks to Christian Tacke for the original patch.
2015-07-18 23:15:04 +02:00
Ondrej Zajicek
17661ff934
Nest: Fixes symbols in router id
...
Thanks to Peter Hudec for noticing the problem.
2015-07-18 19:30:35 +02:00
Ondrej Zajicek
6683d42d5b
Documentation update
2015-07-18 19:05:11 +02:00
Ondrej Zajicek
06e0d1b692
BGP: Extended messages support
...
Implements draft-ietf-idr-bgp-extended-messages-10, for now
undocumented and with temporary private capability number.
2015-07-18 13:38:21 +02:00
Ondrej Zajicek
ab4da3423d
Direct: Fixes behavior for the same routes on different interfaces
...
Thanks to Andrew (seti.kr.ua) for the bug report.
2015-07-18 13:05:05 +02:00
Ondrej Zajicek
8d9eef1771
BGP multipath support
...
Kernel option 'merge paths' allows to merge routes exported to kernel
protocol (currently BGP and static routes) to multipath routes.
2015-06-08 02:24:08 +02:00
Ondrej Zajicek
db027a41d4
Fixes subtle bug in temporary attribute handling
...
In some cases, export filter accessed attributes of a different route.
2015-06-08 02:24:08 +02:00
Ondrej Zajicek
78a2cc289f
KRT: Fixes some minor bugs in kernel protocol
2015-06-08 02:24:08 +02:00
Ondrej Zajicek
d217ba5111
Moving of mulipath merging code from OSPF to nest
2015-06-08 02:24:08 +02:00
Ondrej Zajicek
ca34698ca6
Fixes bug in pipe feeding when filtered routes are kept in table
2015-06-08 02:24:08 +02:00
Pavel Tvrdík
ae80a2de95
unsigned [int] -> uint
2015-06-08 02:24:08 +02:00
Pavel Tvrdík
e348ef01b4
unsgined char -> byte
2015-06-08 02:24:08 +02:00
Ondrej Filip
398f922531
Typo fix by Hans van Kranenburg
2015-06-01 10:41:17 +02:00
Ondrej Zajicek
9fe1d3ca8a
Fixes unnamed protocols from templates
2015-05-22 11:12:48 +02:00
Ondrej Zajicek
d0e23d42de
Simplify flushing process
...
Related to changes from previous patch.
2015-05-17 00:56:34 +02:00
Ondrej Zajicek
86f567e13c
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
2015-05-16 20:17:59 +02:00
Ondrej Zajicek
38e835dede
Fix in the last commit
2015-05-13 13:19:26 +02:00
Ondrej Zajicek
9fdf9d29b6
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
2015-05-12 16:42:22 +02:00
Ondrej Zajicek
315f23a047
Add bitfield route attribute type
2015-05-10 19:44:10 +02:00