@@ -72,26 +72,10 @@ class GethExceptionMapper(ExceptionMapper):
72
72
TransactionException .INITCODE_SIZE_EXCEEDED : "max initcode size exceeded" ,
73
73
TransactionException .NONCE_MISMATCH_TOO_LOW : "nonce too low" ,
74
74
TransactionException .NONCE_MISMATCH_TOO_HIGH : "nonce too high" ,
75
- BlockException .INVALID_DEPOSIT_EVENT_LAYOUT : "unable to parse deposit data" ,
76
75
BlockException .INCORRECT_BLOB_GAS_USED : "blob gas used mismatch" ,
77
76
BlockException .INCORRECT_EXCESS_BLOB_GAS : "invalid excessBlobGas" ,
78
77
BlockException .INVALID_VERSIONED_HASHES : "invalid number of versionedHashes" ,
79
78
BlockException .INVALID_REQUESTS : "invalid requests hash" ,
80
- BlockException .INVALID_DEPOSIT_EVENT_LAYOUT : "invalid requests hash" ,
81
- # Geth does not validate the sizes or offsets of the deposit
82
- # contract logs. As a workaround we have set
83
- # INVALID_DEPOSIT_EVENT_LAYOUT equal to INVALID_REQUESTS.
84
- #
85
- # Although this is out of spec, it is understood that this
86
- # will not cause an issue so long as the mainnet/testnet
87
- # deposit contracts don't change.
88
- #
89
- # The offsets are checked second and the sizes are checked
90
- # third within the `is_valid_deposit_event_data` function:
91
- # https://eips.ethereum.org/EIPS/eip-6110#block-validity
92
- #
93
- # EELS definition for `is_valid_deposit_event_data`:
94
- # https://github.com/ethereum/execution-specs/blob/5ddb904fa7ba27daeff423e78466744c51e8cb6a/src/ethereum/forks/prague/requests.py#L51
95
79
BlockException .SYSTEM_CONTRACT_CALL_FAILED : "system call failed to execute:" ,
96
80
BlockException .INVALID_BLOCK_HASH : "blockhash mismatch" ,
97
81
BlockException .RLP_BLOCK_LIMIT_EXCEEDED : "block RLP-encoded size exceeds maximum" ,
@@ -107,6 +91,23 @@ class GethExceptionMapper(ExceptionMapper):
107
91
r"blob gas used \d+ exceeds maximum allowance \d+"
108
92
),
109
93
BlockException .INVALID_GAS_USED_ABOVE_LIMIT : r"invalid gasUsed: have \d+, gasLimit \d+" ,
94
+ BlockException .INVALID_DEPOSIT_EVENT_LAYOUT : (
95
+ r"invalid requests hash|failed to parse deposit logs"
96
+ ),
97
+ # Geth does not validate the sizes or offsets of the deposit
98
+ # contract logs. As a workaround we have set
99
+ # INVALID_DEPOSIT_EVENT_LAYOUT equal to INVALID_REQUESTS.
100
+ #
101
+ # Although this is out of spec, it is understood that this
102
+ # will not cause an issue so long as the mainnet/testnet
103
+ # deposit contracts don't change.
104
+ #
105
+ # The offsets are checked second and the sizes are checked
106
+ # third within the `is_valid_deposit_event_data` function:
107
+ # https://eips.ethereum.org/EIPS/eip-6110#block-validity
108
+ #
109
+ # EELS definition for `is_valid_deposit_event_data`:
110
+ # https://github.com/ethereum/execution-specs/blob/5ddb904fa7ba27daeff423e78466744c51e8cb6a/src/ethereum/forks/prague/requests.py#L51
110
111
}
111
112
112
113
0 commit comments