diff --git a/eth/api_backend.go b/eth/api_backend.go index 183a0f1f44..3a11fe9f1a 100644 --- a/eth/api_backend.go +++ b/eth/api_backend.go @@ -353,6 +353,10 @@ func (b *EthApiBackend) FeeHistory(ctx context.Context, blockCount uint64, lastB return b.gpo.FeeHistory(ctx, blockCount, lastBlock, rewardPercentiles) } +func (b *EthApiBackend) BlobBaseFee(ctx context.Context) *big.Int { + return new(big.Int) +} + func (b *EthApiBackend) ChainDb() ethdb.Database { return b.eth.ChainDb() } diff --git a/internal/ethapi/api.go b/internal/ethapi/api.go index a8d360a23e..b306553f09 100644 --- a/internal/ethapi/api.go +++ b/internal/ethapi/api.go @@ -138,6 +138,11 @@ func (s *PublicEthereumAPI) FeeHistory(ctx context.Context, blockCount hexutil.U return results, nil } +// BlobBaseFee returns the base fee for blob gas at the current head. +func (s *PublicEthereumAPI) BlobBaseFee(ctx context.Context) *hexutil.Big { + return (*hexutil.Big)(new(big.Int)) +} + // ProtocolVersion returns the current Ethereum protocol version this node supports func (s *PublicEthereumAPI) ProtocolVersion() hexutil.Uint { return hexutil.Uint(s.b.ProtocolVersion()) diff --git a/internal/ethapi/backend.go b/internal/ethapi/backend.go index 560119df78..32a2c545f7 100644 --- a/internal/ethapi/backend.go +++ b/internal/ethapi/backend.go @@ -48,6 +48,7 @@ type Backend interface { ProtocolVersion() int SuggestGasTipCap(ctx context.Context) (*big.Int, error) FeeHistory(ctx context.Context, blockCount uint64, lastBlock rpc.BlockNumber, rewardPercentiles []float64) (*big.Int, [][]*big.Int, []*big.Int, []float64, error) + BlobBaseFee(ctx context.Context) *big.Int ChainDb() ethdb.Database AccountManager() *accounts.Manager RPCGasCap() uint64 // global gas cap for eth_call over rpc: DoS protection diff --git a/internal/ethapi/transaction_args_test.go b/internal/ethapi/transaction_args_test.go index 7e7f249994..411b4fde4e 100644 --- a/internal/ethapi/transaction_args_test.go +++ b/internal/ethapi/transaction_args_test.go @@ -291,6 +291,11 @@ func (b *backendMock) SyncProgress() ethereum.SyncProgress { return ethereum.Syn func (b *backendMock) FeeHistory(context.Context, uint64, rpc.BlockNumber, []float64) (*big.Int, [][]*big.Int, []*big.Int, []float64, error) { return nil, nil, nil, nil, nil } + +func (b *backendMock) BlobBaseFee(ctx context.Context) *big.Int { + return new(big.Int) +} + func (b *backendMock) ChainDb() ethdb.Database { return nil } func (b *backendMock) AccountManager() *accounts.Manager { return nil } func (b *backendMock) ExtRPCEnabled() bool { return false } diff --git a/internal/jsre/deps/web3.js b/internal/jsre/deps/web3.js index 83cbc36e78..4547be3281 100644 --- a/internal/jsre/deps/web3.js +++ b/internal/jsre/deps/web3.js @@ -5586,6 +5586,11 @@ var properties = function () { getter: 'eth_gasPrice', outputFormatter: formatters.outputBigNumberFormatter }), + new Property({ + name: 'blobBaseFee', + getter: 'eth_blobBaseFee', + outputFormatter: formatters.outputBigNumberFormatter + }), new Property({ name: 'accounts', getter: 'eth_accounts' diff --git a/les/api_backend.go b/les/api_backend.go index fe8371c5a2..be4fd4e000 100644 --- a/les/api_backend.go +++ b/les/api_backend.go @@ -286,6 +286,10 @@ func (b *LesApiBackend) FeeHistory(ctx context.Context, blockCount uint64, lastB return b.gpo.FeeHistory(ctx, blockCount, lastBlock, rewardPercentiles) } +func (b *LesApiBackend) BlobBaseFee(ctx context.Context) *big.Int { + return new(big.Int) +} + func (b *LesApiBackend) ChainDb() ethdb.Database { return b.eth.chainDb }