Fixes merkle patricia proof verification in solidity for the case where there is an extension node in the receipt node's path. pathPtr got incremented using return value of _nibblesToTraverse. This happened before the extension node check and it resulted in verification failure.
As a fix, storing the return value of _nibblesToTraverse in a variable and using it when needed.
Fix receipt status in getReceiptBytes test helper function.
Fix branch mask encoding. HP encoding is required instead of RLP encoding. Since path will always be even number of nibbles, just prepending 00 is enough.
Fixes merkle patricia proof verification in solidity for the case where there is an extension node in the receipt node's path.
pathPtr
got incremented using return value of_nibblesToTraverse
. This happened before the extension node check and it resulted in verification failure. As a fix, storing the return value of_nibblesToTraverse
in a variable and using it when needed.Fix receipt status in
getReceiptBytes
test helper function.Fix branch mask encoding. HP encoding is required instead of RLP encoding. Since path will always be even number of nibbles, just prepending
00
is enough.