Skip to content

Commit

Permalink
Wire up EIP-3651 - Warm Coinbase to shanghaiTime
Browse files Browse the repository at this point in the history
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
  • Loading branch information
siladu committed Dec 14, 2022
1 parent 29fc15b commit 682fb7f
Showing 1 changed file with 28 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -647,6 +647,9 @@ static ProtocolSpecBuilder shanghaiDefinition(
final boolean quorumCompatibilityMode,
final EvmConfiguration evmConfiguration) {

final int stackSizeLimit = configStackSizeLimit.orElse(MessageFrame.DEFAULT_MAX_STACK_SIZE);
final BaseFeeMarket baseFeeMarket = getBaseFeeMarket(genesisConfigOptions);

return parisDefinition(
chainId,
configContractSizeLimit,
Expand All @@ -655,11 +658,36 @@ static ProtocolSpecBuilder shanghaiDefinition(
genesisConfigOptions,
quorumCompatibilityMode,
evmConfiguration)
.transactionProcessorBuilder(
(gasCalculator,
transactionValidator,
contractCreationProcessor,
messageCallProcessor) ->
new MainnetTransactionProcessor(
gasCalculator,
transactionValidator,
contractCreationProcessor,
messageCallProcessor,
true,
true,
stackSizeLimit,
baseFeeMarket,
CoinbaseFeePriceCalculator.eip1559()))
.withdrawalsProcessorBuilder(WithdrawalsProcessor.AllowedWithdrawalsProcessor::new)
.withdrawalsValidatorBuilder(WithdrawalsValidator.AllowedWithdrawals::new)
.name("Shanghai");
}

private static BaseFeeMarket getBaseFeeMarket(final GenesisConfigOptions genesisConfigOptions) {
// TODO SLD bug here? need to default to a later fork e.g. if london isn't specified but
// grayGlacier is.
final long londonForkBlockNumber =
genesisConfigOptions.getLondonBlockNumber().orElse(Long.MAX_VALUE);
return genesisConfigOptions.isZeroBaseFee()
? FeeMarket.zeroBaseFee(londonForkBlockNumber)
: FeeMarket.london(londonForkBlockNumber, genesisConfigOptions.getBaseFeePerGas());
}

static ProtocolSpecBuilder cancunDefinition(
final Optional<BigInteger> chainId,
final OptionalInt configContractSizeLimit,
Expand Down

0 comments on commit 682fb7f

Please sign in to comment.