Skip to content

BaseOmnichainControllerSrc

BaseOmnichainControllerSrc at v2.15.0 is the abstract BNB-side base for the current OmnichainProposalSender. It uses LayerZero V1 uint16 endpoint IDs, named chain IDs in the ABI, applies per-destination 24-hour command limits, and disables ownership renunciation. It is not a standalone deployment.

ACM (Access Control Manager) contract address

address accessControlManager

Maximum daily limit for commands from the local chain

mapping(uint16 => uint256) chainIdToMaxDailyLimit

Total commands transferred within the last 24-hour window from the local chain

mapping(uint16 => uint256) chainIdToLast24HourCommandsSent

Timestamp when the last 24-hour window started from the local chain

mapping(uint16 => uint256) chainIdToLast24HourWindowStart

Timestamp when the last proposal sent from the local chain to dest chain

mapping(uint16 => uint256) chainIdToLastProposalSentTimestamp

Sets the limit of daily (24 Hour) command amount

function setMaxDailyLimit(uint16 chainId_, uint256 limit_) external
NameTypeDescription
chainId_uint16Destination chain id
limit_uint256Number of commands
  • Emits SetMaxDailyLimit with old and new limit and its corresponding chain id
  • Controlled by AccessControlManager

Triggers the paused state of the controller

function pause() external
  • Controlled by AccessControlManager

Triggers the resume state of the controller

function unpause() external
  • Controlled by AccessControlManager

Sets the address of Access Control Manager (ACM)

function setAccessControlManager(address accessControlManager_) external
NameTypeDescription
accessControlManager_addressThe new address of the Access Control Manager
  • Emits NewAccessControlManager with old and new access control manager addresses
  • Only owner

Empty implementation of renounce ownership to avoid any mishap

function renounceOwnership() public