Skip to main content

Ether Vault

EtherVault is a special vault contract that:

  • Is initialized with 2^128 Ether.
  • Allows the contract owner to authorize addresses.
  • Allows authorized addresses to send/release Ether.

Authorized

event Authorized(address addr, bool authorized)

EtherReleased

event EtherReleased(address to, uint256 amount)

onlyAuthorized

modifier onlyAuthorized()

receive

receive() external payable

init

function init(address addressManager) external

releaseEther

function releaseEther(uint256 amount) public

Transfer Ether from EtherVault to the sender, checking that the sender is authorized.

Parameters

NameTypeDescription
amountuint256Amount of Ether to send.

releaseEther

function releaseEther(address recipient, uint256 amount) public

Transfer Ether from EtherVault to a designated address, checking that the sender is authorized.

Parameters

NameTypeDescription
recipientaddressAddress to receive Ether.
amountuint256Amount of ether to send.

authorize

function authorize(address addr, bool authorized) public

Set the authorized status of an address, only the owner can call this.

Parameters

NameTypeDescription
addraddressAddress to set the authorized status of.
authorizedboolAuthorized status to set.

isAuthorized

function isAuthorized(address addr) public view returns (bool)

Get the authorized status of an address.

Parameters

NameTypeDescription
addraddressAddress to get the authorized status of.