Commit graph

382 commits

Author SHA1 Message Date
Ondrej Zajicek
d32a071da9 Some cleanups in krt_read_ifinfo(). 2011-01-08 11:31:12 +01:00
Ondrej Zajicek
dad7ee70c1 Fixes interface names on BSD systems. 2011-01-08 11:22:38 +01:00
Ondrej Zajicek
32b4972834 Multipath support for linux kernel protocol. 2010-12-07 23:36:11 +01:00
Ondrej Zajicek
01427d3f2b Remove some runaway debug messages and typos. 2010-11-19 18:03:27 +01:00
Ondrej Zajicek
f25cb0ef9f Implements link state detection.
Also changes some symbol names (IFF_ADMIN_DOWN -> IFF_SHUTDOWN,
IFF_LINK_UP -> IFF_ADMIN_UP).
2010-11-11 10:03:02 +01:00
Ondrej Zajicek
0d1b3c4c0e Changes print-like filter commands to use a log instead of a stderr.
And extends the log subsystem to better handle that.
2010-09-20 13:01:01 +02:00
Ondrej Zajicek
f428631cd6 Ignore warning when BGP peer is unreachable. 2010-08-03 01:12:43 +02:00
Ondrej Zajicek
f038f0a638 Fixes missing check in reconfiguration. 2010-07-12 21:39:10 +02:00
Ondrej Zajicek
9be9a26413 Implements proper multihop BGP.
Also does some incompatible changes to config file syntax,
like removing 'via IP' from multihop option.
2010-07-12 17:39:39 +02:00
Ondrej Zajicek
cfe34a316e Implements hostcache and recursive next hops.
Hostcache is a structure for monitoring changes in a routing table that
is used for routes with dynamic/recursive next hops. This is needed for
proper iBGP next hop handling.
2010-07-05 17:50:19 +02:00
Ondrej Zajicek
acb60628f5 Implements command that shows memory usage. 2010-06-02 22:20:40 +02:00
Ondrej Zajicek
9ef239946b NEWS and version update. 2010-05-31 20:41:40 +02:00
Ondrej Zajicek
9b061f7ea5 Minor fixes. 2010-05-28 11:16:39 +02:00
Ondrej Zajicek
691057f033 Support loopback/dummy addresses. 2010-05-26 16:09:22 +02:00
Ondrej Zajicek
87a9abeac9 Fixes interface scan on Linux 2.4.x in IPv6 mode. 2010-05-21 15:17:49 +02:00
Ondrej Zajicek
002b642318 Fixes bug on Linux 2.4.x - kernel sync does not work until restart of kernel protocol.
Which was, actually, a bug in timers - on older kernel, monotonic timer
is missing and the other implementation started with now == 0, which
collides with usage 0 as a special value in timer->expires field.
2010-05-21 12:00:53 +02:00
Ondrej Zajicek
475977242a Handle EPIPE as a common connection close event. 2010-05-14 16:54:39 +02:00
Ondrej Zajicek
ba32170657 Better support for /31 networks. 2010-04-28 00:39:57 +02:00
Ondrej Zajicek
1d44ddf20f Merge commit 'origin/master' into new 2010-04-21 21:52:10 +02:00
Ondrej Filip
6bc414d619 It seems that prefixes /31 and /127 are valid and used in this strange world. 2010-04-19 16:10:20 +02:00
Ondrej Zajicek
607d991424 Fixes build on newer Linux systems. 2010-04-14 15:35:08 +02:00
Ondrej Zajicek
dcc6049444 Fixes IPv6 build on older systems. 2010-04-14 14:46:21 +02:00
Ondrej Zajicek
d759c1a6f8 NEWS and version update. 2010-04-09 17:42:39 +02:00
Ondrej Zajicek
de14a7c7aa Ignore routes with next-hop 127.0.0.1 on BSD. 2010-04-09 00:56:47 +02:00
Ondrej Zajicek
a9f380fe83 On BSD, consider unmarked non-device routes as alien. 2010-04-08 18:41:17 +02:00
Ondrej Zajicek
646b24d932 Minor changes. 2010-04-08 17:45:50 +02:00
Ondrej Zajicek
44d4ab7a96 Configurable syslog name.
Also fixes a bug in syslog initialization.
2010-04-07 15:34:45 +02:00
Ondrej Zajicek
c429d4a4ba Restrict export of device routes to the kernel protocol.
In usual configuration, such export is already restricted
with the aid of the direct protocol but there are some
races that can circumvent it. This makes it harder to
break kernel device routes. Also adds an option to
disable this restriction.
2010-04-04 15:41:31 +02:00
Ondrej Zajicek
d2d2b5d2ae Ignore some kernel messages. 2010-04-03 16:51:33 +02:00
Ondrej Zajicek
44aa101cd0 Fixes related to routes with link-local gw on BSD. 2010-04-03 11:42:18 +02:00
Ondrej Zajicek
46a82e9c2c Fixes missing header. 2010-04-03 10:45:21 +02:00
Ondrej Zajicek
e7b09e4ab9 Use SO_BINDTODEVICE also in Linux/IPv6. 2010-04-02 16:11:46 +02:00
Ondrej Zajicek
97ab4c3498 Fixes link-local addresses on BSD. 2010-04-02 11:36:38 +02:00
Ondrej Zajicek
bed417288e Minor fixes to previous patches. 2010-04-02 11:31:20 +02:00
Ondrej Zajicek
eb0f129fce Merge branch 'socket2' into new 2010-03-26 18:53:31 +01:00
Ondrej Zajicek
af157fa3db Disable multiple OSPF pseudointerfaces on BSD. 2010-03-26 14:48:01 +01:00
Ondrej Zajicek
97e46d28ff Adds check for no protocol and some minor CLI fixes.
- Adds check to deny config file with no specified protocol to prevent
  loading of empty config file.
- Moves CLI init before config parse to receive immediate error message
  when cannot open control socket.
- Fixes socket name path check and other error handling in CLI init.
2010-03-17 12:19:22 +01:00
Ondrej Zajicek
0aad2b9292 Temporary OSPF commit - sockets. 2010-03-14 16:36:59 +01:00
Ondrej Zajicek
54305181f6 Merge branch 'new' into socket2 2010-03-11 18:55:59 +01:00
Ondrej Zajicek
afa9f66c27 Adds support for PTP links on BSD. 2010-03-10 01:04:09 +01:00
Ondrej Zajicek
53434e44a9 Better flushing of interfaces.
When device protocol goes down, interfaces should be flushed
asynchronously (in the same way like routes from protocols are flushed),
when protocol goes to DOWN/HUNGRY.

This fixes the problem with static routes staying in kernel routing
table after BIRD shutdown.
2010-02-27 16:00:07 +01:00
Ondrej Zajicek
ff2857b03d Many changes in (mainly) kernel syncers.
- BSD kernel syncer is now self-conscious and can learn alien routes
- important bugfix in BSD kernel syncer (crash after protocol restart)
- many minor changes and bugfixes in kernel syncers and neighbor cache
- direct protocol does not generate host and link local routes
- min_scope check is removed, all routes have SCOPE_UNIVERSE by default
- also fixes some remaining compiler warnings
2010-02-26 10:55:58 +01:00
Ondrej Zajicek
e81b440f68 Fix configure to enable warnings and fix most of them. 2010-02-21 14:34:53 +01:00
Ondrej Zajicek
e0a45fb421 Restricted read-only CLI.
Also adds support for executing commands using birdc <cmd>.
2010-02-21 09:57:26 +01:00
Ondrej Zajicek
dca75fd7c2 Removes phantom protocol from the pipe design.
It seems that by adding one pipe-specific exception to route
announcement code and by adding one argument to rt_notify() callback i
could completely eliminate the need for the phantom protocol instance
and therefore make the code more straightforward. It will also fix some
minor bugs (like ignoring debug flag changes from the command line).
2010-02-13 12:26:26 +01:00
Ondrej Zajicek
2af25a971a Fixes a crash caused by missing error hook on BGP listening socket.
Error happened when too many BGP connections arrived in one moment
(ECONNABORTED).
2010-02-11 11:12:58 +01:00
Ondrej Zajicek
353729f513 Temporary OSPF commit - socket changes. 2010-02-11 10:23:35 +01:00
Ondrej Zajicek
75f8861898 NEWS and version update. 2010-02-10 16:18:17 +01:00
Ondrej Zajicek
7d1966689f RTF_CLONING is removed in FreeBSD 8. 2010-02-10 14:57:16 +01:00
Ondrej Zajicek
76b53a4e20 Adds some log messages related to configure.
Also fixes a bug in the previous patch.
2010-02-06 22:57:51 +01:00