DeFiHardhatFoundry
250,000 USDC
View results
Submission Details
Severity: low
Invalid

Uninitialized local variables found in multiple functions

Summary

Uninitialized local variables found in the functions below

Vulnerability Details

  • LibConvert.calculateStalkPenalty(LibConvert.DeltaBStorage,uint256,uint256,address,address).spd (contracts/libraries/Convert/LibConvert.sol#242) is a local variable never initialized

  • LibGerminate.endAccountGermination(address,uint32,uint32).germinatingStalk (contracts/libraries/Silo/LibGerminate.sol#176) is a local variable never initialized

  • L2ContractMigrationFacet.addMigratedDepositsToAccount(address,L2ContractMigrationFacet.AccountDepositData).totalDepositedBdv (contracts/beanstalk/silo/L2ContractMigrationFacet.sol#160) is a local variable never initialized

  • LibGerminate.endTotalGermination(uint32,address[]).rootsFromGerminatingStalk (contracts/libraries/Silo/LibGerminate.sol#99) is a local variable never initialized

  • TractorFacet.updateCounter(bytes32,LibTractor.CounterUpdateType,uint256).newCount (contracts/beanstalk/farm/TractorFacet.sol#146) is a local variable never initialized

  • ReseedField.init(ReseedField.MigratedPlotData[],uint256,uint256,uint256,uint256,uint8).calculatedTotalPods (contracts/beanstalk/init/reseed/L2/ReseedField.sol#47) is a local variable never initialized

  • LibEvaluate.calcLPToSupplyRatio(uint256).totalUsdLiquidity (contracts/libraries/LibEvaluate.sol#252) is a local variable never initialized

  • LibPipelineConvert.transferTokensFromPipeline(address).p (contracts/libraries/Convert/LibPipelineConvert.sol#139) is a local variable never initialized

  • LibShipping.ship(uint256).capExceeded (contracts/libraries/LibShipping.sol#42) is a local variable never initialized

  • LibFertilizer.addUnderlying(uint256,uint256,uint256).newDepositedBeans (contracts/libraries/LibFertilizer.sol#94) is a local variable never initialized

  • ReseedSilo.reseedSiloDeposit(ReseedSilo.SiloDeposits).totalCalcDepositedBdv (contracts/beanstalk/init/reseed/L2/ReseedSilo.sol#111) is a local variable never initialized

  • LibEvaluate.calcLPToSupplyRatio(uint256).largestLiq (contracts/libraries/LibEvaluate.sol#253) is a local variable never initialized

  • LibChainlinkOracle.getPrice(address,uint256).decimals (contracts/libraries/Oracle/LibChainlinkOracle.sol#61) is a local variable never initialized

  • ReseedSilo.reseedSiloDeposit(ReseedSilo.SiloDeposits).totalCalcDeposited (contracts/beanstalk/init/reseed/L2/ReseedSilo.sol#110) is a local variable never initialized

  • LibChainlinkOracle.getTwap(address,uint256,uint256).decimals (contracts/libraries/Oracle/LibChainlinkOracle.sol#103) is a local variable never initialized

  • LibChainlinkOracle.getTwap(address,uint256,uint256).t (contracts/libraries/Oracle/LibChainlinkOracle.sol#126) is a local variable never initialized

  • LibConvert._withdrawTokens(address,int96[],uint256[],uint256).a (contracts/libraries/Convert/LibConvert.sol#449) is a local variable never initialized

  • MetadataImage.plotLogic(int96)._plot (contracts/beanstalk/metadata/MetadataImage.sol#317) is a local variable never initialized

  • L2ContractMigrationFacet.addMigratedDepositsToAccount(address,L2ContractMigrationFacet.AccountDepositData).totalDeposited (contracts/beanstalk/silo/L2ContractMigrationFacet.sol#159) is a local variable never initialized

  • LibGerminate.endAccountGermination(address,uint32,uint32).totalRootsFromGermination (contracts/libraries/Silo/- LibGerminate.sol#175) is a local variable never initialized

Impact

An attacker can call the variable to manipulate the protocol as one desires.

Tools Used

Slither

Recommendations

Initialize all the variables. If a variable is meant to be initialized to zero, explicitly set it to zero to improve code readability.

Updates

Lead Judging Commences

inallhonesty Lead Judge about 1 year ago
Submission Judgement Published
Invalidated
Reason: Lack of quality
Assigned finding tags:

Quality

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.