@@ -40,7 +40,9 @@ import (
40
40
"github.com/filecoin-project/lotus/node/hello"
41
41
"github.com/filecoin-project/lotus/node/impl"
42
42
"github.com/filecoin-project/lotus/node/impl/common"
43
+ "github.com/filecoin-project/lotus/node/impl/eth"
43
44
"github.com/filecoin-project/lotus/node/impl/full"
45
+ "github.com/filecoin-project/lotus/node/impl/gasutils"
44
46
"github.com/filecoin-project/lotus/node/impl/net"
45
47
"github.com/filecoin-project/lotus/node/modules"
46
48
"github.com/filecoin-project/lotus/node/modules/dtypes"
@@ -127,7 +129,7 @@ var ChainNode = Options(
127
129
// Markets (storage)
128
130
Override (new (* market.FundManager ), market .NewFundManager ),
129
131
130
- Override (new (* full .GasPriceCache ), full .NewGasPriceCache ),
132
+ Override (new (* gasutils .GasPriceCache ), gasutils .NewGasPriceCache ),
131
133
132
134
// Lite node API
133
135
ApplyIf (isLiteNode ,
@@ -138,9 +140,17 @@ var ChainNode = Options(
138
140
Override (new (full.MpoolModuleAPI ), From (new (api.Gateway ))),
139
141
Override (new (full.StateModuleAPI ), From (new (api.Gateway ))),
140
142
Override (new (stmgr.StateManagerAPI ), rpcstmgr .NewRPCStateManager ),
141
- Override (new (full.EthModuleAPI ), From (new (api.Gateway ))),
142
- Override (new (full.EthEventAPI ), From (new (api.Gateway ))),
143
143
Override (new (full.ActorEventAPI ), From (new (api.Gateway ))),
144
+ Override (new (eth.EthFilecoinAPI ), From (new (api.Gateway ))),
145
+ Override (new (eth.EthBasicAPI ), From (new (api.Gateway ))),
146
+ Override (new (eth.EthEventsAPI ), From (new (api.Gateway ))),
147
+ Override (new (eth.EthTransactionAPI ), From (new (api.Gateway ))),
148
+ Override (new (eth.EthLookupAPI ), From (new (api.Gateway ))),
149
+ Override (new (eth.EthTraceAPI ), From (new (api.Gateway ))),
150
+ Override (new (eth.EthGasAPI ), From (new (api.Gateway ))),
151
+ // EthSendAPI is a special case, we block the Untrusted method via GatewayEthSend even though it
152
+ // shouldn't be exposed on the Gateway API.
153
+ Override (new (eth.EthSendAPI ), new (modules.GatewayEthSend )),
144
154
145
155
Override (new (index.Indexer ), modules .ChainIndexer (config.ChainIndexerConfig {
146
156
EnableIndexer : false ,
@@ -266,17 +276,37 @@ func ConfigFullNode(c interface{}) Option {
266
276
If (cfg .Fevm .EnableEthRPC || cfg .Events .EnableActorEventsAPI ,
267
277
// Actor event filtering support, only needed for either Eth RPC and ActorEvents API
268
278
Override (new (events.EventHelperAPI ), From (new (modules.EventHelperAPI ))),
269
- Override (new (* filter.EventFilterManager ), modules .EventFilterManager (cfg .Events )),
279
+ Override (new (* filter.EventFilterManager ), modules .MakeEventFilterManager (cfg .Events )),
270
280
),
271
281
282
+ Override (new (eth.ChainStore ), From (new (* store.ChainStore ))),
283
+ Override (new (eth.StateManager ), From (new (* stmgr.StateManager ))),
284
+ Override (new (eth.EthFilecoinAPI ), eth .NewEthFilecoinAPI ),
285
+
272
286
If (cfg .Fevm .EnableEthRPC ,
273
- Override (new (* full.EthEventHandler ), modules .EthEventHandler (cfg .Events , cfg .Fevm .EnableEthRPC )),
274
- Override (new (full.EthModuleAPI ), modules .EthModuleAPI (cfg .Fevm )),
275
- Override (new (full.EthEventAPI ), From (new (* full.EthEventHandler ))),
287
+ Override (new (eth.StateAPI ), From (new (full.StateAPI ))),
288
+ Override (new (eth.SyncAPI ), From (new (full.SyncAPI ))),
289
+ Override (new (eth.MpoolAPI ), From (new (full.MpoolAPI ))),
290
+ Override (new (eth.MessagePool ), From (new (* messagepool.MessagePool ))),
291
+ Override (new (eth.GasAPI ), From (new (full.GasModule ))),
292
+
293
+ Override (new (eth.EthBasicAPI ), eth .NewEthBasicAPI ),
294
+ Override (new (eth.EthEventsInternal ), modules .MakeEthEventsExtended (cfg .Events , cfg .Fevm .EnableEthRPC )),
295
+ Override (new (eth.EthEventsAPI ), From (new (eth.EthEventsInternal ))),
296
+ Override (new (eth.EthTransactionAPI ), modules .MakeEthTransaction (cfg .Fevm )),
297
+ Override (new (eth.EthLookupAPI ), eth .NewEthLookupAPI ),
298
+ Override (new (eth.EthTraceAPI ), modules .MakeEthTrace (cfg .Fevm )),
299
+ Override (new (eth.EthGasAPI ), eth .NewEthGasAPI ),
300
+ Override (new (eth.EthSendAPI ), eth .NewEthSendAPI ),
276
301
),
277
302
If (! cfg .Fevm .EnableEthRPC ,
278
- Override (new (full.EthModuleAPI ), & full.EthModuleDummy {}),
279
- Override (new (full.EthEventAPI ), & full.EthModuleDummy {}),
303
+ Override (new (eth.EthBasicAPI ), & eth.EthBasicDisabled {}),
304
+ Override (new (eth.EthTransactionAPI ), & eth.EthTransactionDisabled {}),
305
+ Override (new (eth.EthLookupAPI ), & eth.EthLookupDisabled {}),
306
+ Override (new (eth.EthTraceAPI ), & eth.EthTraceDisabled {}),
307
+ Override (new (eth.EthGasAPI ), & eth.EthGasDisabled {}),
308
+ Override (new (eth.EthEventsAPI ), & eth.EthEventsDisabled {}),
309
+ Override (new (eth.EthSendAPI ), & eth.EthSendDisabled {}),
280
310
),
281
311
282
312
If (cfg .Events .EnableActorEventsAPI ,
0 commit comments