Previously it only merged the psbt with itself, now it tries to merge another.
fuzz: Extend psbt fuzz target a bit #21606
pull MarcoFalke wants to merge 1 commits into bitcoin:master from MarcoFalke:2104-fuzzPsbt changing 1 files +20 −3-
MarcoFalke commented at 3:45 PM on April 5, 2021: member
- DrahtBot added the label Tests on Apr 5, 2021
-
MarcoFalke commented at 6:27 PM on April 5, 2021: member
Note this breaks the existing inputs' format, but can trivially be fixed:
for f in ./psbt/*; do echo "$f" && sed -i 's|\\|\\\\|g' "$f"; done<!-- for f in ./temp_psbt/*; do echo "$f" && sed 's|\\|\\\\|g' "$f" > "${f}_d"; done for f in ./temp_psbt/*; do echo "$f" && ( ( cat "$f" && echo -n '\' && cat "$f" ) > "${f}_double" ); done
- MarcoFalke force-pushed on Apr 7, 2021
-
MarcoFalke commented at 8:50 AM on April 7, 2021: member
@practicalswift Thomas J, mind taking a look here? This only changes the fuzz target you added, so shouldn't be too hard to review.
-
fuzz: Extend psbt fuzz target a bit faaf3954e2
- MarcoFalke force-pushed on Apr 9, 2021
-
practicalswift commented at 3:41 PM on April 9, 2021: contributor
@MarcoFalke Sure! Thanks for the ping!
Tested ACK faaf3954e2f0089b6c6b9965f15e7f9af09c6fb0
FWIW I believe the code paths that this PR adds coverage for is a subset of the code paths covered by the RPC fuzzer (see #21169). That is just an observation and not an argument against this PR.
I think we should strive for covering our functions both 1.) from the "micro level" as in this case, and 2.) from the "macro level" as in the case of say the
process_message,process_messagesandrpcfuzzers.Why?
- The macro level harnesses are more constrained and the fuzzer will thus focus its finite resources on realistic code paths which may be problematic as the code is written today ("reachable" bugs).
- The micro level harnesses give the fuzzer permission to explore also code paths which are not exercised by current callers but may be exercised in the future by future callers (currently "unreachable" latent bugs).
In other words: Strong Concept ACK for reaching into the PSBT code from both the micro level (this PR) and from the macro level (RPC fuzzer, see #21169) :)
- MarcoFalke merged this on Apr 9, 2021
- MarcoFalke closed this on Apr 9, 2021
- MarcoFalke deleted the branch on Apr 9, 2021
- sidhujag referenced this in commit db25b1d4e0 on Apr 9, 2021
- DrahtBot locked this on Aug 16, 2022