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

385 Commits

Author SHA1 Message Date
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
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
353729f513 Temporary OSPF commit - socket changes. 2010-02-11 10:23:35 +01:00
76b53a4e20 Adds some log messages related to configure.
Also fixes a bug in the previous patch.
2010-02-06 22:57:51 +01:00
c37e78510f Makes date/time formats configurable. 2010-02-03 00:19:24 +01:00
861f223a53 BSD compatibility fix. 2010-01-06 23:20:43 +01:00
cf31112f0d Implements MRTdump feature. 2010-01-03 12:17:52 +01:00
63542845df Merge branch 'dev' into ospf3
Conflicts:

	proto/ospf/lsreq.c
	proto/ospf/lsupd.c
	proto/ospf/rt.c
2009-12-14 20:37:32 +01:00
a6250a7d10 Fix -p option. 2009-11-26 23:23:29 +01:00
a4644ed6ab Implement option to exit after config file parsing. 2009-11-19 11:44:17 +01:00
653b4015f1 After shutdown, BIRD should have exit code 0. 2009-11-13 14:54:43 +01:00
d3f36e5978 Fixes BIRD socket unlink. 2009-11-13 14:43:29 +01:00
4ac7c8341c Use IPv6 checksums in OSPFv3. 2009-11-09 23:22:53 +01:00
3f22fa9e74 Merge branch 'dev' into ospf3 2009-11-09 22:54:39 +01:00
ea89da381f Workaround for stupid callback scheduler.
There is no reak callback scheduler and previous behavior causes
bad things during hard congestion (like BGP hold timeouts).

Smart callback scheduler is still missing, but main loop was
changed such that it first processes all tx callbacks (which
are fast enough) (but max 4* per socket) + rx callbacks for CLI,
and in the second phase it processes one rx callback per
socket up to four sockets (as rx callback can be slow when
there are too many protocols, because route redistribution
is done synchronously inside rx callback). If there is event
callback ready, second phase is skipped in 90% of iterations
(to speed up CLI during congestion).
2009-10-11 18:56:16 +02:00
daeeb8e982 Clear memory allocated by ralloc().
This also fixes bug that timer->recurrent was not cleared
in tm_new() and unexpected recurrence of startup timer
in BGP confused state machine and caused crash.
2009-09-04 11:24:08 +02:00
f9c799a00e Temporary OSPFv3 development commit (changing multicast support). 2009-09-04 11:06:51 +02:00
061ab802a6 Temporary OSPFv3 development commit 2009-08-27 18:25:46 +02:00
6baef17ecf Fixes bug in CLI TX buffer management. 2009-07-14 14:18:54 +02:00
2d785e8d6a Fixes bug on TCP passive socket binding on BSD.
BGP on BSD was bound to random port. I am surprised that
nobody noticed it already.
2009-06-26 13:33:41 +02:00
1876e18d32 Minor bugfix. 2009-06-25 15:44:43 +02:00
4323099da9 Fixes bug in scheduling of callback by main loop.
If other side of a socket is sending data faster than
BIRD is processing, BIRD does not schedule any other
callbacks (events, timers, rx/tx callbacks).
2009-06-20 00:59:32 +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
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
6f68f066b6 Add 'primary' configuration option. 2009-05-29 13:32:24 +02:00
ef9c9ab9b6 OpenBSD port related changes. 2009-05-11 01:32:49 +02:00
2b70f0742e Linux specific TCP-MD5 handling moved to sysdep/linux/sysio.h
FreeBSD coded added. BSD cannot set BGP passwords itself.
This has to be done by external command.
2009-05-04 18:17:46 +02:00
1bc4b2cc84 Syntax error fix for systems without CONFIG_SELF_CONSCIOUS (KRT_ALLOW_LEARN) 2009-05-04 17:49:56 +02:00
3d574679b8 Fix bugs related to kernel table synchronization.
KRF_INSTALLED flag was not cleared during reconfiguration
that lead to not removing routes during reconfigure when
export rules changed.

We also should not try to remove routes we didi not installed,
on Linux this leads to warnings (as kernel checks route source
field and do not allow to remove non-bird routes) but we should
not rely on it.
2009-03-20 12:58:21 +01:00
cb53039271 Rate limit for most abundant log messages 2009-02-26 14:23:54 +01:00
35164c5017 rx_hook may be cleaned in some callback so we check it before
executing sk_read().
2008-12-12 17:48:03 +01:00
35f983f889 Fixes segfault with multiple routing tables. 2008-11-21 18:17:03 +01:00
eac21b46f7 This is bug, isn't it? 2008-11-21 13:01:05 +01:00
fd91ae3325 Fix problem with local time changes. 2008-11-05 22:36:49 +01:00
1389f3699f Fixes bugs in IPv6 code caused by recent commits. 2008-11-05 21:39:04 +01:00
a39b165e45 Multihop BGP was completely broken, because listening socket has always
ttl 1.
2008-11-01 16:58:40 +01:00
a98fbf0f12 Merge branch 'dev' into out 2008-10-27 00:20:22 +01:00
68fa95cfec Check of socket name length 2008-10-26 23:55:38 +01:00
1567edea8d Bugfix for routing table breaking bug.
Here is a patch fixing a bug that causes breakage of a local routing
table during shutdown of Bird. The problem was caused by shutdown
of 'device' protocol before shutdown of 'kernel' protocol.  When
'device' protocol went down, the route (with local network prefix)
From different protocol (BGP or OSPF) became preferred and installed
to the kernel routing table. Such routes were broken (like
192.168.1.0/24 via 192.168.1.2). I think it is also the cause
of problem reported by Martin Kraus.

The patch disables updating of kernel routing table during shutdown of
Bird. I am not sure whether this is the best way to fix it, I would
prefer to forbid 'kernel' protocol to overwrite routes with
'proto kernel'.

The patch also fixes a problem that during shutdown sometimes routes
created by Bird remained in the kernel routing table.
2008-10-26 23:09:46 +01:00
d51aa28190 Implementation of MD5 authentication of BGP sessions. 2008-10-26 22:42:39 +01:00
97c6fa02e0 Previous patch reverted. :-( 2008-08-25 12:06:20 +00:00
030e3a79cb Buffer overflow fix. 2008-08-25 11:57:46 +00:00
057021df0d Fix behavior of ipa_opposite().
It was giving wrong results on /30 networks.
2008-08-25 11:19:49 +00:00
3c3271d9fc Close fd of config file after reconfiguration. 2008-08-24 23:24:14 +00:00
8411a37e7d Detach from the TTY properly. 2007-06-20 07:33:26 +00:00
c025b85273 Real write is only in sk_maybe_write. Previous change partially reverted.
Thank you MJ.
2005-02-14 23:15:04 +00:00
7c49f71559 Added s->err_hook wrapper that empties socket. 2005-02-14 21:28:51 +00:00