Mark blocks with too many sigops as failed#7217
Conversation
|
Hmm, that one's fun.... Yea, thinking briefly about it I don't see how that error could indicate block malleability. On December 15, 2015 12:46:54 PM PST, Suhas Daftuar [email protected] wrote:
|
|
A relayer cannot cause this error to trigger without also causing one of the real corruption-possible checks to fail, so concept ACK. |
|
@sipa and I went back and traced the blame for that line...it looks like when the corruption possible flag was set for this case, it was, indeed needed as it was checked before the merkle tree was checked. As the order has now changed we do, indeed, no longer need this check. |
|
utACK |
5246180 Mark blocks with too many sigops as failed (Suhas Daftuar)
|
Will this cause a hard-fork or a soft-fork? |
neither, we'd already never accept such blocks, iiuc? |
|
@rebroad neither, this just has to do with avoiding downloading the block in a loop |
|
Is this appropriate to backport to 0.11 and 0.10? |
|
ACK for backport
|
|
Yes, it should be also really simple to backport. |
|
ACK for backport to 0.10 and 0.11 |
This unsets the "corruption possible" field in
CValidationStatewhen callingCheckBlockon a block with too many sigops. Without this change, bitcoind would re-request such a block rather than mark it as permanently failed.