Commit graph

69 commits

Author SHA1 Message Date
Pavel Tvrdík
65d2a88dd2 RPKI protocol with one cache server per protocol
The RPKI protocol (RFC 6810) using the RTRLib
(http://rpki.realmv6.org/) that is integrated inside
the BIRD's code.

Implemeted transports are:
 - unprotected transport over TCP
 - secure transport over SSHv2

Example configuration of bird.conf:
  ...
  roa4 table r4;
  roa6 table r6;

  protocol rpki {
    debug all;

    # Import both IPv4 and IPv6 ROAs
    roa4 { table r4; };
    roa6 { table r6; };

    # Set cache server (validator) address,
    # overwrite default port 323
    remote "rpki-validator.realmv6.org" port 8282;

    # Overwrite default time intervals
    retry   10;         # Default 600 seconds
    refresh 60;         # Default 3600 seconds
    expire 600;         # Default 7200 seconds
  }

  protocol rpki {
    debug all;

    # Import only IPv4 routes
    roa4 { table r4; };

    # Set cache server address to localhost,
    # use default ports tcp => 323 or ssh => 22
    remote 127.0.0.1;

    # Use SSH transport instead of unprotected transport over TCP
    ssh encryption {
      bird private key "/home/birdgeek/.ssh/id_rsa";
      remote public key "/home/birdgeek/.ssh/known_hosts";
      user "birdgeek";
    };
  }
  ...
2016-12-07 09:35:24 +01:00
Ondrej Zajicek (work)
af678af0d5 Merge remote-tracking branch 'origin/master' into int-new 2016-05-12 18:03:23 +02:00
Jan Moskyto Matejka
7152e5efbb Build system reworked to one global Makefile with includes and no nesting
Also removed the lib-dir merging with sysdep. Updated #include's
accordingly.

Fixed make doc on recent Debian together with moving generated doc into
objdir.

Moved Makefile.in into root dir

Retired all.o and birdlib.a
Linking the final binaries directly from all the .o files.
2016-05-10 14:07:34 +02:00
Ondrej Zajicek (work)
937e75d8f1 Add the Babel routing protocol (RFC 6126)
This patch implements the IPv6 subset of the Babel routing protocol.
Based on the patch from Toke Hoiland-Jorgensen, with some heavy
modifications and bugfixes.

Thanks to Toke Hoiland-Jorgensen for the original patch.
2016-04-28 18:01:40 +02:00
Jan Moskyto Matejka
b25509e512 All the current pthread implementations are OK and working with us.
No more need to disable pthread for specific BSD's.
2016-02-25 18:22:27 +01:00
Jan Moskyto Matejka
0e965f6991 All the current pthread implementations are OK and working with us.
No more need to disable pthread for specific BSD's.
2016-01-21 14:55:33 +01:00
Ondrej Zajicek (work)
d549b83fc2 Delete ipv6 option from configure 2015-12-20 19:47:36 +01:00
Ondrej Zajicek (work)
fe9f1a6ded Initial commit on integrated BIRD
New data types net_addr and variants (in lib/net.h) describing
network addresses (prefix/pxlen). Modifications of FIB structures
to handle these data types and changing everything to use these
data types instead of prefix/pxlen pairs where possible.

The commit is WiP, some protocols are not yet updated (BGP, Kernel),
and the code contains some temporary scaffolding.

Comments are welcome.
2015-11-05 12:48:52 +01:00
Ondrej Zajicek
d776540811 Adds configure error message. 2014-02-12 12:57:38 +01:00
Ondrej Zajicek
9ae0f4b78c Fixes autoconf check for ncurses. 2014-02-07 11:46:01 +01:00
Ondrej Zajicek
547d3bf45d Allows pthreads by default on Linux and FreeBSD only. 2013-11-22 22:42:47 +01:00
Ondrej Zajicek
1ec522538f BFD protocol, ready for release.
Supports OSPF and BGP and also statically configured sessions.
2013-11-19 22:33:48 +01:00
Ondrej Zajicek
6a8d3f1c1f BFD work in progress.
Now it compiles and mostly works.
2013-09-16 23:57:40 +02:00
Ondrej Zajicek
32622d0ea3 Merge branch 'birdcl' 2013-04-23 02:54:13 +02:00
Ondrej Zajicek
efd6d12b97 Adds two new default GCC options.
Adds two new default GCC options related to optimizations
(-fno-strict-aliasing and -fno-strict-overflow). This
should fix some hyperaggressive GCC optimizations.

Also updates autoconf option detection.
2013-04-17 15:09:50 +02:00
Tomas Hlavacek
8322ecde12 Add lightweight client - birdcl
Restructure client/ subdir. Add two different flavors of client.
The full featured birdc client code is in client/birdc/.
The new light client birtcl is in client/birdcl/.
Common sources of both clients are directly in client/.

Rework on-line auto-completion in client/command.c to conditionally turn off
ncurses-specific code.

Add lightweight client without libreadline and ncurses dependencies - birdcl.
The birdcl lacks support of history, on-line auto-completion and there
are different implementations of "more" functionality and help on '?' press.
New client operates in canonical terminal mode (apart from "more" display)
and therefore all commands have to be executed by a return key including help
commands (called by '?' character in the end of the line).
Apart from these limitations the interaction style should be the same as
for the full client - birdc.
Build of birdcl is always on (independent on --enable-client parameter).
2013-03-19 18:03:49 +01:00
Ondrej Filip
d760229ab8 DragonFly support add - thanks to john@marino.st 2012-08-08 14:10:31 +02:00
Ondrej Zajicek
ab188fb76d Implements build options to specify socket dir and suffix. 2012-05-03 12:25:15 +02:00
Ondrej Zajicek
f1aceff59b Cleanup in sysdep KRT code, part 2.
Remove support for historic Linux kernels,
merge krt-iface, krt-set and krt-scan stub headers.
2012-04-30 22:25:24 +02:00
Ondrej Zajicek
acc93efd4c Use constants from /etc/iproute2/rt_* files. 2011-04-28 00:31:37 +02:00
Ondrej Zajicek
489c308a75 Minor fixes. 2011-04-05 11:41:18 +02:00
Ondrej Zajicek
93e868c730 Implements Router Advertisement protocol. 2011-03-13 11:33:50 +01:00
Ondrej Zajicek
646b24d932 Minor changes. 2010-04-08 17:45:50 +02:00
Ondrej Zajicek
bed417288e Minor fixes to previous patches. 2010-04-02 11:31:20 +02:00
Ondrej Zajicek
b1c030b0ba Adds autoconf test for -Wno-pointer-sign compliler option. 2010-03-24 16:39:18 +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
3f22fa9e74 Merge branch 'dev' into ospf3 2009-11-09 22:54:39 +01:00
Ondrej Zajicek
7965e17d67 Fixes build in Debian GNU/kFreeBSD. 2009-11-02 16:25:05 +01:00
Ondrej Zajicek
e6ff7a08e4 Replaces local endianity testing macro with the common one.
That makes it easier to integrate BIRD to crosscompiling
buildsystems.
2009-10-27 22:25:36 +01:00
Ondrej Zajicek
c3226991a0 Temporary OSPFv3 development commit 2009-08-21 09:27:52 +02:00
Ondrej Filip
dc16584ac2 Small change to make BIRD's IPv6 packaging easier 2009-06-02 00:28:08 +02:00
Ondrej Zajicek
d0c64519e7 Ugly hack for finding readline on NetBSD 2009-05-22 01:13:07 +02:00
Ondrej Zajicek
8de11deb91 Better checks for M4 in configure. 2009-05-22 00:26:30 +02:00
Ondrej Filip
ef9c9ab9b6 OpenBSD port related changes. 2009-05-11 01:32:49 +02:00
Ondrej Zajicek
08cca48a14 Uprava configure 2008-11-06 19:13:55 +01:00
Ondrej Zajicek
fd91ae3325 Fix problem with local time changes. 2008-11-05 22:36:49 +01:00
Ondrej Zajicek
baa9ef18c6 These warnings are so abundant (because char * / byte * mix) that they
are completely useless.
2008-11-04 14:52:47 +01:00
Martin Mares
54c411f6af Add more warnings if --enable-warnings is turned on. (probably requires
gcc-3.0 or newer, but I hope it's OK)
2004-06-05 09:57:35 +00:00
Ondrej Filip
22122d4d4c Now, only one AC_OUTPUT is used. 2004-06-01 10:10:09 +00:00
Martin Mares
9f387e11a3 Make the check for <linux/rtnetlink.h> work with recent libc's. 2004-05-31 20:49:11 +00:00
Ondrej Filip
6de6292312 Better readline checking. 2004-05-31 15:08:29 +00:00
Ondrej Filip
7cb37e6fd2 Added some more test (alloca.h, sa_len) etc.
Add AC_OUTPUT before AC_OUTPUT_COMMANDS
2004-05-31 10:26:18 +00:00
Martin Mares
416e3ee4b0 Get Linux version from <linux/version.h>, not uname -r. 2000-05-20 11:00:14 +00:00
Martin Mares
6b5ab87581 Added `--disable-memcheck' switch which avoids linking of efence/dmalloc,
so that we can run in debugging mode with large routing tables.
2000-05-08 14:51:57 +00:00
Martin Mares
f9254d2349 Autoconf is *evil*. The sysconfdir and similar variables are unusable in
C includes as they contain substitutions specific to make.

Worked around by creating sysconf/paths.h which is created from
the Makefile instead of by the configure script.
2000-05-08 14:19:47 +00:00
Martin Mares
c0760ab0fc Debugging compilation is no longer default. This means that the configuration
file is expected in $prefix/etc etc.

Use --enable-debug to request debugging.
2000-05-08 13:56:11 +00:00
Martin Mares
c817b9916f Added --enable-ipv6 which tells configure to select the right configuration
for IPv6 automatically.

Added --enable-warnings which turns off some more warnings.

Default protocol list now depends on --enable-ipv6.
2000-05-04 20:18:46 +00:00
Ondrej Filip
92bbd812e3 OSPF added to default protocols. 2000-05-02 22:34:35 +00:00
Martin Mares
8f10985e1e Added BGP to the default list of protocols we build. 2000-04-17 13:14:48 +00:00
Martin Mares
df0cf75dc8 Hmmm, libreadline 2.1 seems to be the oldest version we work with. 2000-02-24 18:46:24 +00:00