Assessment reports>RabbitX>Threat Model>stake

Function: stake(uint256 amount)

This function emits the Stake event and transfers the paymentToken to the bfx.

Inputs

  • amount

    • Control: Completely controlled by the caller.

    • Constraints: The value must not be smaller than MIN_STAKE, and the caller must have enough paymentToken to transfer.

    • Impact: The amount to transfer.

Branches and code coverage

Intended branches

  • Transfer the paymentToken from msg.sender to this contract.

  • Increase nextStakeId when the transfer succeeds.

Negative behavior

  • Revert when the amount is smaller than MIN_STAKE.

  • Revert when the transfer fails.

Zellic © 2025Back to top ↑