Skip to content
Lattice

IERC6900ValidationModule

Git Source

Inherits: IERC6900Module

Validation module: authorizes user operations, runtime calls, and ERC-1271 signatures per entityId.

Functions

validateUserOp

function validateUserOp(uint32 entityId, PackedUserOperation calldata userOp, bytes32 userOpHash)
        external
        returns (uint256);

Parameters

NameTypeDescription
entityIduint32
userOpPackedUserOperation
userOpHashbytes32

Returns

NameTypeDescription
<none>uint256Packed validation data: validAfter (6 bytes) ‖ validUntil (6 bytes) ‖ authorizer (20 bytes).

validateRuntime

MUST revert to reject the call.

function validateRuntime(
        address account,
        uint32 entityId,
        address sender,
        uint256 value,
        bytes calldata data,
        bytes calldata authorization
    ) external;

Parameters

NameTypeDescription
accountaddress
entityIduint32
senderaddress
valueuint256
databytes
authorizationbytes

validateSignature

function validateSignature(address account, uint32 entityId, address sender, bytes32 hash, bytes calldata signature)
        external
        view
        returns (bytes4);

Parameters

NameTypeDescription
accountaddress
entityIduint32
senderaddress
hashbytes32
signaturebytes

Returns

NameTypeDescription
<none>bytes4ERC-1271 magic value 0x1626ba7e if valid, or 0xffffffff if invalid.