Statistics
| Branch: | Revision:

iof-bird-daemon / sysdep / unix @ 48e5f32d

# Date Author Comment
48e5f32d 02/06/2014 04:46 PM Ondrej Zajicek

Many changes in I/O and OSPF sockets and packet handling.

I/O:
- BSD: specify src addr on IP sockets by IP_HDRINCL
- BSD: specify src addr on UDP sockets by IP_SENDSRCADDR
- Linux: specify src addr on IP/UDP sockets by IP_PKTINFO
- IPv6: specify src addr on IP/UDP sockets by IPV6_PKTINFO...

283c7dfa 11/25/2013 05:42 PM Ondrej Zajicek

Merge branch 'master' into add-path

90eb5e7a 11/25/2013 12:44 PM Ondrej Zajicek

Use ISO 8601 timeformats by default.

e237b28a 11/25/2013 12:21 AM Ondrej Zajicek

Changes primary addr selection on BSD to respect SIOCGIFADDR ioctl() result.

Thanks to Alexander V. Chernikov for the original patch.

736e143f 11/23/2013 10:50 AM Ondrej Zajicek

Merge branch 'master' into add-path

Conflicts:

filter/filter.c
nest/proto.c
nest/rt-table.c
proto/bgp/bgp.h
proto/bgp/config.Y
56027b5c 11/22/2013 08:58 PM Ondrej Zajicek

Minor fix in log_commit() w.r.t. changes in BFD branch.

0aeac9cb 11/22/2013 01:48 AM Ondrej Zajicek

Merge commit 'origin/bfd'

8931425d 11/22/2013 01:12 AM Ondrej Zajicek

Fixes problem with RIP on multiple ifaces on BSD.

RIP sockets for multiple ifaces collided, because we cannot bind to
a specific iface on BSD. Workarounded by SO_REUSEPORT.

Thanks to Eugene M. Zheganin for the bugreport.

1ec52253 11/19/2013 09:33 PM Ondrej Zajicek

BFD protocol, ready for release.

Supports OSPF and BGP and also statically configured sessions.

f8cc7396 10/15/2013 08:57 AM Ondrej Zajicek

Forces KRT rescan on syncer startup with multi syncer config.

Thanks to Sergey Popovich for the patch.

1cd198cf 10/05/2013 08:45 PM Ondrej Filip

Flag -f "run in foreground" added as requested by a package maintainter.

0e175f9f 10/05/2013 06:12 PM Ondrej Zajicek

Fixes some BFD bugs and makes logging thread-safe.

e7c23802 10/05/2013 05:30 PM Ondrej Zajicek

Implements PID file support.

Thanks to Thierry Fournier for the original patch.

6a8d3f1c 09/16/2013 09:57 PM Ondrej Zajicek

BFD work in progress.

Now it compiles and mostly works.

2a0130f9 09/10/2013 11:01 AM Ondrej Zajicek

Fixes a bug in kernel extended attribute processing.

The bug caused that krt_prefsrc attribute was not processed when a route
received from a kernel protocol was exported to another kernel protocol.

Thanks to Sergey Popovich for a bugreport.

bf139664 09/10/2013 10:09 AM Ondrej Zajicek

Initial BFD commit, work in progress.

1103b32e 07/25/2013 08:33 PM Ondrej Zajicek

Allows to define constants of all filter types.

508d9360 07/25/2013 11:15 AM Ondrej Zajicek

Implements eval command and minor CLI cleanups.

Implemented eval command can be used to evaluate expressions.

The patch also documents echo command and allows to use log classes
instead of integer as a mask for echo.

a0b176e3 07/24/2013 12:20 PM Ondrej Zajicek

Fixes header file name.

Thanks to Fritz Grimpen for the patch.

354496ac 07/11/2013 11:50 AM Ondrej Zajicek

Some fixes for TTL security.

c6964c30 07/04/2013 04:02 PM Ondrej Zajicek

Makes krt.c much more readable.

70e212f9 06/25/2013 01:39 PM Ondrej Zajicek

Implements TTL security for OSPF and RIP.

Interfaces for OSPF and RIP could be configured to use (and request)
TTL 255 for traffic to direct neighbors.

Thanks to Simon Dickhoven for the original patch for RIPng.

ef4a50be 06/24/2013 02:37 PM Ondrej Zajicek

Better packet priority and traffic class handling.

Implements support for IPv6 traffic class, sets higher priority for OSPF
and RIP outgoing packets by default and allows to configure ToS/DS/TClass
IP header field and the local priority of outgoing packets.

a92cf57d 12/26/2012 11:40 AM Ondrej Zajicek

Implements undo command and optional timeout for configuration

Several new configure command variants:

configure undo - undo last reconfiguration
configure timeout - configure with scheduled undo if not confirmed in timeout
configure confirm - confirm last configuration...

cf98be7b 11/10/2012 01:26 PM Ondrej Zajicek

Allows rejected routes to be kept and examined.

When 'import keep rejected' protocol option is activated, routes
rejected by the import filter are kept in the routing table, but they
are hidden and not propagated to other protocols. It is possible to
examine them using 'show route rejected'.

0343d066 08/29/2012 10:42 AM Ondrej Zajicek

Fixes a bug in primary IP selection.

094d2bdb 08/14/2012 02:46 PM Ondrej Zajicek

Implements ADD-PATH extension for BGP.

Allows to send and receive multiple routes for one network by one BGP
session. Also contains necessary core changes to support this (routing
tables accepting several routes for one network from one protocol).
It needs some more cleanup before merging to the master branch.

c4b76d7b 07/18/2012 05:35 PM Ondrej Zajicek

Rename sk_new() to avoid name collision with OpenSSL.

4be266a9 07/18/2012 05:29 PM Ondrej Zajicek

Implements wildcard matching in config file include.

Also fixes some minor bugs in include.

Thanks Kelly Cochran for suggestion and draft patch.

e14bd380 05/03/2012 12:04 PM Ondrej Zajicek

Fixes flushing of device routes.

ab188fb7 05/03/2012 10:25 AM Ondrej Zajicek

Implements build options to specify socket dir and suffix.

7a2c48da 04/30/2012 08:34 PM Ondrej Zajicek

Cleanup in sysdep KRT code, part 3.

Just one more renaming, old krt_set_notify() to krt_replace_rte().

f1aceff5 04/30/2012 08:25 PM Ondrej Zajicek

Cleanup in sysdep KRT code, part 2.

Remove support for historic Linux kernels,
merge krt-iface, krt-set and krt-scan stub headers.

396dfa90 04/30/2012 01:31 PM Ondrej Zajicek

Cleanup in sysdep KRT code, part 1.

OS-dependent functions renamed to be more consistent,
prepared to merge krt-set and krt-scan headers.

Name changes:

struct krt_if_params -> struct kif_params
struct krt_if_status -> struct kif_status
struct krt_set/scan_params -> struct krt_params...

ebecb6f6 04/15/2012 01:28 PM Ondrej Zajicek

Implements generalized import hooks.

Thanks to Alexander V. Chernikov for the original patch.

ae8b3001 04/15/2012 01:15 PM Ondrej Zajicek

Merge commit 'origin/master'

ed7c4b0c 04/09/2012 12:19 PM Ondrej Filip

Small bugfix in error message related to reconfiguration.

bf2abe2f 03/30/2012 09:04 AM Ondrej Zajicek

Merge branch 'soon'

Conflicts:

nest/proto.c
nest/rt-table.c
c9df01d3 03/25/2012 05:44 PM Ondrej Zajicek

Fixes several minor bugs in kernel syncer.

9ba2798c 03/23/2012 04:22 PM Ondrej Zajicek

Adds krt_metric linux route attribute.

72aed1a0 03/22/2012 11:26 PM Ondrej Zajicek

Adds krt_source route attribute.

Thanks Jeremie Dimino for the original patch.

df279118 03/19/2012 12:00 PM Ondrej Zajicek

Fixes problem with dirname().

Thanks Henrique de Moraes Holschuh for the original patch.

af582c48 03/18/2012 04:32 PM Ondrej Zajicek

Route Origin Authorization basics.

- ROA tables, which are used as a basic part for RPKI.
- Commands for examining and modifying ROA tables.
- Filter operators based on ROA tables consistent with RFC 6483.
46c1a583 02/03/2012 10:50 AM Ondrej Zajicek

Fixes a bug causing crash during soft reconfiguration of export to kernel proto.

39c028e9 01/24/2012 10:31 AM Ondrej Zajicek

Assign default protocol preference via proto_config_new().

The patch from Alexander V. Chernikov.

09686693 01/23/2012 02:15 AM Ondrej Zajicek

Implements handling of BSD iface arrival/departure notifications.

Thanks to Alexander V. Chernikov for original patch.

d7f469c1 01/09/2012 01:41 AM Ondrej Zajicek

Some minor fixes.

eb1451a3 01/08/2012 02:27 PM Ondrej Zajicek

Better support for link-local addresses in IO code.

a7f23f58 11/06/2011 11:31 PM Ondrej Zajicek

Implements protocol templates.

Based on the patch from Alexander V. Chernikov.
Extended to support almost all protocols.
Uses 'protocol bgp NAME from TEMPLATE { ... }' syntax.

9b7fdfc8 10/09/2011 11:41 PM Ondrej Zajicek

Fixes for include.

32f95476 10/06/2011 08:48 PM Ondrej Zajicek

Signal problems with route installation to kernel tables.

48ec367a 09/11/2011 07:21 PM Ondrej Filip

Configuration can include other files.

b1b19433 08/16/2011 09:13 PM Ondrej Zajicek

The generalized TTL security mechanism (RFC 5082) support.

Thanks to Alexander V. Chernikov for the patch.

beeda6af 07/07/2011 11:14 PM Ondrej Zajicek

Removes timers for stub interfaces. Also fixes some minor bugs.

e8b89a61 05/15/2011 02:29 PM Ondrej Zajicek

Update and document the privilege restriction.

1bc26957 05/10/2011 12:42 AM Ondrej Zajicek

Allows run with restricted privileges.

Adds option -u and -g to specify user and group.
When different user (than root) is specified,
linux capabilities CAP_NET_* are kept.

acc93efd 04/27/2011 10:31 PM Ondrej Zajicek

Use constants from /etc/iproute2/rt_* files.

71ca7716 04/13/2011 10:32 AM Ondrej Zajicek

Adds support for several Linux kernel route attributes.

52a43ae3 03/28/2011 08:46 PM Ondrej Zajicek

Minor changes in addresses.

Mainly changes IA_UNNUMBERED to IA_PEER and adds IA_HOST. Also do not
show broadcast addr in show interfaces. Nobody cares for that.

d0e9b36d 03/23/2011 04:15 PM Ondrej Zajicek

Added header file.

93e868c7 03/13/2011 10:33 AM Ondrej Zajicek

Implements Router Advertisement protocol.

f25cb0ef 11/11/2010 09:03 AM Ondrej Zajicek

Implements link state detection.

Also changes some symbol names (IFF_ADMIN_DOWN -> IFF_SHUTDOWN,
IFF_LINK_UP -> IFF_ADMIN_UP).

0d1b3c4c 09/20/2010 11:01 AM Ondrej Zajicek

Changes print-like filter commands to use a log instead of a stderr.

And extends the log subsystem to better handle that.

f428631c 08/02/2010 11:12 PM Ondrej Zajicek

Ignore warning when BGP peer is unreachable.

f038f0a6 07/12/2010 07:39 PM Ondrej Zajicek

Fixes missing check in reconfiguration.

9be9a264 07/12/2010 03:39 PM Ondrej Zajicek

Implements proper multihop BGP.

Also does some incompatible changes to config file syntax,
like removing 'via IP' from multihop option.

acb60628 06/02/2010 08:20 PM Ondrej Zajicek

Implements command that shows memory usage.

002b6423 05/21/2010 10:00 AM Ondrej Zajicek

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.

47597724 05/14/2010 02:54 PM Ondrej Zajicek

Handle EPIPE as a common connection close event.

ba321706 04/27/2010 10:39 PM Ondrej Zajicek

Better support for /31 networks.

607d9914 04/14/2010 01:35 PM Ondrej Zajicek

Fixes build on newer Linux systems.

dcc60494 04/14/2010 12:46 PM Ondrej Zajicek

Fixes IPv6 build on older systems.

646b24d9 04/08/2010 03:45 PM Ondrej Zajicek

Minor changes.

44d4ab7a 04/07/2010 01:34 PM Ondrej Zajicek

Configurable syslog name.

Also fixes a bug in syslog initialization.

c429d4a4 04/04/2010 01:41 PM Ondrej Zajicek

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...

46a82e9c 04/03/2010 08:45 AM Ondrej Zajicek

Fixes missing header.

e7b09e4a 04/02/2010 02:11 PM Ondrej Zajicek

Use SO_BINDTODEVICE also in Linux/IPv6.

bed41728 04/02/2010 09:31 AM Ondrej Zajicek

Minor fixes to previous patches.

eb0f129f 03/26/2010 05:53 PM Ondrej Zajicek

Merge branch 'socket2' into new

97e46d28 03/17/2010 11:19 AM Ondrej Zajicek

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....

54305181 03/11/2010 05:55 PM Ondrej Zajicek

Merge branch 'new' into socket2

53434e44 02/27/2010 03:00 PM Ondrej Zajicek

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...

ff2857b0 02/26/2010 09:55 AM Ondrej Zajicek

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...

e81b440f 02/21/2010 01:34 PM Ondrej Zajicek

Fix configure to enable warnings and fix most of them.

e0a45fb4 02/21/2010 08:57 AM Ondrej Zajicek

Restricted read-only CLI.

Also adds support for executing commands using birdc <cmd>.

dca75fd7 02/13/2010 11:26 AM Ondrej Zajicek

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...

2af25a97 02/11/2010 10:12 AM Ondrej Zajicek

Fixes a crash caused by missing error hook on BGP listening socket.

Error happened when too many BGP connections arrived in one moment
(ECONNABORTED).

353729f5 02/11/2010 09:23 AM Ondrej Zajicek

Temporary OSPF commit - socket changes.

76b53a4e 02/06/2010 09:57 PM Ondrej Zajicek

Adds some log messages related to configure.

Also fixes a bug in the previous patch.

c37e7851 02/02/2010 11:19 PM Ondrej Zajicek

Makes date/time formats configurable.

861f223a 01/06/2010 10:20 PM Ondrej Zajicek

BSD compatibility fix.

cf31112f 01/03/2010 11:17 AM Ondrej Zajicek

Implements MRTdump feature.

63542845 12/14/2009 07:37 PM Ondrej Zajicek

Merge branch 'dev' into ospf3

Conflicts:

proto/ospf/lsreq.c
proto/ospf/lsupd.c
proto/ospf/rt.c
a6250a7d 11/26/2009 10:23 PM Ondrej Zajicek

Fix -p option.

a4644ed6 11/19/2009 10:44 AM Ondrej Zajicek

Implement option to exit after config file parsing.

653b4015 11/13/2009 01:54 PM Ondrej Zajicek

After shutdown, BIRD should have exit code 0.

d3f36e59 11/13/2009 01:43 PM Ondrej Zajicek

Fixes BIRD socket unlink.

4ac7c834 11/09/2009 10:22 PM Ondrej Zajicek

Use IPv6 checksums in OSPFv3.

3f22fa9e 11/09/2009 09:54 PM Ondrej Zajicek

Merge branch 'dev' into ospf3

ea89da38 10/11/2009 04:56 PM Ondrej Zajicek

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...