Function: _updateHash(uint16 _sourceChainId, byte[32] _blockHash, byte[32] _receiptHash, byte[32] _lookupHash, byte[32] _blockData, address _userApplication)
Delivers block data if block confirmation exists for _blockHash
and _receiptHash
.
Inputs
_sourceChainId
Control: Fully controlled by caller.
Constraints: N/A.
Impact: Sent to LZ as the source.
_blockHash
Control: Fully controlled by caller.
Constraints: N/A. Assumed to be verified against
_receiptHash
by the calling function.Impact: Block hash to be delivered.
_receiptHash
Control: Fully controlled by caller with possible additional constraints by calling function.
Constraints: Verified with
blockUpdater
.Impact: Receipt for the block hash.
_lookupHash
Control: Fully controlled by caller.
Constraints: N/A.
Impact: Used by LZ to lookup block data.
_blockData
Control: Fully controlled by caller with possible additional constraints by calling function.
Constraints: N/A. Assumes already confirmed against block hash.
Impact: Delivered to LZ.
_userApplication
Control: Fully controlled by caller.
Constraints: Must have a valid receiver library.
Impact: Used to get ultra light node.
Branches and code coverage (including function calls)
Intended branches
Block data broadcasted successfully if receipt is valid.
Negative behavior
Revert if
blockUpdater
is 0.Revert if receipt is invalid.