0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-10-19 02:18:43 +00:00
Commit Graph

285 Commits

Author SHA1 Message Date
Pavel Tvrdik
1dea356ac9 Merge branch 'master' into mrtdump 2016-05-02 15:49:23 +02:00
Pavel Tvrdik
36ddc3f136 Copy hash functions md5 and sha* from master branch 2016-05-02 15:47:24 +02:00
Ondrej Zajicek (work)
9e7b3ebdf9 IO: Replace RX priority heuristic with explicit mark
In BIRD, RX has lower priority than TX with the exception of RX from
control socket. The patch replaces heuristic based on socket type with
explicit mark and uses it for both control socket and BGP session waiting
to be established.

This should avoid an issue when during heavy load, outgoing connection
could connect (TX event), send open, but then failed to receive OPEN /
establish in time, not sending notifications between and therefore
got hold timer expired error from the neighbor immediately after it
finally established the connection.
2016-04-06 11:49:34 +02:00
Jan Moskyto Matejka
54bb032d21 Birdlib: Modify lists to avoid problems with pointer aliasing rules
The old linked list implementation used some wild typecasts and required
GCC option -fno-strict-aliasing to work properly. This patch fixes that.
However, we still keep the option due to other potential problems.

(Commited by Ondrej Santiago Zajicek)
2016-03-23 02:21:42 +01:00
Ondrej Zajicek (work)
665b8e5283 Birdlib: Do cleanups after remove/free
To avoid byzantine behavior in case of some errors, linked lists are
cleared after rem_node() and resource headers are cleared after rfree().
2016-03-23 02:21:42 +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
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
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
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
f7385b42a4 Birdtest: Fix non-debug compilation of IP tests 2015-07-29 09:29:15 +02:00
Pavel Tvrdík
018dbac0e0 Merge branch 'master' into mrtdump 2015-07-28 17:31:44 +02:00
Pavel Tvrdík
11fabd2d6b Integrate MRT Table Dump (RFC 6396) into BIRD
Asynchronous periodic mrt table dumps of routes configuration in bird.conf:
mrtdump routes {
  [ filename "<format>"; ]
  [ table <name>|"<wildcard name>"; ]
  [ period <num>; ]
  [ filter <filter>|where <condition>; ]
}

Synchronous mrt table dumps of routes in BIRD client:
mrtdump routes [table <name>|"<wildcard name>"] [to "<filename format>"] [filter <filter>|where <condition>]
2015-07-28 17:19:04 +02:00
Pavel Tvrdík
de77e5cdd0 Add core support for MRT Table Dump (RFC 6396) 2015-07-28 15:04:03 +02:00
Pavel Tvrdík
700cf1c203 SHA256: Remove 32-bit move at the 32-bit number 2015-06-17 12:28:25 +02:00
Ondrej Zajicek
8d9eef1771 BGP multipath support
Kernel option 'merge paths' allows to merge routes exported to kernel
protocol (currently BGP and static routes) to multipath routes.
2015-06-08 02:24:08 +02:00
Pavel Tvrdík
ae80a2de95 unsigned [int] -> uint 2015-06-08 02:24:08 +02:00
Pavel Tvrdík
e348ef01b4 unsgined char -> byte 2015-06-08 02:24:08 +02:00
Pavel Tvrdík
c40185a176 SHA256: Remove typedef for sha_transform_fn 2015-05-19 10:52:22 +02:00
Pavel Tvrdík
1673814087 MD5, SHA1/256/512 libraries: fixing code style 2015-05-19 10:06:28 +02:00
Pavel Tvrdík
ddb80bd8c5 unsigned [int] -> uint 2015-05-19 08:53:34 +02:00
Pavel Tvrdík
8e8a438322 unsgined char -> byte 2015-05-19 08:14:04 +02:00
Pavel Tvrdík
00572d96f9 Merge branch 'master' into birdtest 2015-05-13 11:41:03 +02:00
Pavel Tvrdík
b335daec41 MD5: fixing indentation and code style 2015-05-13 11:26:37 +02:00
Pavel Tvrdík
2a2fef75cd SHA1: Remove duplicated tests 2015-05-13 11:18:10 +02:00
Pavel Tvrdík
40d323e150 Add HMAC-MD5 library and tests 2015-05-13 11:18:10 +02:00
Pavel Tvrdík
aa75e6dfe1 MD5: change interface of md5_final()
originally:
  void md5_final(unsigned char digest[16], struct md5_context *ctx);

newly:
  byte * md5_final(md5_context *ctx);
2015-05-13 11:18:10 +02:00
Pavel Tvrdík
0a8abdf6a0 SHA1: transform -> sha1_transform 2015-05-13 11:18:02 +02:00
Pavel Tvrdík
1512c11ddc MD5: change naming style
MD5Init         -> md5_init
MD5Update       -> md5_update
MD5Transform    -> md5_transform
MD5Final        -> md5_final
MD5Context      -> md5_context
2015-05-13 09:32:00 +02:00
Pavel Tvrdík
5aa9ab0cfd SHA & MD5 libs: changing headers 2015-05-13 09:27:44 +02:00
Pavel Tvrdík
d16b33f556 SHA512: Fixing bug in SHA512 & SHA384
SHA512/SHA384 are using the SHA256 update and differs in the transform function.
This adds a pointer to transform function into a SHA context.
2015-05-12 12:46:26 +02:00
Pavel Tvrdík
5a12cc27f7 SHA512: small changes in code style 2015-05-12 12:46:26 +02:00
Pavel Tvrdík
a777dff865 SHA512 Tests: Fixing the expected hashes 2015-05-12 12:46:26 +02:00
Pavel Tvrdík
9f2c0ca0ef SHA Tests: Use a longer (160-length) string 2015-05-12 12:46:11 +02:00
Pavel Tvrdík
5beaaa3d6b SHA: only renamed hd -> ctx 2015-05-12 12:24:28 +02:00
Ondrej Zajicek
77edab6409 OSPF: Redesign LSA checksumming
New LSA checksumming code separates generic Fletcher-16 and OSPF-specific
code and avoids back and forth endianity conversions, making it much more
readable and also several times faster.
2015-05-01 14:40:56 +02:00
Pavel Tvrdík
f84f925036 Birdtest: add IPv6 unit test for convert '::' 2015-04-29 16:50:38 +02:00
Pavel Tvrdík
71adc0f9e2 Add HMAC-SHA384 and HMAC-SHA512 (both not work!) 2015-04-29 16:50:38 +02:00
Pavel Tvrdík
e7ac4efd54 HMAC-SHA256, HMAC-SHA224 according to HMAC-SHA1
Successfully passed unit tests.
2015-04-29 16:49:44 +02:00
Pavel Tvrdík
b813656c58 SHA: Fixing broken build process 2015-04-29 13:43:15 +02:00
Pavel Tvrdík
5355407915 Add SHA512 and SHA384 hash library and unit tests 2015-04-28 17:05:29 +02:00
Pavel Tvrdík
ac2dc0510f Add HMAC-SHA224 (but it does not work yet!)
Unit Tests for HMAC-SHA224 not passed
2015-04-28 17:02:28 +02:00
Pavel Tvrdík
e4e80e4f8f SHA256: Integrate sha256_hmac into sha256 2015-04-28 16:58:44 +02:00
Pavel Tvrdík
6d3c17d5c2 SHA1: Integrate sha1_hmac.c into sha1.c 2015-04-28 16:58:44 +02:00
Pavel Tvrdík
17a0035a1c SHA: Fixing small bugs and code style
Thanks to Ondrej Zajicek
2015-04-28 16:58:31 +02:00
Pavel Tvrdík
c23cd84ed5 Add HMAC-SHA256 hash library and unit tests 2015-04-25 13:43:49 +02:00