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
_sourceChainIdControl: Fully controlled by caller.
Constraints: N/A.
Impact: Sent to LZ as the source.
_blockHashControl: Fully controlled by caller.
Constraints: N/A. Assumed to be verified against
_receiptHashby the calling function.Impact: Block hash to be delivered.
_receiptHashControl: Fully controlled by caller with possible additional constraints by calling function.
Constraints: Verified with
blockUpdater.Impact: Receipt for the block hash.
_lookupHashControl: Fully controlled by caller.
Constraints: N/A.
Impact: Used by LZ to lookup block data.
_blockDataControl: Fully controlled by caller with possible additional constraints by calling function.
Constraints: N/A. Assumes already confirmed against block hash.
Impact: Delivered to LZ.
_userApplicationControl: 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
blockUpdateris 0.Revert if receipt is invalid.