Commit Graph

496 Commits

Author SHA1 Message Date
Michael Rash
e893ecad21 [test suite] added first test to run fwknop client underneath fiu-run for libc fault injection 2014-05-26 15:09:02 -04:00
Michael Rash
a1f1e4b328 [test suite] in --enable-fuzzing-interfaces mode create fko-wrapper/send_spa_payloads file if it does exist 2014-05-26 14:18:27 -04:00
Michael Rash
237602114f [test suite] minor fko_wrapper comment update 2014-05-26 08:40:26 -04:00
Michael Rash
55ae7d5095 [test suite] auto-generate fko-wrapper/fuzz_spa_payload file with spa_fuzzing.py if necessary in --enable-complete/--enable-fuzzing-interfaces mode 2014-05-25 22:10:43 -04:00
Michael Rash
23e8dcfddd [test suite] added configure_max_coverage.sh for --enable-complete mode 2014-05-25 16:23:40 -04:00
Michael Rash
fa53cc62e1 [test suite] SPA packet fuzzer minor comment additions to clearly define SPA packet types 2014-05-25 15:50:09 -04:00
Michael Rash
d625a24a87 [test suite] added fko_new_with_data() call with SPA data that is too short 2014-05-25 15:08:31 -04:00
Michael Rash
00ea2ce0ef [test suite] added --enable-complete option for fuzzing, fault injection, and code coverage 2014-05-25 12:37:35 -04:00
Michael Rash
de03ed702e [test suite] added the ability to run fiu-run fault injection binary against fwknop 2014-05-24 17:55:57 -04:00
Michael Rash
597a3d3953 [libfko] added fault injections for remaining ...set...() functions called by fko_new() 2014-05-24 15:12:07 -04:00
Michael Rash
5f227cfa48 [libfko] added fault injections for fko_set_username() 2014-05-24 14:47:10 -04:00
Michael Rash
17f325eceb [libfko] added fault injections for fko_set_rand_value() 2014-05-24 14:01:49 -04:00
Michael Rash
35ad832392 [libfko] started on libfiu fault injection code 2014-05-24 10:14:28 -04:00
Michael Rash
8d61a8cf7f [test suite] added tests/rijndael_hmac_fuzzing.pl file 2014-05-23 18:55:06 -04:00
Michael Rash
0a82c68451 [test suite] add hmac_fuzzing_access.conf file 2014-05-23 18:50:47 -04:00
Michael Rash
cf3f41821b [test suite] add fault injection tests 2014-05-22 08:36:11 -05:00
Michael Rash
a65fff7e7b [test suite] make fko_wrapper binary path absolute 2014-05-22 08:30:36 -05:00
Michael Rash
c5e8eee743 [test suite] make fko_wrapper binary path absolute 2014-05-22 08:29:06 -05:00
Michael Rash
a2f2777e9f [test suite] add fko_basic.c file to the FKO wrapper 2014-05-22 08:24:16 -05:00
Michael Rash
8666788a16 [test suite] minor line counter addition for file_find_regex() 2014-05-21 09:12:20 -04:00
Michael Rash
84821438bd [test suite] started on support for libfiu fault injection tests 2014-05-20 21:20:10 -04:00
Michael Rash
55582c31f8 [test suite] expand libfko username coverage testing by adding undef LOGNAME env variable test 2014-05-10 23:16:32 -04:00
Michael Rash
d5e5961ca1 [test suite] stronger valgrind test requirements
This commit adds a couple of suppressions for known issues that valgrind
finds in libcap, and then makes a significant change to how the test
suite deals with any valgrind errors (in --enable-valgrind mode) that
are outside of these suppressions.  That is, any new valgrind errors
that are discovered will cause the test that triggers them to fail.
Previous to this commit, the final valgrind "flagged functions" test
attmpted to do this by comparing valgrind output across test runs. This
worked well enough for a while, but this latest commit enforces a
stricter stance for valgrind validation of the fwknop code base.
2014-05-09 21:13:48 -04:00
Michael Rash
7cb8ad9528 [fko-wrapper] add missing fko_destroy() call 2014-05-09 20:53:32 -04:00
Michael Rash
22ad9044cd [test suite] python fuzzer pkt_id counter minor bug fix 2014-05-09 20:51:37 -04:00
Michael Rash
3e0c983bbd [test suite] add lib path and valgrind string to server start/stop cycle tests 2014-05-09 07:57:46 -04:00
Michael Rash
2b5029a4ee [test suite] add SIGINT, SIGUSR1, and SIGUSR2 signals to restart cycle test for code coverage 2014-05-09 07:49:57 -04:00
Michael Rash
33234183df [test stuie] fko-wrapper PKT_ID generation + send fuzzing packets back through fko_new_with_data() cycle 2014-05-08 07:46:13 -04:00
Michael Rash
16b3911091 [test suite] Rijndael HMAC fuzzing support and a few minor test additions 2014-05-08 07:25:47 -04:00
Michael Rash
d7e9ae578b [test suite] add digest cache rewrite feature for test coverage, add config line and pcap filter validation tests 2014-05-04 09:16:39 -04:00
Michael Rash
24f9c582bb [test suite] add multi-port access request to python fuzzer 2014-05-04 09:15:44 -04:00
Michael Rash
5f24fc8c5f [server] add --dump-serv-err-codes for test coverage 2014-05-02 22:59:05 -04:00
Michael Rash
fb21e3a575 [server] bug fix to handle SPA packets via http 2014-04-29 23:25:31 -04:00
Michael Rash
6dde30bc91 [test suite] significant test coverage update
This commit adds a lot of test coverage support as guided by gcov +
lcov.

Also added the --no-ipt-check-support option to fwknopd (this is only
useful in practice on older Linux distros where 'iptables -C' is not
available, but it helps with test coverage).
2014-04-29 20:54:01 -04:00
Michael Rash
9901d8a76a [libfko/test suite] add the FUZZING_INTERFACES macro
Add a new fko_set_encoded_data() function gated by #define
FUZZING_INTERFACES to allow encryption and authentication to be bypassed
for fuzzing purposes (and only fuzzing purposes).  The fko-wrapper code
has been extended to process data in the
test/fko-wrapper/fuzz_spa_payloads file, which is created by the new
python fuzzer.  Typical workflow is:

$ cd test/fko-wrapper
$ ../spa_fuzzer.py > fuzz_spa_payloads
$ make fuzzing

(as root):

./test-fwknop.pl  --enable-profile-coverage --enable-fuzzing-interfaces --enable-all --include wrapper

[+] Starting the fwknop test suite...

    args: --enable-profile-coverage --enable-fuzzing-interfaces --enable-all --include wrapper

    Saved results from previous run to: output.last/

    Valgrind mode enabled, will import previous coverage from:
        output.last/valgrind-coverage/

[+] Total test buckets to execute: 2

[Rijndael] [fko-wrapper] multiple libfko calls (with valgrind)......pass (1)
[Rijndael] [fko-wrapper] multiple libfko calls......................pass (2)
[profile coverage] gcov profile coverage............................pass (3)
[valgrind output] [flagged functions] ..............................pass (4)

    Run time: 5.85 minutes

[+] 0/0/0 OpenSSL tests passed/failed/executed
[+] 0/0/0 OpenSSL HMAC tests passed/failed/executed
[+] 4/0/4 test buckets passed/failed/executed
2014-04-26 23:04:44 -04:00
Michael Rash
e1dde1733a [test suite] python fuzzer - more field length variations to hit MAX_SPA_MESSAGE_SIZE 2014-04-26 23:01:47 -04:00
Michael Rash
91a60b8d91 [test suite] libfko wrapper is already called in Rijndael tests 2014-04-26 22:35:57 -04:00
Michael Rash
367424ece5 [test suite] python fuzzer - account for base64 strings that have stripped '=' chars 2014-04-26 22:03:32 -04:00
Michael Rash
e00add778e [test suite] python fuzzer - add fuzzing fields to original fields (interim commit) 2014-04-26 17:03:47 -04:00
Michael Rash
1deccfd005 [test suite] python fuzzer - break out fuzzing sections into dedicated functions 2014-04-24 22:11:04 -04:00
Michael Rash
4b11232249 [test suite] add command mode SPA payload and splicing tests to python fuzzer 2014-04-23 23:31:37 -04:00
Michael Rash
b9e2a42c5c [test suite] support multiple initial SPA payloads in the python fuzzer 2014-04-22 23:48:13 -04:00
Michael Rash
cd8a2493a7 [test suite] python fuzzer additional tests 2014-04-22 23:20:06 -04:00
Michael Rash
beb8df4643 [test suite] add python SPA packet payload fuzzer 2014-04-22 21:00:16 -04:00
Michael Rash
63a59bf48b [test suite] add --enable-fuzzing-interfaces, fix profile coverage file handling 2014-04-22 20:58:03 -04:00
Michael Rash
67dd1d5bdd [server] bug fix to allow IP-formatted masks for SOURCE lines in access.conf 2014-04-12 15:21:00 -04:00
Michael Rash
b243bb4bb7 [client] fix minor memory leak before exit() in parsing invalid time offsets 2014-04-11 22:45:27 -04:00
Michael Rash
b422f1b9a7 [test suite] implement new fwknopd access/fwknopd.conf file writing feature similar to client rc file writing/testing 2014-04-10 23:10:11 -04:00
Michael Rash
c75cbdddef [test suite] add compounded tests for fko-wrapper 2014-04-10 23:08:51 -04:00
Michael Rash
55d1ee3fd9 [test suite] --key-* arg validation with --fd 0 2014-04-09 23:56:50 -04:00