1
0
mirror of https://gitlab.labs.nic.cz/labs/bird.git synced 2024-05-11 16:54:54 +00:00

371 Commits

Author SHA1 Message Date
d82fc18d75 Implement proper LSA ID generation. 2009-10-07 21:10:29 +01:00
be86240662 Temporary OSPFv3 development commit.
Finally, it is working.
2009-09-08 13:45:02 +02:00
d2ceaf4ec8 Temporary OSPFv3 development commit 2009-08-28 13:45:43 +02:00
061ab802a6 Temporary OSPFv3 development commit 2009-08-27 18:25:46 +02:00
b49e6f5a65 Temporary OSPFv3 development commit 2009-08-25 16:42:14 +02:00
c3226991a0 Temporary OSPFv3 development commit 2009-08-21 09:27:52 +02:00
2f6483cd31 Adds %R printf directive for Router ID. 2009-07-23 16:06:25 +02:00
6baef17ecf Fixes bug in CLI TX buffer management. 2009-07-14 14:18:54 +02:00
d72cdff411 Replace 'bind' option with 'listen' option.
To be consistent with other daemons.
2009-06-23 11:08:30 +02:00
bf1aec970e Adds support for soft reconfiguration. 2009-06-19 23:49:34 +02:00
789772ed45 Implements option that changes BGP listening socket parametres. 2009-06-18 19:20:07 +02:00
925fe2d3de Implements route statistics and fixes some minor bugs. 2009-06-04 01:22:56 +02:00
c07c65d6d0 Escaped debbuging message removed. 2009-06-01 23:18:45 +02:00
92a72a4cbd Adds support for dynamic pair and bgp mask expressions. 2009-06-01 19:32:41 +02:00
f98e291579 The pipe cleanup. 2009-06-01 14:07:13 +02:00
23ac9e9a9e Changes pipes to transfer all routes between routing table, not just optimal routes. 2009-05-31 15:24:27 +02:00
874b868544 Implements primary address selection base on 'primary' option. 2009-05-29 22:49:30 +02:00
ea2ae6dd0a Change import/preimport to export/preexport to be consistent with filters. 2009-05-22 17:12:15 +02:00
d72a0ac239 Fixes serious bug in route attribute handing.
ea_same() sometimes returns true for different route attributes,
which caused that hash table in BGP does not work correctly and
some routes were sent with different attributes.
2009-05-22 15:16:53 +02:00
6c84554b67 Merge branch 'master' into dev 2009-05-21 09:26:59 +02:00
4d176e1450 'show route protocol <p>' added to CLI. 2009-05-11 02:01:11 +02:00
dd8d2acd3c Fixed bug in cli help. 2009-05-10 19:23:05 +02:00
20e94fb85b A change in OSPF and RIP interface patterns.
Allows to add more interface patterns to one common 'options'
section like:

interface "eth3", "eth4" { options common to eth3 and eth4 };

Also removes undocumented and unnecessary ability to specify
more interface patterns with different 'options' sections:

interface "eth3" { options ... }, "eth4" { options ... };
2009-05-06 22:02:45 +02:00
c8a6b9a3d1 Rewrite of buggy AS path matching.
Old AS path maching supposes thath AS number appears
only once in AS path, but that is not true. It also
contains some bugs related to AS path sets.

New code does not use any assumptions about semantic
structure of AS path. It is asymptotically slower than
the old code, but on real paths it is not significant.

It also allows '?' for matching one arbitrary AS number.
2009-04-17 01:48:36 +02:00
024c310b53 Fixes broken cryptographic authentication in OSPF
Cryptographic authentication in OSPF is defective by
design - there might be several packets independently
sent to the network (for example HELLO, LSUPD and LSACK)
where they might be reordered and that causes crypt.
sequence number error.

That can be workarounded by not incresing sequence number
too often. Now we update it only when last packet was sent
before at least one second. This can constitute a risk of
replay attacks, but RFC supposes something similar (like time
in seconds used as CSN).
2009-04-08 20:15:01 +02:00
40b65f947a Fixes bug in pipe route filtering.
Routes comming through pipe from primary to secondary table were
filtered by both EXPORT and IMPORT filters, but they should be
only filtered by EXPORT filters.
2009-03-25 19:05:52 +01:00
48d79d521c Better handling of AS4 optional attribute errors
AS4 optional attribute errors were handled by session
drop (according to BGP RFC). This patch implements
error handling according to new BGP AS4 draft (*)
 - ignoring invalid AS4 optional attributes.

(*) http://www.ietf.org/internet-drafts/draft-chen-rfc4893bis-02.txt
2009-03-18 20:30:21 +01:00
25cb9f1d01 Fix bug in empty bgp mask handling 2009-02-21 16:20:45 +01:00
b807ef9a15 Fixes bug in protocol state machine
Scheduling flush must be done before resource pool freeing as it
frees some allocated list nodes from a global list.
2009-02-12 13:43:06 +01:00
d6a836f8d6 Fixes core state machine.
The core state machine was broken - it didn't free resources
in START -> DOWN transition and might freed resources after
UP -> STOP transition before protocol turned down. It leads
to deadlock on olock acquisition when lock was not freed
during previous stop.

The current behavior is that resources, allocated during
DOWN -> * transition, are freed in * -> DOWN transition,
and flushing (scheduled in UP -> *) just counteract
feeding (scheduled in * -> UP). Protocol fell down
when both flushing is done (if needed) and protocol
reports DOWN.

BTW, is thera a reason why neighbour cache item acquired
by protocol is not tracked by resource mechanism?
2008-12-08 12:24:55 +01:00
fbde6c3908 Fixes race condition leading to memory corruption and crash.
When protocol started, feeding was scheduled. If protocol
got down before feeding was executed, then function
responsible for connecting protocol to kernel routing
tables was called after the function responsible for
disconnecting, then resource pool of protocol was freed,
but freed linked list structures remains in the list.
2008-11-22 01:12:22 +01:00
ebacaf6f7b Fix bug in AS path matching 2008-11-16 11:35:30 +01:00
258d0ad4ca Fixes feeding of new protocol, only preferred routes are announced. 2008-11-14 23:03:15 +01:00
aebe06b40c Proper format functions for ORIGINATOR_ID, CLUSTER_LIST 2008-11-08 23:33:22 +01:00
b21f68b4cd Fix bugs in OSPF MD5 authentication. First bug is that default
values for MD5 password ID changed during reconfigure, Second
bug is that BIRD chooses password in first-fit manner, but RFC
says that it should use the one with the latest generate-from.

It also modifies the syntax for multiple passwords.
Now it is possible to just add more 'password' statements
to the interface section and it is not needed to use
'passwords' section. Old syntax can be used too.
2008-11-08 17:24:23 +01:00
fd91ae3325 Fix problem with local time changes. 2008-11-05 22:36:49 +01:00
b6bf284a90 Bugfixes in MULIT_EXIT_DISC attribute handling.
- Old MED handling was completely different from behavior
   specified in RFCs - for example they havn't been propagated
   to neighboring areas.

 - Update tie-breaking according to RFC 4271.

 - Change default value for 'default bgp_med' configuration
   option according to RFC 4271.
2008-10-26 22:59:21 +01:00
4847a894bf Implementation of route reflection for BGP 2008-10-26 22:45:09 +01:00
11cb620266 Implementation of 4B ASN support for BGP 2008-10-26 22:36:08 +01:00
030d3b387e Small changed to reduce the number of warnings. 2005-02-14 11:58:46 +00:00
bc956fcab6 MD5 authentication in OSPF works. :-) 2004-07-13 14:46:14 +00:00
32d3228d86 Bugfix in simple authentification. 2004-07-13 13:52:54 +00:00
02ad2737fd Password WALK_LIST bugfix. 2004-07-01 15:01:26 +00:00
5236fb03af Password management redesigned (untested). 2004-06-26 20:11:14 +00:00
98ac61766d A lot of changes:
- metric is 3 byte long now
	- summary lsa originating
	- more OSPF areas possible
	- virtual links
	- better E1/E2 routes handling
	- some bug fixes..

I have to do:
	- md5 auth (last mandatory item from rfc2328)
	- !!!!DEBUG!!!!! (mainly virtual link system has probably a lot of bugs)
	- 2328 appendig E
2004-06-25 16:39:53 +00:00
8bf684eca2 RTS_OSPF_BONDARY is nonsense, RTS_OSPF_IA must have smaller id than RTS_OSPF_EXT 2004-06-11 09:05:06 +00:00
c90ac711bc Cleanup in show route import <p>. 2004-06-07 10:42:24 +00:00
7c103b1ee1 Marked unused parameters in core code as such. 2004-06-05 09:10:56 +00:00
277a34eff1 Small correction to va_start/va_end in cli_printf (va_end was missing).
(Andreas)
2004-05-31 18:08:50 +00:00
10af3676ea Grrr, committing too fast.
#include "alloca.h" -> #include "lib/alloca.h"
2004-05-31 17:16:47 +00:00