mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-02-01 03:01:05 +00:00
fab2f3df4beb230eef63bdcf5042b6417c0012dc fuzz: Exclude too expensive inputs in descriptor_parse targets (MarcoFalke) Pull request description: Accepting "expensive" fuzz inputs which have no real use-case is problematic, because it prevents the fuzz engine from spending time on the next useful fuzz input. For example, those will take several seconds (!) and the flamegraph shows that base58 encoding is the cause: ``` curl -fLO 'f5abf41608' curl -fLO '78cb317546' FUZZ=mocked_descriptor_parse ./bld-cmake/bin/fuzz ./f5abf41608addcef3538da61d8096c2050235032 FUZZ=descriptor_parse ./bld-cmake/bin/fuzz ./78cb3175467f53b467b949883ee6072e92dbb267 ``` This will also break 32-bit fuzzing, see https://github.com/bitcoin/bitcoin/issues/34110#issuecomment-3759461248. Fix all issues by checking for `HasTooLargeLeafSize`. Sorry for creating several pull requests to fix this class of issue, but I think this one should be the last one. 😅 ACKs for top commit: brunoerg: reACK fab2f3df4beb230eef63bdcf5042b6417c0012dc frankomosh: re-ACK fab2f3df4beb230eef63bdcf5042b6417c0012dc Tree-SHA512: 4ecf98ec4adc39f6e014370945fb1598cdd3ceba60f7209b00789ac1164b6d20e82a69d71f8419d9a40d57ee3fea36ef593c47fe48b584b6e8344c44f20a15c1