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);
}

Last updated