-
Notifications
You must be signed in to change notification settings - Fork 37.8k
tests: Add key_io fuzzing harness. Fuzz additional functions in existing fuzzing harnesses. #17926
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
c5b9ba8
to
7240604
Compare
7240604
to
5fa0446
Compare
Rebased! :) |
5fa0446
to
1d9c554
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK. LGTM
@MarcoFalke Thanks for great feedback. All feedback addressed. Please re-review :) |
1d9c554
to
4813d41
Compare
71e8d67
to
52fed69
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 52fed69 🛫
Show signature and timestamp
Signature:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
ACK 52fed696d251dc38211eb2fa7f144b6a989dd479 🛫
-----BEGIN PGP SIGNATURE-----
iQGzBAEBCgAdFiEE+rVPoUahrI9sLGYTzit1aX5ppUgFAlwqrYAACgkQzit1aX5p
pUjJ3Av9FMRINKzkOdtiO6hfUiEY9evAs+3IVzuGJxrFAbS1j2HGPK1lgpw9QXPX
I7QMERrzBEMuV7Rz+i38qS26YMGfZAaUadFfg/BMyuwNh4z1DjhPR9Uas/JBkXjZ
yE/mZ4tT8mX4iKR/UXmQBEGzRkVFug8HEWVax1iQcwiKWbx4vAaJwuvfd3DhfROv
Cb1Qb1qM0z4RDivnXpOhwfpBL/8jrDikLM7vHWY2TzSQq3GJ8acvAOVXg60LqxmL
xtrjY8sNE13aowtElHuOUplHh43GLJXPj3ZkxOV0OyBgnYl8iP2cN4ns9UnUX+EQ
4c9d6U17cePisqsOVtw0BaKskAtwFA9A2o3VeGaOGb3wYOzfaB02oIqEbQ1lH1Ii
gG+2O6Lr5c3oMtBS8dCU+YXnHsu0pHfHzw+VQ+YZRpeH829Brq6M0UUqFErBDfY6
9L4DamTLo/ROVX/BT7zzBbgMLveLXjRnH8Zzx7SM7xepVjuO8QTTdAzl9IDf6lC0
UWm8QYGJ
=rsX8
-----END PGP SIGNATURE-----
vch.insert(vch.end(), buffer.begin(), buffer.end()); | ||
CScript decompressed_script; | ||
(void)DecompressScript(decompressed_script, size, vch); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like you accidentally added a unit test here? This does not depend on any fuzz input.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@MarcoFalke Are you sure about that? vch
is built from buffer
which is built from fuzz input, no? :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
buffer
is only appened to vch
, but pratically never read. Only the beginning of vch
(20 or 32 bytes) are read, and they are all constant (zero). So this does never read any fuzz input, except for copying into the vector.
I suggest to remove this for loop and content.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ping @practicalswift
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll fix. Thanks for the ping :)
fab0e5b fuzz: Add assert(script == decompressed_script) (MarcoFalke) Pull request description: Presumably an oversight in #17926 (comment) ACKs for top commit: practicalswift: Tested ACK fab0e5b Tree-SHA512: 6dcec06169df497a540fd6ebbcd89f5db22257241b2bbe756de868742f9bc324b80d38dbababfa07e5f3a830aaae9fc6d168dcc2ca5d75da437bdf4dc4e0f370
fab0e5b fuzz: Add assert(script == decompressed_script) (MarcoFalke) Pull request description: Presumably an oversight in bitcoin#17926 (comment) ACKs for top commit: practicalswift: Tested ACK fab0e5b Tree-SHA512: 6dcec06169df497a540fd6ebbcd89f5db22257241b2bbe756de868742f9bc324b80d38dbababfa07e5f3a830aaae9fc6d168dcc2ca5d75da437bdf4dc4e0f370
…ing fuzzing harnesses. Summary: ``` Add key_io fuzzing harness. Fuzz additional functions in the hex fuzzing harness. Fuzz additional functions in the integer fuzzing harness. Fuzz additional functions in the script fuzzing harness. Fuzz additional functions in the transaction fuzzing harness. ``` Backport of core [[bitcoin/bitcoin#17926 | PR17926]]. Test Plan: ninja bitcoin-fuzzers ./test/fuzz/test_runner.py <path_to_corpus> Reviewers: #bitcoin_abc, majcosta Reviewed By: #bitcoin_abc, majcosta Differential Revision: https://reviews.bitcoinabc.org/D8267
fab0e5b fuzz: Add assert(script == decompressed_script) (MarcoFalke) Pull request description: Presumably an oversight in bitcoin#17926 (comment) ACKs for top commit: practicalswift: Tested ACK fab0e5b Tree-SHA512: 6dcec06169df497a540fd6ebbcd89f5db22257241b2bbe756de868742f9bc324b80d38dbababfa07e5f3a830aaae9fc6d168dcc2ca5d75da437bdf4dc4e0f370
…tions in existing fuzzing harnesses
…tions in existing fuzzing harnesses
…tions in existing fuzzing harnesses
…tions in existing fuzzing harnesses
…tions in existing fuzzing harnesses
…tions in existing fuzzing harnesses
…tions in existing fuzzing harnesses
…tions in existing fuzzing harnesses
backport: bitcoin#18417, bitcoin#18521, bitcoin#18529, bitcoin#18176, bitcoin#18423, bitcoin#17926, bitcoin#18353, bitcoin#18407, bitcoin#18455, bitcoin#18565, bitcoin#18867 (fuzzing harness backports: part 2)
fab0e5b fuzz: Add assert(script == decompressed_script) (MarcoFalke) Pull request description: Presumably an oversight in bitcoin#17926 (comment) ACKs for top commit: practicalswift: Tested ACK fab0e5b Tree-SHA512: 6dcec06169df497a540fd6ebbcd89f5db22257241b2bbe756de868742f9bc324b80d38dbababfa07e5f3a830aaae9fc6d168dcc2ca5d75da437bdf4dc4e0f370
…tions in existing fuzzing harnesses
Add
key_io
fuzzing harness.Fuzz additional functions in the
hex
fuzzing harness.Fuzz additional functions in the
integer
fuzzing harness.Fuzz additional functions in the
script
fuzzing harness.Fuzz additional functions in the
transaction
fuzzing harness.How to test this PR