0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-22 09:41:54 +00:00
Commit Graph

2696 Commits

Author SHA1 Message Date
Pavel Tvrdík
96871cd77a Merge branch 'master' into HEAD 2015-12-17 16:58:45 +01:00
Pavel Tvrdík
4ae31b1961 RPKI: Asynchronous stopping of RTR Manager 2015-12-17 16:57:05 +01:00
Pavel Tvrdík
28af3c34a4 RPKI: hand over a roa update using slab memory 2015-12-17 16:57:05 +01:00
Pavel Tvrdík
d00f9cf766 RPKI: Improve log messages 2015-12-17 16:56:59 +01:00
Pavel Tvrdík
33b4f40acc MD5: Mormalize naming style 2015-11-24 16:01:48 +01:00
Ondrej Zajicek (work)
90f78507f4 Merge branch 'master' into rip-new 2015-11-24 15:21:11 +01:00
Jan Moskyto Matejka
ad27615760 Netlink: attribute validation before parsing
Wanted netlink attributes are defined in a table, specifying
their size and neediness. Removing the long conditions that did the
validation before.

Also parsing IPv4 and IPv6 versions regardless on the IPV6 macro.
2015-11-24 14:30:20 +01:00
Ondrej Zajicek (work)
e422ca0f29 Some consts for function arguments
Patch from Pavel Tvrdik
2015-11-24 13:52:26 +01:00
Ondrej Zajicek (work)
5126380bea Minor changes to SHA hash functions 2015-11-24 13:47:28 +01:00
Ondrej Zajicek (work)
12d752ef24 Merge commit 'origin/crypto-hash^' 2015-11-23 11:32:18 +01:00
Ondrej Zajicek (work)
1e4891e48e Nest: Fix bug in device proto
If an interface address notification is received during device protocol
shutdown/restart, BIRD crashed.

Thanks to Wei Huang for the bugreport.
2015-11-23 11:13:40 +01:00
Pavel Tvrdík
f312a837e9 Add SHA-384/512 and HMAC-SHA-384/512 crypto hash 2015-11-13 19:34:12 +01:00
Pavel Tvrdík
4035e0e79c Add SHA-224/256 and HMAC-SHA-224/256 crypto hash 2015-11-13 19:34:02 +01:00
Pavel Tvrdík
5d0c36f1da Add SHA1 and SHA1-HMAC crypto hash 2015-11-13 19:33:48 +01:00
Pavel Tvrdík
75ff08022e Add get_u64() and put_u64() into lib/unaligned.h 2015-11-13 19:31:19 +01:00
Pavel Tvrdík
fce764f90e Fix compiling with --enable-debug option 2015-11-11 11:46:38 +01:00
Jan Moskyto Matejka
9ddbfbddf8 Netlink: Allow more than 256 routing tables.
Since 2.6.19, the netlink API defines RTA_TABLE routing attribute to
allow 32-bit routing table IDs. Using this attribute to index routing
tables at Linux, instead of 8-bit rtm_table field.
2015-11-11 11:40:49 +01:00
Ondrej Zajicek (work)
86b4e17001 Nest: Fixes bug in missing cleanup during table removal
When a table is removed during reconfiguration, a reference was not
cleared in the old configuration, which breaks undo.
2015-11-09 01:01:12 +01:00
Ondrej Zajicek (work)
9b9a7143c4 Conf: Fixes bug in symbol lookup during reconfiguration
Symbol lookup by cf_find_symbol() not only did the lookup but also added
new void symbols allocated from cfg_mem linpool, which gets broken when
lookups are done outside of config parsing, which may lead to crashes
during reconfiguration.

The patch separates lookup-only cf_find_symbol() and config-modifying
cf_get_symbol(), while the later is called only during parsing. Also
new_config and cfg_mem global variables are NULLed outside of parsing.
2015-11-09 00:42:02 +01:00
Ondrej Zajicek (work)
3aed0a6ff7 IO: Fix the previous bugfix
I should check it after making some trivial changes. The original patch
from Alexander has it right.
2015-11-03 11:27:27 +01:00
Ondrej Zajicek (work)
338f85ca77 IO: Handle fd values too big for select()
If the number of sockets is too much for select(), we should at least
handle it with proper error messages and reject new sockets instead of
breaking the event loop.

Thanks to Alexander V. Chernikov for the patch.
2015-11-03 11:08:57 +01:00
Pavel Tvrdík
5c884334c5 RPKI: Better status handling 2015-11-02 12:26:44 +01:00
Pavel Tvrdík
e189e2f55d RPKI: improved rpki_get_status() 2015-10-27 17:42:13 +01:00
Pavel Tvrdík
50791a41bf RPKI: refactore status update hook line 2015-10-27 08:56:33 +01:00
Pavel Tvrdík
be9c51655d RPKI: refactore thread's communication usign pipes 2015-10-26 15:29:15 +01:00
Pavel Tvrdík
919ae5e4a7 RPKI: Improve handling protocol status 2015-10-22 16:56:34 +02:00
Pavel Tvrdík
4a62807890 Refactore dlopen rtrlib function pointers 2015-10-20 11:27:33 +02:00
Pavel Tvrdík
c050a2a7da RPKI: Improved callback status handling 2015-10-19 16:48:33 +02:00
Pavel Tvrdík
2f0660544b Fix check_file_readability function
Thanks to Martin Mares for warning.
2015-10-19 11:03:16 +02:00
Ondrej Zajicek (work)
8eb8e546dc Merge branch 'master' into rip-new 2015-10-17 14:44:34 +02:00
Ondrej Zajicek (work)
acb04cfdc5 Minor changes 2015-10-17 14:43:37 +02:00
Pavel Tvrdík
695f704389 RPKI: Add SSH Transport support
Handle reconfigure (still buggy)
2015-10-14 14:47:01 +02:00
Pavel Tvrdík
df2caa8b1d RPKI: refactore and improve
Takes into account a preferences of caches.
Fixes many bugs.

Configuration example:

    roa table roatable;

    protocol rpki {
      debug all;
      roa table roatable;

      cache "rpki-validator.realmv6.org" {
          port 3233;
          preference 1;
      };
      cache 127.0.0.1 {
          preference 2;
      };
      cache "rpki-validator.realmv6.org";
    }
2015-10-07 15:54:20 +02:00
Pavel Tvrdík
52ea2303cf RPKI: add -ldl for bird compile for dlopen() 2015-10-07 15:49:07 +02:00
Pavel Tvrdík
804684663b RPKI: load RTRLib dynamically with dlopen()
In configuration bird.conf you can specify a path to the RTRlib:

  protocol rpki {
    rtrlib "/usr/lib/librtr.so";
    ...
  }
2015-10-05 16:52:15 +02:00
Ondrej Zajicek (work)
8465dccb06 Major RIP redesign
The new RIP implementation fixes plenty of old bugs and also adds support
for many new features: ECMP support, link state support, BFD support,
configurable split horizon and more. Most options are now per-interface.
2015-10-05 13:18:10 +02:00
Pavel Tvrdík
aeaf497aac RPKI: Importing routes into roa table
Implementation based on RTRLib.

Communication between rtrlib threads and main thread through pipe()
  sockets and notify list like in BFD protocol.

TODO:
  - load rtrlib using dlopen()
  - take into account preferences of cache servers in configuration
2015-10-01 18:37:07 +02:00
Pavel Tvrdík
149220738b Early integration of RTRlib into BIRD RPKI proto
lib/lists: add get_list_length(list *) function
2015-09-28 00:34:10 +02:00
Pavel Tvrdík
2c66ced11a Integrate RTRlib into BIRD's build system
You need to do manually still:
 $ cd rtrlib && cmake .
2015-09-28 00:32:16 +02:00
Pavel Tvrdík
d08c2cb836 RPKI: Add submodule RTRlib
You have to run for download a submodule commands:
 $ git submodule init
 $ git submodule update
2015-09-28 00:31:03 +02:00
Pavel Tvrdík
98bf329be6 RPKI: add new protocol skeleton 2015-09-17 18:37:11 +02:00
Ondrej Zajicek
b5e76398de OSPF: Fixes some issues with link detection
Thanks to Bernardo Figueiredo and Israel G. Lugo for the bugreport.
2015-08-19 11:16:23 +02:00
Ondrej Zajicek
c7b99a932c Nest: Fixes one of previous commit 2015-07-28 15:08:21 +02:00
Ondrej Zajicek
dbf4c0cb25 Minor update to test commits 2015-07-28 12:56:51 +02:00
Ondrej Zajicek
641172c6e5 Netlink: Fixes uninitialized variable
Thanks to Pavel Tvrdik for the bugfix
2015-07-28 12:36:03 +02:00
Ondrej Zajicek
538264cf1a Static: Support for BFD controlled static routes 2015-07-24 18:02:07 +02:00
Ondrej Zajicek
1321e12ac4 Static: Allows to specify attributes for static routes
The patch adds suport for specifying route attributes together with
static routes, e.g.:

 route 10.1.1.0/24 via 10.0.0.1 { krt_advmss = 1200; ospf_metric1 = 100; };
2015-07-20 17:11:10 +02:00
Ondrej Zajicek
ffa398b8d8 BFD: Fixes crash after socket error
Thanks to Thomas King for the bugreport.
2015-07-19 11:39:24 +02:00
Ondrej Zajicek
a8ad8fd649 Simplify build messages
Thanks to Christian Tacke for the original patch.
2015-07-18 23:15:04 +02:00
Ondrej Zajicek
17661ff934 Nest: Fixes symbols in router id
Thanks to Peter Hudec for noticing the problem.
2015-07-18 19:30:35 +02:00