Skip to content

Commit 7ff9983

Browse files
committed
message frame buider will create AuthorizedCodeService by itsef if it isn't set
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
1 parent 6a094e4 commit 7ff9983

File tree

17 files changed

+7
-37
lines changed

17 files changed

+7
-37
lines changed

ethereum/core/src/jmh/java/org/hyperledger/besu/ethereum/vm/operations/OperationBenchmarkHelper.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
import org.hyperledger.besu.ethereum.core.MessageFrameTestFixture;
2727
import org.hyperledger.besu.ethereum.storage.keyvalue.KeyValueSegmentIdentifier;
2828
import org.hyperledger.besu.evm.frame.MessageFrame;
29-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
3029
import org.hyperledger.besu.metrics.noop.NoOpMetricsSystem;
3130
import org.hyperledger.besu.plugin.services.storage.KeyValueStorage;
3231
import org.hyperledger.besu.plugin.services.storage.rocksdb.RocksDBMetricsFactory;
@@ -125,8 +124,7 @@ public MessageFrame.Builder createMessageFrameBuilder() {
125124
.apparentValue(messageFrame.getApparentValue())
126125
.code(messageFrame.getCode())
127126
.isStatic(messageFrame.isStatic())
128-
.completer(frame -> {})
129-
.authorizedCodeService(new AuthorizedCodeService());
127+
.completer(frame -> {});
130128
}
131129

132130
public void cleanUp() throws IOException {

ethereum/core/src/main/java/org/hyperledger/besu/ethereum/mainnet/SystemCallProcessor.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import org.hyperledger.besu.evm.operation.BlockHashOperation;
2626
import org.hyperledger.besu.evm.processor.AbstractMessageProcessor;
2727
import org.hyperledger.besu.evm.tracing.OperationTracer;
28-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
2928
import org.hyperledger.besu.evm.worldstate.WorldUpdater;
3029

3130
import java.util.Deque;
@@ -137,7 +136,6 @@ private MessageFrame createCallFrame(
137136
maybeContract
138137
.map(c -> processor.getCodeFromEVM(c.getCodeHash(), c.getCode()))
139138
.orElse(CodeV0.EMPTY_CODE))
140-
.authorizedCodeService(new AuthorizedCodeService())
141139
.build();
142140
}
143141
}

ethereum/core/src/main/java/org/hyperledger/besu/ethereum/privacy/PrivateTransactionProcessor.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
import org.hyperledger.besu.evm.frame.MessageFrame;
3333
import org.hyperledger.besu.evm.processor.AbstractMessageProcessor;
3434
import org.hyperledger.besu.evm.tracing.OperationTracer;
35-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
3635
import org.hyperledger.besu.evm.worldstate.WorldUpdater;
3736

3837
import java.util.Deque;
@@ -148,7 +147,6 @@ public TransactionProcessingResult processTransaction(
148147
.contract(privateContractAddress)
149148
.inputData(initCodeBytes.slice(code.getSize()))
150149
.code(code)
151-
.authorizedCodeService(new AuthorizedCodeService())
152150
.build();
153151
} else {
154152
final Address to = transaction.getTo().get();
@@ -164,7 +162,6 @@ public TransactionProcessingResult processTransaction(
164162
maybeContract
165163
.map(c -> messageCallProcessor.getCodeFromEVM(c.getCodeHash(), c.getCode()))
166164
.orElse(CodeV0.EMPTY_CODE))
167-
.authorizedCodeService(new AuthorizedCodeService())
168165
.build();
169166
}
170167

ethereum/core/src/test-support/java/org/hyperledger/besu/ethereum/core/MessageFrameTestFixture.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import org.hyperledger.besu.evm.Code;
2525
import org.hyperledger.besu.evm.code.CodeV0;
2626
import org.hyperledger.besu.evm.frame.MessageFrame;
27-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
2827
import org.hyperledger.besu.evm.worldstate.WorldUpdater;
2928

3029
import java.util.ArrayList;
@@ -181,7 +180,6 @@ public MessageFrame build() {
181180
blockHashLookup.orElseGet(
182181
() -> new CachingBlockHashLookup(localBlockHeader, localBlockchain)))
183182
.maxStackSize(maxStackSize)
184-
.authorizedCodeService(new AuthorizedCodeService())
185183
.build();
186184
stackItems.forEach(frame::pushStackItem);
187185
return frame;

ethereum/evmtool/src/main/java/org/hyperledger/besu/evmtool/benchmarks/BenchmarkExecutor.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
import org.hyperledger.besu.evm.gascalculator.PragueGasCalculator;
3636
import org.hyperledger.besu.evm.gascalculator.ShanghaiGasCalculator;
3737
import org.hyperledger.besu.evm.precompile.PrecompiledContract;
38-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
3938

4039
import java.io.PrintStream;
4140
import java.util.Locale;
@@ -71,7 +70,6 @@ public abstract class BenchmarkExecutor {
7170
.originator(Address.ZERO)
7271
.initialGas(100_000L)
7372
.worldUpdater(new SimpleWorld())
74-
.authorizedCodeService(new AuthorizedCodeService())
7573
.build();
7674

7775
/**

evm/src/main/java/org/hyperledger/besu/evm/fluent/EVMExecutor.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@
3838
import org.hyperledger.besu.evm.processor.ContractCreationProcessor;
3939
import org.hyperledger.besu.evm.processor.MessageCallProcessor;
4040
import org.hyperledger.besu.evm.tracing.OperationTracer;
41-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
4241
import org.hyperledger.besu.evm.worldstate.WorldUpdater;
4342

4443
import java.math.BigInteger;
@@ -745,7 +744,6 @@ public Bytes execute() {
745744
.accessListWarmStorage(accessListWarmStorage)
746745
.versionedHashes(versionedHashes)
747746
.completer(c -> {})
748-
.authorizedCodeService(new AuthorizedCodeService())
749747
.build();
750748

751749
final Deque<MessageFrame> messageFrameStack = initialMessageFrame.getMessageFrameStack();

evm/src/main/java/org/hyperledger/besu/evm/frame/MessageFrame.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1676,7 +1676,6 @@ private void validate() {
16761676
checkState(apparentValue != null, "Missing message frame apparent value");
16771677
checkState(code != null, "Missing message frame code");
16781678
checkState(completer != null, "Missing message frame completer");
1679-
checkState(authorizedCodeService != null, "Missing authorized account service");
16801679
}
16811680

16821681
/**
@@ -1690,6 +1689,11 @@ public MessageFrame build() {
16901689
WorldUpdater updater;
16911690
boolean newStatic;
16921691
TxValues newTxValues;
1692+
1693+
if (authorizedCodeService == null) {
1694+
authorizedCodeService = new AuthorizedCodeService();
1695+
}
1696+
16931697
if (parentMessageFrame == null) {
16941698
newTxValues =
16951699
new TxValues(

evm/src/test/java/org/hyperledger/besu/evm/code/CodeV0Test.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
import org.hyperledger.besu.evm.internal.EvmConfiguration;
3131
import org.hyperledger.besu.evm.operation.JumpOperation;
3232
import org.hyperledger.besu.evm.operation.Operation.OperationResult;
33-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
3433
import org.hyperledger.besu.evm.worldstate.WorldUpdater;
3534

3635
import javax.annotation.Nonnull;
@@ -91,7 +90,6 @@ private MessageFrame createJumpFrame(final CodeV0 getsCached) {
9190
.completer(f -> {})
9291
.miningBeneficiary(Address.ZERO)
9392
.blockHashLookup(l -> Hash.EMPTY)
94-
.authorizedCodeService(new AuthorizedCodeService())
9593
.build();
9694

9795
frame.setPC(CURRENT_PC);

evm/src/test/java/org/hyperledger/besu/evm/frame/MessageFrameTest.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import org.hyperledger.besu.evm.code.CodeV0;
2323
import org.hyperledger.besu.evm.toy.ToyBlockValues;
2424
import org.hyperledger.besu.evm.toy.ToyWorld;
25-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
2625

2726
import org.apache.tuweni.bytes.Bytes;
2827
import org.apache.tuweni.bytes.Bytes32;
@@ -59,8 +58,7 @@ void setUp() {
5958
.value(Wei.ZERO)
6059
.apparentValue(Wei.ZERO)
6160
.code(CodeV0.EMPTY_CODE)
62-
.completer(messageFrame -> {})
63-
.authorizedCodeService(new AuthorizedCodeService());
61+
.completer(messageFrame -> {});
6462
}
6563

6664
@Test

evm/src/test/java/org/hyperledger/besu/evm/operation/AbstractCreateOperationTest.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
import org.hyperledger.besu.evm.internal.Words;
4141
import org.hyperledger.besu.evm.processor.ContractCreationProcessor;
4242
import org.hyperledger.besu.evm.tracing.OperationTracer;
43-
import org.hyperledger.besu.evm.worldstate.AuthorizedCodeService;
4443
import org.hyperledger.besu.evm.worldstate.WorldUpdater;
4544

4645
import java.util.Deque;
@@ -176,7 +175,6 @@ private void executeOperation(final Bytes contract, final EVM evm) {
176175
.originator(Address.ZERO)
177176
.initialGas(100000L)
178177
.worldUpdater(worldUpdater)
179-
.authorizedCodeService(new AuthorizedCodeService())
180178
.build();
181179
final Deque<MessageFrame> messageFrameStack = messageFrame.getMessageFrameStack();
182180
messageFrame.pushStackItem(Bytes.ofUnsignedLong(contract.size()));

0 commit comments

Comments
 (0)