Assessment reports>Prisma Finance>Threat Models>_liquidateWithoutSP

Function: _liquidateWithoutSP(ITroveManager troveManager, address _borrower)

Liquidate a trove without using the stability pool. All debt and collateral are distributed proportionally between the remaining active troves.

Inputs

  • troveManager

    • Control: None.

    • Constraints: None.

    • Impact: The trove manager is used to determine the trove, move the pending balances and close it.

  • _borrower

    • Control: None.

    • Constraints: None.

    • Impact: The borrower address to be liquidated.

Branches and code coverage (including function calls)

Intended branches

  • The trove is closed, and all the debt and collateral is distributed proportionally between the remaining active troves.

Function call analysis

  • troveManager.getEntireDebtAndColl(_borrower)

    • What is controllable? _borrower.

    • If return value controllable, how is it used and how can it go wrong? Return values are not controllable.

    • What happens if it reverts, reenters, or does other unusual control flow? No reentrancy scenarios.

  • troveManager.movePendingTroveRewardsToActiveBalances(pendingDebtReward, pendingCollReward)

    • What is controllable? N/A.

    • If return value controllable, how is it used and how can it go wrong? Return value is not controllable.

    • What happens if it reverts, reenters, or does other unusual control flow? No reentrancy scenarios.

  • troveManager.closeTroveByLiquidation(_borrower)

    • What is controllable? _borrower.

    • If return value controllable, how is it used and how can it go wrong? Return value is not controllable.

    • What happens if it reverts, reenters, or does other unusual control flow? No reentrancy scenarios.

Zellic © 2025Back to top ↑