No checks for total supply limits when minting new reSDL tokens. This could lead to inflation.
Stems from the SDLPoolPrimary.handleIncomingUpdate()
and SDLPoolSecondary._queueNewLock()
functions which mint new reSDL tokens without imposing any limits.
Specifically, in SDLPoolPrimary.handleIncomingUpdate()
, the contract mints _numNewRESDLTokens
by simply incrementing the lastLockId
counter. There are no checks to prevent minting an excessive number of tokens: SDLPoolPrimary.handleIncomingUpdate
Similarly, in SDLPoolSecondary._queueNewLock()
, new locks are queued without any limit besides the per-account queuedNewLockLimit
. But even this limit does not restrict the total number of new tokens created. SDLPoolSecondary._queueNewLock()
The impact of this is that new reSDL
tokens can be arbitrarily minted without any maximum cap. This could lead to unbounded inflation as the total supply keeps increasing.
Vs
I recommend adding a totalRESDLSupplyLimit
variable and modifying the minting logic to check. This would prevent exceeding a defined maximum supply and mitigate the risk of unbounded inflation.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.