Omniscia vfat Audit

FarmStrategy Static Analysis Findings

FarmStrategy Static Analysis Findings

FSY-01S: Inexistent Sanitization of Input Addresses

Description:

The linked function(s) accept address arguments yet do not properly sanitize them.

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/strategies/FarmStrategy.sol
64constructor(
65 SickleFactory factory,
66 ConnectorRegistry connectorRegistry,
67 Libraries memory libraries,
68 IPositionSettingsRegistry _positionSettingsRegistry
69) StrategyModule(factory, connectorRegistry) {
70 zapLib = libraries.zapLib;
71 swapLib = libraries.swapLib;
72 transferLib = libraries.transferLib;
73 feesLib = libraries.feesLib;
74 positionSettingsLib = libraries.positionSettingsLib;
75 positionSettingsRegistry = _positionSettingsRegistry;
76 strategyAddress = address(this);
77}

Recommendation:

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

Alleviation (6ab7af3bb495b817ffec469255ea679b1813eecb):

The vfat team evaluated this exhibit but opted to acknowledge it in the current iteration of the codebase.