summaryrefslogtreecommitdiff
path: root/sysdep/unix
AgeCommit message (Collapse)Author
2010-05-21Fixes bug on Linux 2.4.x - kernel sync does not work until restart of kernel ↵Ondrej Zajicek
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-14Handle EPIPE as a common connection close event.Ondrej Zajicek
2010-04-28Better support for /31 networks.Ondrej Zajicek
2010-04-14Fixes build on newer Linux systems.Ondrej Zajicek
2010-04-14Fixes IPv6 build on older systems.Ondrej Zajicek
2010-04-08Minor changes.Ondrej Zajicek
2010-04-07Configurable syslog name.Ondrej Zajicek
Also fixes a bug in syslog initialization.
2010-04-04Restrict export of device routes to the kernel protocol.Ondrej Zajicek
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-03Fixes missing header.Ondrej Zajicek
2010-04-02Use SO_BINDTODEVICE also in Linux/IPv6.Ondrej Zajicek
2010-04-02Minor fixes to previous patches.Ondrej Zajicek
2010-03-26Merge branch 'socket2' into newOndrej Zajicek
2010-03-17Adds check for no protocol and some minor CLI fixes.Ondrej Zajicek
- 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-11Merge branch 'new' into socket2Ondrej Zajicek
2010-02-27Better flushing of interfaces.Ondrej Zajicek
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-26Many changes in (mainly) kernel syncers.Ondrej Zajicek
- 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-21Fix configure to enable warnings and fix most of them.Ondrej Zajicek
2010-02-21Restricted read-only CLI.Ondrej Zajicek
Also adds support for executing commands using birdc <cmd>.
2010-02-13Removes phantom protocol from the pipe design.Ondrej Zajicek
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-11Fixes a crash caused by missing error hook on BGP listening socket.Ondrej Zajicek
Error happened when too many BGP connections arrived in one moment (ECONNABORTED).
2010-02-11Temporary OSPF commit - socket changes.Ondrej Zajicek
2010-02-06Adds some log messages related to configure.Ondrej Zajicek
Also fixes a bug in the previous patch.
2010-02-03Makes date/time formats configurable.Ondrej Zajicek
2010-01-06BSD compatibility fix.Ondrej Zajicek
2010-01-03Implements MRTdump feature.Ondrej Zajicek
2009-12-14Merge branch 'dev' into ospf3Ondrej Zajicek
Conflicts: proto/ospf/lsreq.c proto/ospf/lsupd.c proto/ospf/rt.c
2009-11-26Fix -p option.Ondrej Zajicek
2009-11-19Implement option to exit after config file parsing.Ondrej Zajicek
2009-11-13After shutdown, BIRD should have exit code 0.Ondrej Zajicek
2009-11-13Fixes BIRD socket unlink.Ondrej Zajicek
2009-11-09Use IPv6 checksums in OSPFv3.Ondrej Zajicek
2009-11-09Merge branch 'dev' into ospf3Ondrej Zajicek
2009-10-11Workaround for stupid callback scheduler.Ondrej Zajicek
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-09-04Clear memory allocated by ralloc().Ondrej Zajicek
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-04Temporary OSPFv3 development commit (changing multicast support).Ondrej Zajicek
2009-08-27Temporary OSPFv3 development commitOndrej Zajicek
2009-07-14Fixes bug in CLI TX buffer management.Ondrej Zajicek
2009-06-26Fixes bug on TCP passive socket binding on BSD.Ondrej Zajicek
BGP on BSD was bound to random port. I am surprised that nobody noticed it already.
2009-06-25Minor bugfix.Ondrej Zajicek
2009-06-20Fixes bug in scheduling of callback by main loop.Ondrej Zajicek
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-19Adds support for soft reconfiguration.Ondrej Zajicek
2009-06-18Implements option that changes BGP listening socket parametres.Ondrej Zajicek
2009-06-01The pipe cleanup.Ondrej Zajicek
2009-05-31Changes pipes to transfer all routes between routing table, not just optimal ↵Ondrej Zajicek
routes.
2009-05-29Implements primary address selection base on 'primary' option.Ondrej Zajicek
2009-05-29Add 'primary' configuration option.Ondrej Zajicek
2009-05-11OpenBSD port related changes.Ondrej Filip
2009-05-04Linux specific TCP-MD5 handling moved to sysdep/linux/sysio.hOndrej Filip
FreeBSD coded added. BSD cannot set BGP passwords itself. This has to be done by external command.
2009-05-04Syntax error fix for systems without CONFIG_SELF_CONSCIOUS (KRT_ALLOW_LEARN)Ondrej Filip
2009-03-20Fix bugs related to kernel table synchronization.Ondrej Zajicek
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.