Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Fetching latest commit…

Cannot retrieve the latest commit at this time

..
Failed to load latest commit information.
afl
c-unit-tests
conf
fko-wrapper
fuzzing
misc
test-coverage
tests
README
configure_max_coverage.sh
coverage_diff.py
fko-python.py
gen-coverage-report.sh
generate_cores.sh
hardening-check
init-lcov.sh
invalid.args
invalid.key
invalid2.key
invalid3.key
lcov.env
local_spa.key
long_spa.key
rm-coverage-files.sh
run-test-suite.sh
spa_fuzzing.py
test-fwknop.pl
valgrind_suppressions

README

This directory contains the fwknop test suite.  After compiling the fwknop
sources in the parent directory of test/ the test suite can be executed.  One
of the most comprehensive ways of executing the test suite is as follows:

# ./run-test-suite.sh --enable-all

This mode enables IP resolution tests, so you will need Internet access in this
case.  If this is not possible or desirable, then another comprehensive testing
mode can be achieved with:

# ./run-test-suite.sh --enable-recompile --enable-perl-module-checks --enable-distcheck

Additional detail on the test suite (including --diff and --enable-valgrind
modes) may be found in the fwknop tutorial available here:

http://www.cipherdyne.org/fwknop/docs/fwknop-tutorial.html#3.5

For even more comprehensive testing than the --enable-all switch, you can use
--enable-complete.  However, before doing this, you will want to install the
'libfiu' fault injection library (available here: http://blitiri.com.ar/p/libfiu/),
and then compile fwknop with the 'test/configure_max_coverage.sh' script. This
provides additional arguments to the 'configure' script to build fwknop with a
maximal testing and code coverage stance. Once fwknop is compiled, then run:

# ./run-test-suite.sh --enable-complete

Note that in this mode the test suite will consume about close to 500MB of disk
space in the test/output/ directory. The main source of this data consumption
is the usage of the python SPA packet fuzzer 'test/spa_fuzzing.py'.
Something went wrong with that request. Please try again.