audit
This commit is contained in:
@@ -10,11 +10,6 @@ import "../../interfaces/IYTVault.sol";
|
||||
import "../../interfaces/IYTLPToken.sol";
|
||||
import "../../interfaces/IUSDY.sol";
|
||||
|
||||
/**
|
||||
* @title YTPoolManager
|
||||
* @notice 管理ytLP的铸造和赎回,计算池子AUM
|
||||
* @dev UUPS可升级合约
|
||||
*/
|
||||
contract YTPoolManager is Initializable, UUPSUpgradeable, ReentrancyGuardUpgradeable {
|
||||
using SafeERC20 for IERC20;
|
||||
|
||||
@@ -82,13 +77,6 @@ contract YTPoolManager is Initializable, UUPSUpgradeable, ReentrancyGuardUpgrade
|
||||
_;
|
||||
}
|
||||
|
||||
/**
|
||||
* @notice 初始化合约
|
||||
* @param _ytVault YTVault合约地址
|
||||
* @param _usdy USDY代币地址
|
||||
* @param _ytLP ytLP代币地址
|
||||
* @param _cooldownDuration 冷却时间(秒)
|
||||
*/
|
||||
function initialize(
|
||||
address _ytVault,
|
||||
address _usdy,
|
||||
@@ -108,10 +96,6 @@ contract YTPoolManager is Initializable, UUPSUpgradeable, ReentrancyGuardUpgrade
|
||||
cooldownDuration = _cooldownDuration;
|
||||
}
|
||||
|
||||
/**
|
||||
* @notice 授权升级(仅gov可调用)
|
||||
* @param newImplementation 新实现合约地址
|
||||
*/
|
||||
function _authorizeUpgrade(address newImplementation) internal override onlyGov {}
|
||||
|
||||
function setGov(address _gov) external onlyGov {
|
||||
@@ -138,9 +122,6 @@ contract YTPoolManager is Initializable, UUPSUpgradeable, ReentrancyGuardUpgrade
|
||||
emit AumAdjustmentChanged(_addition, _deduction);
|
||||
}
|
||||
|
||||
/**
|
||||
* @notice 为指定账户添加流动性(Handler调用)
|
||||
*/
|
||||
function addLiquidityForAccount(
|
||||
address _fundingAccount,
|
||||
address _account,
|
||||
@@ -186,9 +167,6 @@ contract YTPoolManager is Initializable, UUPSUpgradeable, ReentrancyGuardUpgrade
|
||||
return mintAmount;
|
||||
}
|
||||
|
||||
/**
|
||||
* @notice 为指定账户移除流动性(Handler调用)
|
||||
*/
|
||||
function removeLiquidityForAccount(
|
||||
address _account,
|
||||
address _tokenOut,
|
||||
@@ -235,11 +213,6 @@ contract YTPoolManager is Initializable, UUPSUpgradeable, ReentrancyGuardUpgrade
|
||||
return amountOut;
|
||||
}
|
||||
|
||||
/**
|
||||
* @notice 获取ytLP价格
|
||||
* @param _maximise 是否取最大值
|
||||
* @return ytLP价格(18位精度)
|
||||
*/
|
||||
function getPrice(bool _maximise) external view returns (uint256) {
|
||||
uint256 aum = getAumInUsdy(_maximise);
|
||||
uint256 supply = IERC20(ytLP).totalSupply();
|
||||
@@ -249,11 +222,6 @@ contract YTPoolManager is Initializable, UUPSUpgradeable, ReentrancyGuardUpgrade
|
||||
return aum * YTLP_PRECISION / supply;
|
||||
}
|
||||
|
||||
/**
|
||||
* @notice 获取池子总价值(AUM)
|
||||
* @param _maximise true=使用最大价格(添加流动性时), false=使用最小价格(移除流动性时)
|
||||
* @return USDY计价的总价值
|
||||
*/
|
||||
function getAumInUsdy(bool _maximise) public view returns (uint256) {
|
||||
uint256 aum = IYTVault(ytVault).getPoolValue(_maximise);
|
||||
|
||||
@@ -267,10 +235,5 @@ contract YTPoolManager is Initializable, UUPSUpgradeable, ReentrancyGuardUpgrade
|
||||
return aum;
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev 预留存储空间,用于未来升级时添加新的状态变量
|
||||
* 50个slot = 50 * 32 bytes = 1600 bytes
|
||||
*/
|
||||
uint256[50] private __gap;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user