]>
git.ipfire.org Git - thirdparty/bird.git/log
Pavel Tvrdík [Wed, 19 Aug 2015 12:48:37 +0000 (14:48 +0200)]
_GNU_SOURCE for setresuid()
Pavel Tvrdík [Wed, 19 Aug 2015 12:44:14 +0000 (14:44 +0200)]
Make async_*_flag as global shared variables
Pavel Tvrdík [Wed, 19 Aug 2015 12:40:06 +0000 (14:40 +0200)]
Birdtest: add some utils to framework
and updates old tests
Pavel Tvrdík [Fri, 14 Aug 2015 14:14:32 +0000 (16:14 +0200)]
Birdtest: Add unfinished filter test
Add birdtest utils for testing parsing configurations files
Add tests with parsing filter examples
Pavel Tvrdík [Fri, 14 Aug 2015 14:08:04 +0000 (16:08 +0200)]
Birdtest: Improve reliable
Fixing some bugs
Add option to call birdtest with an argument (void *)
Ondrej Zajicek [Tue, 28 Jul 2015 10:35:12 +0000 (12:35 +0200)]
Netlink: Fixes uninitialized variable
Thanks to Pavel Tvrdik for the bugfix
Pavel Tvrdík [Wed, 5 Aug 2015 10:34:21 +0000 (12:34 +0200)]
Birdtest: Clean up unit tests from mock-ups
Pavel Tvrdík [Wed, 5 Aug 2015 09:42:40 +0000 (11:42 +0200)]
Birdtest: Purge 'int main()' from lib/birdlib.a #2
All origin static functions from sysdep/unix/main.c were rewrited to
non-static.
All origin static global variables from sysdep/unix/main.c was rewrited
to extern.
It is possible create executables bird, birdc and birdcl as well as run
unit tests without mockuping
After remake new BIRD's build system will be this commit reverting...
Pavel Tvrdík [Wed, 5 Aug 2015 07:35:46 +0000 (09:35 +0200)]
Birdtest: Purge 'int main()' from lib/birdlib.a #1
We need link lib/birdlib.a and remaining */all.o to tests (mockups suck)
Code from sysdep/unix/main.c is moved without 'int main()' function
to the sysdep/unix/main_helper.c
Yes, it is dirty...
After remake new BIRD's build system will be this commit reverting...
Actually it is not possible to build executable bird, birdc nor birdcl
due duplicity of functions in main_helper.o in lib/birdlib.a and
lib/main.o
Pavel Tvrdík [Wed, 5 Aug 2015 09:49:05 +0000 (11:49 +0200)]
Birdtest: Fixing outputs at 'exotic' OS
Pavel Tvrdík [Tue, 4 Aug 2015 12:40:40 +0000 (14:40 +0200)]
Birdtest: Add an another verbose level for tests
Pavel Tvrdík [Tue, 4 Aug 2015 12:14:34 +0000 (14:14 +0200)]
Birdtest: Add Fletcher-16 Checksum Tests
Pavel Tvrdík [Tue, 4 Aug 2015 08:28:00 +0000 (10:28 +0200)]
Revert "Birdtest: U64_C() macro"
This reverts commit
804ee1458d33b09732eb7b883a7d77b5de74f7df .
And make better solution with stdint.h and UINT64_C macro.
Thanks to Ondrej Zajicek.
Pavel Tvrdík [Tue, 4 Aug 2015 08:25:47 +0000 (10:25 +0200)]
Birdtest: Tunning IP tests, Hash tests
Pavel Tvrdík [Tue, 4 Aug 2015 08:01:10 +0000 (10:01 +0200)]
Revert "Linking: move LDFLAGS at the end of commands"
This reverts commit
9334886d1a09991af05b958482f9500f6c6dc17d .
Thanks to Ondrej Zajicek.
Pavel Tvrdík [Mon, 3 Aug 2015 13:55:53 +0000 (15:55 +0200)]
Birdtest: Fix Hash Unit Testing
Pavel Tvrdík [Mon, 3 Aug 2015 11:46:45 +0000 (13:46 +0200)]
Birdtest: U64_C() macro
Pavel Tvrdík [Mon, 3 Aug 2015 07:03:38 +0000 (09:03 +0200)]
Birdtest: Use origin macros from lib/ip.h
Thanks to Ondrej 'Santiago' Zajicek
Pavel Tvrdík [Wed, 29 Jul 2015 09:49:51 +0000 (11:49 +0200)]
Birdtest: Add Pattern Matching Tests
Pavel Tvrdík [Wed, 29 Jul 2015 08:41:37 +0000 (10:41 +0200)]
Linking: move LDFLAGS at the end of commands
Better support gcov
$ LDFLAGS="-lgcov" CFLAGS="-fprofile-arcs -ftest-coverage" ./configure
Pavel Tvrdík [Wed, 29 Jul 2015 07:04:22 +0000 (09:04 +0200)]
Birdtest: Fix non-debug compilation of IP tests
Pavel Tvrdík [Tue, 16 Jun 2015 13:13:53 +0000 (15:13 +0200)]
SHA256: Remove 32-bit move at the 32-bit number
Pavel Tvrdík [Tue, 19 May 2015 08:52:22 +0000 (10:52 +0200)]
SHA256: Remove typedef for sha_transform_fn
Pavel Tvrdík [Tue, 19 May 2015 07:57:10 +0000 (09:57 +0200)]
MD5, SHA1/256/512 libraries: fixing code style
Pavel Tvrdík [Tue, 19 May 2015 06:53:34 +0000 (08:53 +0200)]
unsigned [int] -> uint
Pavel Tvrdík [Tue, 19 May 2015 06:14:04 +0000 (08:14 +0200)]
unsgined char -> byte
Pavel Tvrdík [Tue, 19 May 2015 06:00:10 +0000 (08:00 +0200)]
Merge branch 'master' into birdtest
Ondrej Zajicek [Sat, 16 May 2015 22:54:33 +0000 (00:54 +0200)]
Simplify flushing process
Related to changes from previous patch.
Ondrej Zajicek [Sat, 16 May 2015 18:17:59 +0000 (20:17 +0200)]
Fix minor issue in pipe route propagation
In some circumstances during reconfiguration, routes propagated by pipes
to other tables may hang there even after the primary routes are removed.
There is already a workaround for this issue in the code which removes
these stale routes by flush process when source protocols are shut down.
This patch is a cleaner fix and allows to simplify the flush process
Ondrej Zajicek [Wed, 13 May 2015 11:19:26 +0000 (13:19 +0200)]
Fix in the last commit
Pavel Tvrdík [Wed, 13 May 2015 09:41:03 +0000 (11:41 +0200)]
Merge branch 'master' into birdtest
Pavel Tvrdík [Wed, 13 May 2015 09:26:37 +0000 (11:26 +0200)]
MD5: fixing indentation and code style
Pavel Tvrdík [Wed, 13 May 2015 09:15:10 +0000 (11:15 +0200)]
SHA1: Remove duplicated tests
Pavel Tvrdík [Wed, 13 May 2015 09:14:11 +0000 (11:14 +0200)]
Add HMAC-MD5 library and tests
Pavel Tvrdík [Wed, 13 May 2015 08:55:02 +0000 (10:55 +0200)]
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);
Pavel Tvrdík [Wed, 13 May 2015 07:35:08 +0000 (09:35 +0200)]
SHA1: transform -> sha1_transform
Pavel Tvrdík [Wed, 13 May 2015 07:32:00 +0000 (09:32 +0200)]
MD5: change naming style
MD5Init -> md5_init
MD5Update -> md5_update
MD5Transform -> md5_transform
MD5Final -> md5_final
MD5Context -> md5_context
Pavel Tvrdík [Wed, 13 May 2015 07:27:44 +0000 (09:27 +0200)]
SHA & MD5 libs: changing headers
Pavel Tvrdík [Wed, 13 May 2015 07:12:22 +0000 (09:12 +0200)]
OSPF: fixing typing errors
Ondrej Zajicek [Tue, 12 May 2015 14:42:22 +0000 (16:42 +0200)]
KRT: Add support for plenty of kernel route metrics
Linux kernel route metrics (RTA_METRICS netlink route attribute) are
represented and accessible as new route attributes:
krt_mtu, krt_window, krt_rtt, krt_rttvar, krt_sstresh, krt_cwnd, krt_advmss,
krt_reordering, krt_hoplimit, krt_initcwnd, krt_rto_min, krt_initrwnd,
krt_quickack, krt_lock_mtu, krt_lock_window, krt_lock_rtt, krt_lock_rttvar,
krt_lock_sstresh, krt_lock_cwnd, krt_lock_advmss, krt_lock_reordering,
krt_lock_hoplimit, krt_lock_rto_min, krt_feature_ecn, krt_feature_allfrag
Pavel Tvrdík [Tue, 12 May 2015 10:38:12 +0000 (12:38 +0200)]
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.
Pavel Tvrdík [Tue, 12 May 2015 10:33:06 +0000 (12:33 +0200)]
SHA512: small changes in code style
Pavel Tvrdík [Tue, 12 May 2015 10:29:45 +0000 (12:29 +0200)]
SHA512 Tests: Fixing the expected hashes
Pavel Tvrdík [Tue, 12 May 2015 10:27:47 +0000 (12:27 +0200)]
SHA Tests: Use a longer (160-length) string
Pavel Tvrdík [Tue, 12 May 2015 10:24:28 +0000 (12:24 +0200)]
SHA: only renamed hd -> ctx
Ondrej Zajicek [Sat, 9 May 2015 16:50:15 +0000 (18:50 +0200)]
Add bitfield route attribute type
Ondrej Zajicek [Fri, 1 May 2015 12:40:56 +0000 (14:40 +0200)]
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.
Pavel Tvrdík [Wed, 29 Apr 2015 14:47:32 +0000 (16:47 +0200)]
Birdtest: add IPv6 unit test for convert '::'
Pavel Tvrdík [Wed, 29 Apr 2015 11:41:40 +0000 (13:41 +0200)]
Add HMAC-SHA384 and HMAC-SHA512 (both not work!)
Pavel Tvrdík [Wed, 29 Apr 2015 11:39:32 +0000 (13:39 +0200)]
HMAC-SHA256, HMAC-SHA224 according to HMAC-SHA1
Successfully passed unit tests.
Pavel Tvrdík [Wed, 29 Apr 2015 06:50:02 +0000 (08:50 +0200)]
SHA: Fixing broken build process
Ondrej Zajicek [Tue, 28 Apr 2015 11:45:44 +0000 (13:45 +0200)]
OSPF: Fixes validation of LSA checksums
Prior to this patch, BIRD validates the OSPF LSA checksum by calculating
a new checksum and comparing it with the checksum in the header. Due to
the specifics of the Fletcher checksum used in OSPF, this is not
necessarily correct as the checkbytes in the header may be calculated via
a different means and end up with a different value that is nonetheless
still correct.
The documented means of validating the checksum as specified in RFC 905
B.4 is to calculate c0 and c1 from the unchanged contents of the packet,
which must result in a zero value to be considered valid.
Thanks to Chris Boot for the patch.
Ondrej Zajicek [Sat, 25 Apr 2015 19:41:43 +0000 (21:41 +0200)]
KRT: Fixes route reload
Did not really worked
Ondrej Zajicek [Sat, 25 Apr 2015 18:43:43 +0000 (20:43 +0200)]
KRT: Fixes learning of preferred kernel routes.
When a new route was imported from kernel and chosen as preferred, then
the old best route was propagated as a withdraw to the kernel protocol.
Under some circumstances such withdraw propagated to the BSD kernel could
remove the new alien route and thus reverting the import.
Ondrej Zajicek [Wed, 22 Apr 2015 08:53:15 +0000 (10:53 +0200)]
KRT: Support for RTM_CHANGE on BSD
Pavel Tvrdík [Tue, 28 Apr 2015 13:02:37 +0000 (15:02 +0200)]
Add SHA512 and SHA384 hash library and unit tests
Pavel Tvrdík [Tue, 28 Apr 2015 10:48:43 +0000 (12:48 +0200)]
Birdtest: small change
The number of build-failure tests must be equal to zero or upper
Pavel Tvrdík [Tue, 28 Apr 2015 10:43:03 +0000 (12:43 +0200)]
Add HMAC-SHA224 (but it does not work yet!)
Unit Tests for HMAC-SHA224 not passed
Pavel Tvrdík [Tue, 28 Apr 2015 08:05:25 +0000 (10:05 +0200)]
SHA256: Integrate sha256_hmac into sha256
Pavel Tvrdík [Tue, 28 Apr 2015 07:28:49 +0000 (09:28 +0200)]
SHA1: Integrate sha1_hmac.c into sha1.c
Pavel Tvrdík [Tue, 28 Apr 2015 07:08:43 +0000 (09:08 +0200)]
SHA: Fixing small bugs and code style
Thanks to Ondrej Zajicek
Ondrej Zajicek [Tue, 28 Apr 2015 11:45:44 +0000 (13:45 +0200)]
OSPF: Fixes validation of LSA checksums
Prior to this patch, BIRD validates the OSPF LSA checksum by calculating
a new checksum and comparing it with the checksum in the header. Due to
the specifics of the Fletcher checksum used in OSPF, this is not
necessarily correct as the checkbytes in the header may be calculated via
a different means and end up with a different value that is nonetheless
still correct.
The documented means of validating the checksum as specified in RFC 905
B.4 is to calculate c0 and c1 from the unchanged contents of the packet,
which must result in a zero value to be considered valid.
Thanks to Chris Boot for the patch.
Ondrej Zajicek [Sat, 25 Apr 2015 19:41:43 +0000 (21:41 +0200)]
KRT: Fixes route reload
Did not really worked
Ondrej Zajicek [Sat, 25 Apr 2015 18:43:43 +0000 (20:43 +0200)]
KRT: Fixes learning of preferred kernel routes.
When a new route was imported from kernel and chosen as preferred, then
the old best route was propagated as a withdraw to the kernel protocol.
Under some circumstances such withdraw propagated to the BSD kernel could
remove the new alien route and thus reverting the import.
Pavel Tvrdík [Sat, 25 Apr 2015 08:49:43 +0000 (10:49 +0200)]
Add HMAC-SHA256 hash library and unit tests
Pavel Tvrdík [Thu, 23 Apr 2015 13:18:27 +0000 (15:18 +0200)]
Add SHA256, SHA224 hash libraries and unit tests
Pavel Tvrdík [Thu, 23 Apr 2015 10:51:38 +0000 (12:51 +0200)]
SHA1: Code formatting
Pavel Tvrdík [Thu, 23 Apr 2015 10:52:36 +0000 (12:52 +0200)]
SHA1: Remove original libucw unit tests
Pavel Tvrdík [Thu, 23 Apr 2015 09:27:36 +0000 (11:27 +0200)]
SHA1: Use get_u32 and put_u32
Pavel Tvrdík [Wed, 22 Apr 2015 15:42:04 +0000 (17:42 +0200)]
SHA-1: safer endianity
Pavel Tvrdík [Wed, 22 Apr 2015 10:12:05 +0000 (12:12 +0200)]
Fixing copyrights at SHA-1 and HMAC-SHA1 libraries
Pavel Tvrdík [Wed, 22 Apr 2015 09:02:46 +0000 (11:02 +0200)]
Add SHA-1 and HMAC-SHA1 libraries with unit tests
Refactore MD5 tests
Ondrej Zajicek [Wed, 22 Apr 2015 08:53:15 +0000 (10:53 +0200)]
KRT: Support for RTM_CHANGE on BSD
Pavel Tvrdík [Mon, 20 Apr 2015 14:50:51 +0000 (16:50 +0200)]
Birdtest: add io_log_event() mockup
Pavel Tvrdík [Mon, 20 Apr 2015 14:27:48 +0000 (16:27 +0200)]
Merge branch 'master' into birdtest
Pavel Tvrdík [Mon, 20 Apr 2015 11:50:33 +0000 (13:50 +0200)]
Birdtest: Refactore functions (only rename)
Ondrej Zajicek [Mon, 20 Apr 2015 10:27:00 +0000 (12:27 +0200)]
NEWS and version update
Ondrej Zajicek [Sat, 18 Apr 2015 22:19:56 +0000 (00:19 +0200)]
Fixes port range socket option
Ondrej Zajicek [Sat, 18 Apr 2015 11:22:41 +0000 (13:22 +0200)]
OSPF: Fixes handling of external routes with immediate gw
The bug caused that received external LSAs with locally reachable
next hops were ignored. I wonder why nobody noticed it sooner.
Pavel Tvrdík [Wed, 15 Apr 2015 13:42:43 +0000 (15:42 +0200)]
Birdtest: Compability bug fixes
Tested on Ubuntu & FreeBSD & NetBSD & OpenBSD
Pavel Tvrdík [Wed, 15 Apr 2015 10:16:42 +0000 (12:16 +0200)]
Add .gitignore
Pavel Tvrdík [Wed, 15 Apr 2015 10:14:36 +0000 (12:14 +0200)]
Birdtest: Add tests suites for SLIST datastructure
Pavel Tvrdík [Wed, 15 Apr 2015 10:11:50 +0000 (12:11 +0200)]
Birdtest: Refactore some tests
lib/bitops_test.c
lib/ip_test.c
lib/lists_test.c
lib/md5_test.c
Pavel Tvrdík [Wed, 15 Apr 2015 10:07:10 +0000 (12:07 +0200)]
Birdtest: Build system: improve dependencies
while a some source file is changed, the test suite will recompile
Pavel Tvrdík [Wed, 15 Apr 2015 09:51:24 +0000 (11:51 +0200)]
Birdtest: Improve the testing framework
- non-blocking asserts, only set bt_test_suite_success
- unification of testing output from bt_assert_fn_in_out and bt_assert_out_fn_in
Pavel Tvrdík [Mon, 13 Apr 2015 08:59:20 +0000 (10:59 +0200)]
Birdtest: Extend IP addr funcs Tests
Pavel Tvrdík [Mon, 13 Apr 2015 08:57:47 +0000 (10:57 +0200)]
Birdtest: Rewrite MD5 unit test
Pavel Tvrdík [Mon, 13 Apr 2015 08:52:21 +0000 (10:52 +0200)]
Birdtest: Add bt_assert_fn_in_*
- Improved test output formating: aligned, colored [ OK ] / [FAIL]
- A failed assert will not interupt the whole test suite
- bt_assert_fn_in_* are macros for testing input and output from the some
function
Pavel Tvrdík [Mon, 13 Apr 2015 08:42:10 +0000 (10:42 +0200)]
Birdtest: bt_test_case() -> bt_test_suite()
Pavel Tvrdík [Mon, 13 Apr 2015 08:33:04 +0000 (10:33 +0200)]
Birdtest: Improve a tests lancher script
Ondrej Zajicek [Sun, 12 Apr 2015 08:47:17 +0000 (10:47 +0200)]
Minor fixes
Pavel Tvrdík [Fri, 3 Apr 2015 10:55:36 +0000 (12:55 +0200)]
Birdtest: Add IP addr funcs Tests (not complete)
Pavel Tvrdík [Fri, 3 Apr 2015 10:54:54 +0000 (12:54 +0200)]
Birdtest: Add Hash Tests
Pavel Tvrdík [Fri, 3 Apr 2015 10:52:44 +0000 (12:52 +0200)]
Birdtest: Add Event Processing Tests
Add test/birdtest_support.h for provisional hack a build system
Pavel Tvrdík [Fri, 3 Apr 2015 10:51:05 +0000 (12:51 +0200)]
Birdtest: Small improve in checksum test
Pavel Tvrdík [Fri, 3 Apr 2015 10:49:21 +0000 (12:49 +0200)]
lib/ip.c: add parenthesis for better readability
Pavel Tvrdík [Fri, 3 Apr 2015 10:46:04 +0000 (12:46 +0200)]
Birdtest: improve bt_check macro
Now dat for testing can be defined somelike this:
struct in_out_data_ {
char *in;
u32 out;
} in_out_data[] = {
{
.in = "192.168.1.128",
.out = build_ip4(192, 168, 1, 128),
},
{
.in = "255.255.255.255",
.out = build_ip4(255, 255, 255, 255),
},
...
};
bt_check(ip4_pton_, in_out_data, "%s", "0x%08X");
Pavel Tvrdík [Fri, 3 Apr 2015 10:44:47 +0000 (12:44 +0200)]
Birdtest: move def bt_rand_num() at a better place
Pavel Tvrdík [Fri, 3 Apr 2015 10:42:49 +0000 (12:42 +0200)]
Birdtest: Add printing backtrace while segfault
Pavel Tvrdík [Fri, 3 Apr 2015 10:40:07 +0000 (12:40 +0200)]
Birdtest: Improve build scripts
Add make rule 'clean-tests'
Add tests sources to dependecy generator