Omniscia Arcade XYZ Audit

CallWhitelistDelegation Static Analysis Findings

CallWhitelistDelegation Static Analysis Findings

CWD-01S: Inexistent Sanitization of Input Address

Description:

The linked function accepts an address argument yet does not properly sanitize it.

Impact:

The presence of zero-value addresses, especially in constructor implementations, can cause the contract to be permanently inoperable. These checks are advised as zero-value inputs are a common side-effect of off-chain software related bugs.

Example:

contracts/vault/CallWhitelistDelegation.sol
48constructor(address _registry) {
49 registry = IDelegationRegistry(_registry);
50}

Recommendation:

We advise some basic sanitization to be put in place by ensuring that the address specified is non-zero.

Alleviation (7a4e1dc948e94ded7385dbb74818bcf93ecc207c):

The _registry input address of the CallWhitelistDelegation::constructor is now properly sanitized, preventing the contract from being misconfigured during its deployment.