⬅️ Contracts

RestrictedPermissions

Restricted Permissions module

Author: Fei Protocol

this contract is used to deprecate certain roles irrevocably on a contract. Particularly, the burner, pcv controller, and governor all revert when called. To use, call setCore on the target contract and set to RestrictedPermissions. By revoking the governor, a new Core cannot be set. This enforces that onlyGovernor, onlyBurner, and onlyPCVController actions are irrevocably disabled. The mint and guardian rolls pass through to the immutably referenced core contract.

DEV NOTE: IMPORTANT: fei() and tribe() calls normally present on Core are not used here, so this contract only works for contracts that don't rely on them.

Mainnet implementations

Name Address
restrictedPermissions 0x10ffa0CD36Bc16b355d21A08DF4a552c4A9FEC10

Fei, Core

Methods

core

function core() view returns(address)

passthrough core to reference

Returns
Param Type Notes
address

isBurner

function isBurner(address) pure returns(bool)
Params
Param Type Notes
address
Returns
Param Type Notes
bool

isGovernor

function isGovernor(address) pure returns(bool)

returns false rather than reverting so calls to onlyGuardianOrGovernor don't revert

Params
Param Type Notes
address
Returns
Param Type Notes
bool

isGuardian

function isGuardian(address) view returns(bool)

checks if address is a guardian

Params
Param Type Notes
_address address address to check
Returns
Param Type Notes
bool true _address is a guardian

isMinter

function isMinter(address) view returns(bool)

checks if address is a minter

Params
Param Type Notes
_address address address to check
Returns
Param Type Notes
bool true _address is a minter

isPCVController

function isPCVController(address) pure returns(bool)
Params
Param Type Notes
address
Returns
Param Type Notes
bool

⬅️ Contracts