core-lightning/tests
Antoine Poinsot 62b54d0125 build: introduce a fuzzing mode
This adds a new configuration, --enable-fuzzing (which is more than
welcome to be coupled with --enable-address-sanitizer), to pass the
fuzzer sanitizer argument when compiling objects. This allows libfuzzer
to actually be able "to fuzz" by detecting coverage and be smart when
mutating inputs.

As libfuzzer brings its own ~~fees~~ main(), we compile objects with
fsanitize=fuzzer-no-link, and special-case the linkage of the fuzz
targets.

A "lib" is added to abstract out the interface to the fuzzing tool used.
This allow us to use the same targets to fuzz using AFL, hongfuzz or w/e
by adding their entrypoints into libfuzz. (h/t to practicalswift who
introduced this for bitcoin-core, which i mimiced)

Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-10-21 19:34:39 +02:00
..
data hsmd/db: backfill pubkey information so that psbts signing works 2020-07-29 13:13:46 +02:00
fuzz build: introduce a fuzzing mode 2020-10-21 19:34:39 +02:00
plugins df-open: use channel_id for openchannel_update and openchannel_signed 2020-10-20 12:50:31 +10:30
vectors pytest: Add tests for the sphinx onion generation and processing 2020-03-12 10:25:01 +10:30
benchmark.py py-tests: rename 'announce' to 'wait_for_announce' 2018-12-08 15:15:55 -08:00
conftest.py pytest: Pass result to fixtures and keep directories of failed tests 2018-08-07 00:54:19 +00:00
db.py pytest: Have the DB provider search for the postgres binary 2019-09-22 02:03:43 +00:00
fixtures.py pytest: Verification mode of expanded stmts for the db_write hook 2020-10-10 11:34:43 +10:30
test_closing.py tests,fundchannel: return the result from the fundchannel rpc call 2020-10-16 13:51:57 +10:30
test_connection.py mfc: blackbox test for commitment vs funding tx feerates 2020-10-21 11:24:16 +10:30
test_db.py pytest: Rename all fund_channel to fundchannel 2020-09-25 21:04:56 +02:00
test_gossip.py common/gossmap: digest private channel information too. 2020-10-21 08:58:34 +10:30
test_invoices.py tests,fundchannel: return the result from the fundchannel rpc call 2020-10-16 13:51:57 +10:30
test_misc.py tx,bugfix: correct signature length estimate 2020-10-21 11:24:16 +10:30
test_onion.py pytest: Actually make sure that the direcory exists 2020-03-24 09:52:33 +10:30
test_pay.py tests,fundchannel: return the result from the fundchannel rpc call 2020-10-16 13:51:57 +10:30
test_plugin.py tx,bugfix: correct signature length estimate 2020-10-21 11:24:16 +10:30
test_wallet.py tx,bugfix: correct signature length estimate 2020-10-21 11:24:16 +10:30
utils.py pytest: allow variable-order coin_moves, and give more information on failure. 2020-09-08 10:14:42 +09:30