Skip to main content

OVM_CrossDomainEnabled

OVM_CrossDomainEnabled#

Helper contract for contracts performing cross-domain communications

Compiler used: defined by inheriting contract Runtime target: defined by inheriting contract

Functions#

constructor(address _messenger) (public)

Parameters:#

  • _messenger: Address of the CrossDomainMessenger on the current layer.
getCrossDomainMessenger() → contract iOVM_CrossDomainMessenger (internal)

Gets the messenger, usually from storage. This function is exposed in case a child contract needs to override.

sendCrossDomainMessage(address _crossDomainTarget, uint32 _gasLimit, bytes _message) (internal)

Sends a message to an account on another domain

Parameters:#

  • _crossDomainTarget: The intended recipient on the destination domain
  • _message: The data to send to the target (usually calldata to a function with onlyFromCrossDomainAccount())
  • _gasLimit: The gasLimit for the receipt of the message on the target domain.

Modifiers#

onlyFromCrossDomainAccount(address _sourceDomainAccount)

Enforces that the modified function is only callable by a specific cross-domain account.

Parameters:

  • _sourceDomainAccount: The only account on the originating domain which is authenticated to call this function.