ACLManager

It is the registry of all system roles and permissions: who can list assets, manage risk, act as pool admin, bridge, etc.

  • addAssetListingAdmin(address admin) Grants AssetListingAdmin role.

  • addBridge(address bridge) Grants Bridge role.

  • addEmergencyAdmin(address admin) Grants EmergencyAdmin role.

  • addFlashBorrower(address borrower) Grants FlashBorrower role.

  • addPoolAdmin(address admin) Grants PoolAdmin role.

  • addRiskAdmin(address admin) Grants RiskAdmin role.

  • removeAssetListingAdmin(address admin) Revokes AssetListingAdmin role.

  • removeBridge(address bridge) Revokes Bridge role.

  • removeEmergencyAdmin(address admin) Revokes EmergencyAdmin role.

  • removeFlashBorrower(address borrower) Revokes FlashBorrower role.

  • removePoolAdmin(address admin) Revokes PoolAdmin role.

  • removeRiskAdmin(address admin) Revokes RiskAdmin role.


🔹Access Control Functions

  • getRoleAdmin(bytes32 role) → bytes32 Returns the admin role that manages a specific role.

  • grantRole(bytes32 role, address account) Grants a role to an account (requires caller to have admin rights for that role).

  • hasRole(bytes32 role, address account) → bool Checks if an account has a given role.

  • renounceRole(bytes32 role, address account) Allows an account to renounce its own role.

  • revokeRole(bytes32 role, address account) Revokes a role from an account (requires admin rights).

  • setRoleAdmin(bytes32 role, bytes32 adminRole) Sets a new admin role for a given role.


🔹Interface Support

  • supportsInterface(bytes4 interfaceId) → bool Checks if the contract supports a given ERC165 interface.

Last updated

Was this helpful?