permission checks added to be more safe during bond creation

Signed-off-by: Uncle Fatso <uncle.fatso@ghostchain.io>
This commit is contained in:
Uncle Fatso 2026-10-23 17:30:47 +03:00
parent c7cb47605a
commit b06f6c115f
Signed by: f4ts0
GPG Key ID: 565F4F2860226EBB

View File

@ -166,10 +166,17 @@ contract GhostBondDepository is IBondDepository, NoteKeeper {
msg.sender != IGhostAuthority(AUTHORITY).policy()
) revert NotGuardianOrPolicy();
if (
!ITreasury(TREASURY).registered(ITreasury.STATUS.RESERVETOKEN, _quoteToken) &&
!ITreasury(TREASURY).registered(ITreasury.STATUS.LIQUIDITYTOKEN, _quoteToken)
) revert NonPermissionedToken();
{
bool isReserve =
ITreasury(TREASURY).registered(ITreasury.STATUS.RESERVETOKEN, _quoteToken) &&
ITreasury(TREASURY).permissioned(ITreasury.STATUS.RESERVETOKEN, _quoteToken);
bool isLiquidity =
ITreasury(TREASURY).registered(ITreasury.STATUS.LIQUIDITYTOKEN, _quoteToken) &&
ITreasury(TREASURY).permissioned(ITreasury.STATUS.LIQUIDITYTOKEN, _quoteToken);
if (!isReserve && !isLiquidity) revert NonPermissionedToken();
}
uint256 secondsToConclusion = _terms[1] - block.timestamp;
uint256 decimals = IERC20Metadata(_quoteToken).decimals();