Pavel Tvrdík
84dbe05f93
Birdtest: Extend IP addr funcs Tests
2015-04-13 10:59:20 +02:00
Pavel Tvrdík
db781b9004
Birdtest: Rewrite MD5 unit test
2015-04-13 10:57:47 +02:00
Pavel Tvrdík
a84b9c62d1
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
2015-04-13 10:52:21 +02:00
Pavel Tvrdík
947018a7ef
Birdtest: bt_test_case() -> bt_test_suite()
2015-04-13 10:42:10 +02:00
Pavel Tvrdík
9a49b70d1b
Birdtest: Add IP addr funcs Tests (not complete)
2015-04-03 12:55:36 +02:00
Pavel Tvrdík
89ee134e2f
Birdtest: Add Hash Tests
2015-04-03 12:54:54 +02:00
Pavel Tvrdík
83131f3fa5
Birdtest: Add Event Processing Tests
...
Add test/birdtest_support.h for provisional hack a build system
2015-04-03 12:52:44 +02:00
Pavel Tvrdík
e331e3635e
Birdtest: Small improve in checksum test
2015-04-03 12:51:05 +02:00
Pavel Tvrdík
a35f717f0f
lib/ip.c: add parenthesis for better readability
2015-04-03 12:49:21 +02:00
Pavel Tvrdík
e7bb2daf1f
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");
2015-04-03 12:46:04 +02:00
Pavel Tvrdík
d73e21e611
Birdtest: IP One-Complement Checksum Tests
2015-03-30 18:54:09 +02:00
Pavel Tvrdík
7379684211
Birdtest: small fix in md5_test
2015-03-30 18:52:58 +02:00
Pavel Tvrdík
3bbe27472c
Birdtest: Add test for lib/bitops.c
2015-03-27 14:10:28 +01:00
Pavel Tvrdík
733088e798
Birdtest: Add test for lib/buffer_test.c
2015-03-27 14:10:00 +01:00
Pavel Tvrdík
c19954e74d
Birdtest: Add test for lib/md5.c
2015-03-27 14:09:27 +01:00
Pavel Tvrdík
3c2ac3887e
Birdtest: Refactorize heap_test.c and lists_test.c
2015-03-27 14:08:39 +01:00
Pavel Tvrdík
f26cf70152
Birdtest: Refactore tests and build system
...
Rename directory:
birdtest/* -> test/*
Rename Makefile rule:
build-tests -> tests
Move run-all-test shell script from Makefile to stand-alone shell script
Simplify Makefile test build system
2015-03-23 17:40:13 +01:00
Pavel Tvrdík
99d14b1ab3
Add header wrap defines to lib/buffer.h
2015-03-19 18:42:33 +01:00
Pavel Tvrdík
a2cdd9532d
Addition necessary includes in headers files
2015-03-17 12:39:10 +01:00
Pavel Tvrdík
53e27ec79d
Separate a definition of NULL to standalone header
...
A lib/list.h had circular dependency through include nest/bird.h
nest/bird.h requires lib/birdlib.h
lib/birdlib.h requires timer.h
timer.h requires lib/resource.h
lib/resource.h requires lib/list.h
2015-03-17 12:31:14 +01:00
Pavel Tvrdík
e8b3845e86
Birdtest: Add default timeout and forking setting
2015-03-17 11:27:40 +01:00
Pavel Tvrdík
a8a67537ed
Add unit tests for lib/lists.c datastructures
2015-03-13 18:37:21 +01:00
Pavel Tvrdík
5063d4f7a3
Add unit tests for lib/heap.h datastructures
2015-03-13 18:36:10 +01:00
Ondrej Zajicek
4e63974471
Add minor comment
2015-02-24 16:19:14 +01:00
Ondrej Zajicek
9c89560e6c
Use IP_PORTRANGE_HIGH for BFD where available
2015-02-22 20:14:14 +01:00
Pavel Tvrdík
6264aad16f
Minor fixes
2015-02-21 20:11:02 +01:00
Pavel Tvrdik
85a3639d99
Better Clang compatibility
2015-02-21 20:07:17 +01:00
Pavel Tvrdik
e598853e68
Add const to a param msg at functions log_msg, log_rl, die, bug and debug
2015-02-21 19:32:57 +01:00
Ondrej Zajicek
6f8bbaa10b
Fininshing integrated OSPF.
2014-11-03 10:42:55 +01:00
Ondrej Zajicek
88a183c6c9
Integrated IP functions.
2014-10-24 11:11:43 +02:00
Ondrej Zajicek
78342404ff
Merge remote-tracking branch 'origin/master' into soft-int
2014-10-14 17:23:34 +02:00
Ondrej Zajicek
1123e70740
Implements token bucket filter for rate limiting.
2014-10-02 12:52:50 +02:00
Ondrej Zajicek
20e8d040b0
Fixes integer overflow in show memory command.
...
Thanks to Job Snijders for the bugreport.
2014-06-30 11:55:22 +02:00
Ondrej Zajicek
70945cb645
Temporary integrated OSPF commit.
2014-06-26 11:58:57 +02:00
Ondrej Zajicek
05476c4d04
IPv4/IPv6 integrated socket code.
2014-05-18 11:42:26 +02:00
Ondrej Filip
7c4a800725
Fixed bug in unused function.
2014-04-14 12:28:30 +02:00
Ondrej Zajicek
0c791f873a
BGP graceful restart support.
...
Also significant core protocol state changes needed for that,
global graceful restart recovery state and kernel proto support
for recovery.
2014-03-20 14:07:12 +01:00
Ondrej Zajicek
5c200e0a4d
Merge branch 'add-path'
2014-02-06 20:15:05 +01:00
Ondrej Zajicek
48e5f32db6
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
- Alternative SKF_BIND flag for binding to IP address
- Allows IP/UDP sockets without tx_hook, on these
sockets a packet is discarded when TX queue is full
- Use consistently SOL_ for socket layer values.
OSPF:
- Packet src addr is always explicitly set
- Support for secondary addresses in BSD
- Dynamic RX/TX buffers
- Fixes some minor buffer overruns
- Interface option 'tx length'
- Names for vlink pseudoifaces (vlinkX)
- Vlinks use separate socket for TX
- Vlinks do not use fixed associated iface
- Fixes TTL for direct unicast packets
- Fixes DONTROUTE for OSPF sockets
- Use ifa->ifname instead of ifa->iface->name
2014-02-06 17:46:01 +01:00
Ondrej Zajicek
e7d2ac4401
Finishes add-path.
...
Fixes some bugs and uses generic hash implementation.
2013-12-01 13:49:42 +01:00
Ondrej Zajicek
736e143fa5
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
2013-11-23 11:50:34 +01:00
Ondrej Zajicek
41f8bf57c4
Changes identifiers to avoid use of reserved ones.
2013-11-22 21:59:43 +01:00
Ondrej Zajicek
0aeac9cb7f
Merge commit 'origin/bfd'
2013-11-22 02:48:44 +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
0e175f9f0f
Fixes some BFD bugs and makes logging thread-safe.
2013-10-05 20:12:28 +02:00
Ondrej Zajicek
b655596d1d
Simplifies val_in_range().
...
Also fixes missing type check for element ~ set.
2013-10-02 11:42:46 +02:00
Ondrej Zajicek
6a8d3f1c1f
BFD work in progress.
...
Now it compiles and mostly works.
2013-09-16 23:57:40 +02:00
Ondrej Zajicek
bf139664aa
Initial BFD commit, work in progress.
2013-09-10 12:09:36 +02:00
Ondrej Zajicek
70e212f913
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.
2013-06-25 15:39:44 +02:00
Ondrej Zajicek
ef4a50be10
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.
2013-06-24 16:37:30 +02:00