diff --git a/crates/rpc/rpc-eth-api/src/helpers/call.rs b/crates/rpc/rpc-eth-api/src/helpers/call.rs index 711749f822..5841cc422a 100644 --- a/crates/rpc/rpc-eth-api/src/helpers/call.rs +++ b/crates/rpc/rpc-eth-api/src/helpers/call.rs @@ -114,6 +114,7 @@ pub trait EthCall: EstimateCall + Call + LoadPendingBlock + LoadBlock + FullEthA // If not explicitly required, we disable nonce check evm_env.cfg_env.disable_nonce_check = true; evm_env.cfg_env.disable_base_fee = true; + evm_env.cfg_env.tx_gas_limit_cap = Some(u64::MAX); evm_env.block_env.basefee = 0; } @@ -397,6 +398,9 @@ pub trait EthCall: EstimateCall + Call + LoadPendingBlock + LoadBlock + FullEthA // evm_env.cfg_env.disable_base_fee = true; + // Disable EIP-7825 transaction gas limit to support larger transactions + evm_env.cfg_env.tx_gas_limit_cap = Some(u64::MAX); + // Disabled because eth_createAccessList is sometimes used with non-eoa senders evm_env.cfg_env.disable_eip3607 = true; @@ -776,6 +780,9 @@ pub trait Call: // evm_env.cfg_env.disable_base_fee = true; + // Disable EIP-7825 transaction gas limit to support larger transactions + evm_env.cfg_env.tx_gas_limit_cap = Some(u64::MAX); + // set nonce to None so that the correct nonce is chosen by the EVM request.as_mut().take_nonce(); diff --git a/crates/rpc/rpc-eth-api/src/helpers/estimate.rs b/crates/rpc/rpc-eth-api/src/helpers/estimate.rs index 65f41ce938..26d6a2ff8e 100644 --- a/crates/rpc/rpc-eth-api/src/helpers/estimate.rs +++ b/crates/rpc/rpc-eth-api/src/helpers/estimate.rs @@ -53,6 +53,9 @@ pub trait EstimateCall: Call { // evm_env.cfg_env.disable_base_fee = true; + // Disable EIP-7825 transaction gas limit to support larger transactions + evm_env.cfg_env.tx_gas_limit_cap = Some(u64::MAX); + // set nonce to None so that the correct nonce is chosen by the EVM request.as_mut().take_nonce();