Skip to content

Conversation

@apoelstra
Copy link
Member

There is a bug in psbt_input_deserialize which is triggered by this corpus, so we don't include it for now. I will file an issue for this.

…alize

There is a bug in psbt_input_deserialize which is triggered by this
corpus, so we don't include it for now. I will file an issue for this.
@roconnor-blockstream
Copy link
Contributor

Fuzzing harnesses lacking a corpus: simplicity_tx
Please consider adding a fuzz corpus at https://github.com/bitcoin-core/qa-assets
Traceback (most recent call last):
  File "/build/source/test/fuzz/test_runner.py", line 308, in <module>
    main()
  File "/build/source/test/fuzz/test_runner.py", line 176, in main
    run_once(
  File "/build/source/test/fuzz/test_runner.py", line 258, in run_once
    os.makedirs(corpus_path, exist_ok=True)
  File "<frozen os>", line 225, in makedirs
PermissionError: [Errno 13] Permission denied: '/nix/store/gcm4s8l5kgakpi4i2369z7jw85xhzkrw-qa-assets/fuzz_seed_corpus/simplicity_tx'

Might need to add a .gitignore in a directory.

@apoelstra
Copy link
Member Author

@roconnor-blockstream the simplicity_tx directory is only used when ElementsProject/elements#1384 is merged. I believe this PR should work on master (except that it'll crash) or on ElementsProject/elements#1391.

I can add a .gitignore ahead of time if you think it'd be worthwhile.

@apoelstra
Copy link
Member Author

Or you can try using #6.

@roconnor-blockstream
Copy link
Contributor

Oh I mistakenly thought this was the simplicity PR.

@roconnor-blockstream
Copy link
Contributor

Do you actually want to merge this, or do you want to reduce it first?

I don't know if it is actually reduced or not, but the branch name you are merging from and the fact that it is a million files suggests it isn't reduced.

@apoelstra
Copy link
Member Author

@roconnor-blockstream I would like it merged as-is.

The branch name is misleading -- I ran my reduction pass on the "unreduced" branch and then dumped the reduced set of files back into the "unreduced" worktree. And the number of files appears to be 263318 -- which is a large number, but divided by 181 fuzz targets, is about 1400 seeds per target. I don't think I can get it meaningfully lower.

@apoelstra
Copy link
Member Author

cc @delta1 now that we have merged the corresponding commit in Elements I think we can merge this one.

@roconnor-blockstream
Copy link
Contributor

roconnor-blockstream commented Feb 7, 2025

I have (spurious?) UBSan errors in minisketch in the master elements branch:

minisketch/src/fields/../int_utils.h:179:69: runtime error: shift exponent 32 is too large for 32-bit type 'unsigned int'

@delta1
Copy link
Member

delta1 commented Feb 10, 2025

ACK efed9bf

@delta1
Copy link
Member

delta1 commented Feb 10, 2025

@apoelstra happy to merge but I don't have permissions

@apoelstra
Copy link
Member Author

Weird. Ok, I'll merge this for now and fix the perms later.

FYI it will break the fuzztests in Elements. But I think this is fine -- the fixes are easy (need to add another ubsan suppression and need to tweak the witness_program fuzz target) -- and it's not like we've been running the fuzzer in CI anyway.

@apoelstra
Copy link
Member Author

...and it's really annoying having an open PR with 250k+ files changed. Every git operation related to this is horribly slow so I'd like it to be buried in the history as quickly as possible.

@apoelstra apoelstra merged commit 56a3375 into ElementsProject:master Feb 10, 2025
@apoelstra apoelstra deleted the 2025-01--unreduced-all branch February 10, 2025 15:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants