IERC4337Validation
Title: IERC4337Validation
Authors: David Dada <daveproxy80@gmail.com> (https://github.com/dadadave80), Modified from eth-infinitism account-abstraction (https://github.com/eth-infinitism/account-abstraction)
Admin/read surface of the ERC4337Validation facet. validateUserOp itself is on the vendored
IAccount (ERC-4337). This is the Diamond-local config: which EntryPoint is trusted.
The EntryPoint is stored, never hardcoded, so the canonical version (v0.7/v0.8/v0.9) is a deploy
choice. Signature validation is delegated to the configured ECDSA signer (AccountSigner).
Functions
entryPoint
The ERC-4337 EntryPoint trusted to call validateUserOp.
function entryPoint() external view returns (address);Returns
| Name | Type | Description |
|---|---|---|
| <none> | address |
setEntryPoint
Sets the trusted EntryPoint. Admin only.
function setEntryPoint(address entryPoint) external;Parameters
| Name | Type | Description |
|---|---|---|
| entryPoint | address |
Events
EntryPointSet
Emitted when the trusted EntryPoint is set.
event EntryPointSet(address indexed entryPoint);Parameters
| Name | Type | Description |
|---|---|---|
| entryPoint | address |
Errors
NotFromEntryPoint
validateUserOp was called by an address other than the configured EntryPoint.
error NotFromEntryPoint(address caller);Parameters
| Name | Type | Description |
|---|---|---|
| caller | address |
InvalidEntryPoint
The EntryPoint address is the zero address.
error InvalidEntryPoint();