Newly introduced DoS



Summary:

The code in question is a "belt-and-suspenders just in case" case that should be impossible to trigger. AcceptBlock() is called from two places in the code: ProcessBlock, if the block is not an orphan, and recursively, in AcceptBlock(), processing orphans that link to the block being accepted. The mapBlockIndex.find(hashPrevBlock) in AcceptBlock can't fail. In case there is some subtle bug or edge case, keeping the check is appropriate. Attackers look for subtle bugs and edge cases that can be exploited.


Updated on: 2023-06-04T20:05:27.388686+00:00