Closed akshay-ap closed 4 months ago
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | 0.0% |
Covered Lines: | 48 |
Relevant Lines: | 48 |
Totals | |
---|---|
Change from base Build 9710872352: | -2.5% |
Covered Lines: | 51 |
Relevant Lines: | 51 |
Totals | |
---|---|
Change from base Build 9710872352: | -2.5% |
Covered Lines: | 51 |
Relevant Lines: | 51 |
Totals | |
---|---|
Change from base Build 9890531912: | 0.0% |
Covered Lines: | 51 |
Relevant Lines: | 51 |
I think the tests don't have full coverage - All tests fail with the final check (i.e. whether or not the signature length matches the final expected offset), but AFAICT, none of the fail on the
if (!pointsToEnd)
check by inserting additional bytes in between the dynamic signatures.
Related to https://github.com/safe-global/safe-smart-account/issues/754
Changes in PR
_checkSignatureLength
function inSafe4437Module
contract . This function retrieves threshold from Safe and iterates over signature data._checkSignatureLength
in FV specs. The prover was reporting error without giving call traces.package.json
Open for discussion
Should
_checkSignatureLength
also do more stricter checks that are already there incheckNSignature
function ofSafe
? IfSafe4337Module
does not perform below mentioned checks then it will be implicitly assumed to be done inSafe
contract and this creates a requirement that all futureSafe
versions to have these checks if used with thisSafe4337Module
.if (signatures.length < offset)
this check is currently done twice.Other potential check that can be repeated: https://github.com/safe-global/safe-smart-account/blob/8f80a8372d193be121dcdb52e869a258824e5c0f/contracts/Safe.sol#L233
Code size change
This PR
Main branch
Impact on gas usage
This PR
Main branch