Core Contracts

Regnum Aurum Acquisition Corp
HardhatReal World AssetsNFT
77,280 USDC
View results
Submission Details
Severity: medium
Valid

`RAACMinter.mintRewards()` Can Never Be Called

Summary

The RAACMinter.mintRewards() function is intended to be callable only by the StabilityPool. However, there is currently no logic within the StabilityPool to invoke this function.

Vulnerability Details

The RAACMinter.mintRewards() function checks if the caller is the StabilityPool. Since there is no implementation in the StabilityPool that calls this function, it remains inaccessible.

function mintRewards(address to, uint256 amount) external nonReentrant whenNotPaused {
182 if (msg.sender != address(stabilityPool)) revert OnlyStabilityPool();
uint256 toMint = excessTokens >= amount ? 0 : amount - excessTokens;
excessTokens = excessTokens >= amount ? excessTokens - amount : 0;
if (toMint > 0) {
raacToken.mint(address(this), toMint);
}
raacToken.safeTransfer(to, amount);
emit RAACMinted(amount);
}

Impact

The RAACMinter.mintRewards() function can never be called, which prevents reward minting.

Tools Used

Manual review

Recommendations

Implement logic within the StabilityPool to call the mintRewards() function.

Updates

Lead Judging Commences

inallhonesty Lead Judge 7 months ago
Submission Judgement Published
Validated
Assigned finding tags:

RAACMinter::mintRewards function is never called by StabilityPool despite being the only authorized caller, leaving intended reward functionality unused

inallhonesty Lead Judge 7 months ago
Submission Judgement Published
Validated
Assigned finding tags:

RAACMinter::mintRewards function is never called by StabilityPool despite being the only authorized caller, leaving intended reward functionality unused

Support

FAQs

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

Give us feedback!