Orbit Bridge
  • Introduction
  • Overview
  • Core Concept
  • How it works
    • Features
    • Differentiation
    • Bridge Validator
    • Bridge Operator
    • Governance
  • Bridging Transactions
    • Ethereum
    • BNB Chain
    • Klaytn
    • Heco
    • Polygon
    • Celo
    • ICON
    • XRP
  • Validator Guide
    • Notes for Validator Nodes
    • Hardware Specifications
    • Validator Reward Structure
    • Quick Start
    • REST API
    • Configuration
    • Troubleshooting
  • Operator Guide
    • Hardware Specifications
    • Quick Start
    • REST API
    • Configuration
    • Troubleshooting
  • Official Bridge Governance
  • Token Registration for Bridging
    • Registration Using Etherscan
    • Registration Using Remix
    • Bridge to The Open Network(TON)
      • Registration on TON Using Etherscan
      • Registration on TON Using Remix
  • FAQ
    • General [EN]
    • General [KO]
    • Gas Fee Guide [EN]
    • Gas Fee Guide [KO]
    • Guide for Adding RPC Network [EN]
    • Guide for Adding RPC Network [KO]
    • Anti-Phishing [EN]
    • Anti-Phishing [KO]
    • Transaction delay after setting the gas fee
    • Integration Guide
      • 1. List of supported chains
      • 2. Contract Addresses
      • 3. How to use an Orbit Bridge
      • 4. Chain Explorers
      • 5. API
  • Contract
    • OrbitHub
    • Bridge
      • Ethereum
      • BNB Chain
      • Klaytn
      • Heco
      • Polygon
      • Celo
      • ICON
      • XRP
    • Vault (Layer 1)
      • Ethereum
      • BNB Chain
      • Klaytn
      • Heco
      • Polygon
      • Celo
      • XRP
    • Minter (Layer 2)
      • Ethereum
      • Avalanche
      • BNB Chain
      • Klaytn
      • Celo
      • Fantom
      • Harmony
      • Polygon
      • Moonriver
      • OKExChain
      • Orbit
      • Gnosis
      • ICON
      • XRP
    • BridgeReceiver
    • Governance
    • Glossary
  • LINK
    • Orbit Bridge Github
    • Orbit Bridge Website
  • POLICIES
    • Layer Fee
    • Bridge Fee
      • Current
      • History
        • Ethereum Layer1
        • BNB Layer 1
        • Ripple Layer 1
        • Klaytn Layer 1
    • Terms of Use [EN]
    • Terms of Use [KO]
  • Bridging Assets
    • Ethereum Layer 1
    • Ripple Layer 1
    • BNB Layer 1
  • CROSS CHAIN TIPS
    • ICON
    • Celo
    • HECO
    • XRP
Powered by GitBook
On this page
  • Code
  • Events
  • Confirmation
  • Revocation
  • Submission
  • Execution
  • ExecutionFailure
  • OwnerAddition
  • OwnerRemoval
  • RequirementChange
  • Interface

Was this helpful?

  1. Contract

Governance

Code

  • MessageMultiSigWallet.sol

  • MultiSigWallet.sol

Events

Confirmation

event Confirmation(address indexed sender, uint indexed transactionId);

Allows an owner to confirm a transaction.

  • address sender : Owner Address

  • uint transactionId : Transaction Identifier

Revocation

event Revocation(address indexed sender, uint indexed transactionId);

Allows an owner to revoke confirmation for a transaction.

  • address sender : Owner Address

  • uint transactionId : Transaction Identifier

Submission

event Submission(uint indexed transactionId);

Adds a new transaction to the transaction mapping if the transaction does not exist yet.

  • uint transactionId : Transaction Identifier

Execution

event Execution(uint indexed transactionId);

Transaction succeeded.

  • uint transactionId : Transaction Identifier

ExecutionFailure

event ExecutionFailure(uint indexed transactionId);

Transaction failed.

  • uint transactionId : Transaction Identifier

OwnerAddition

event OwnerAddition(address indexed owner);

Adds new Owner.

  • address owner : New Owner Address

OwnerRemoval

event OwnerRemoval(address indexed owner);

Removes Owner.

  • address owner : Owner Address

RequirementChange

event RequirementChange(uint required);

Changes Multi-Sig Wallet Requirement.

  • uint required : Requirement Value

Interface

pragma solidity 0.5.0;

interface MessageMultiSigWallet {
    function getConfirmationCount(uint transactionId) public view returns (uint count);
    function getTransactionCount(bool pending, bool executed) public view returns (uint count);
    function getOwners() public view returns (address[] memory);
    function getConfirmations(uint transactionId) public view returns (address[] memory _confirmations);
    function getTransactionIds(uint from, uint to, bool pending, bool executed) public view returns (uint[] memory _transactionIds);
    function getHashValidators(bytes32 hash) public view returns (address[] memory)
    function isConfirmed(uint transactionId) public view returns (bool);
    function isValidatedHash(bytes32 hash) public view returns (bool);
    
    function submitTransaction(address destination, uint value, bytes memory data) public returns (uint transactionId);
    function confirmTransaction(uint transactionId) public;
    function revokeConfirmation(uint transactionId) public;
    function executeTransaction(uint transactionId) public;
    
    function updateValidate(bytes32 hash) public returns (bool);
    function validate(address validator, bytes32 hash, uint8 v, bytes32 r, bytes32 s) public returns (bool);
}
PreviousBridgeReceiverNextGlossary

Last updated 4 years ago

Was this helpful?