f358160cd5
Fixes: #10814 This PR updates the following RPC methods according to EIP-1898 specs. The following RPC methods are affected: - eth_getBalance - eth_getStorageAt - eth_getTransactionCount - eth_getCode - eth_call Note that eth_getBlockByNumber was not included in this list in the spec although it seems it should be affected also? Currently these methods all accept a blkParam string which can be one of "latest", "earliest", "pending", or a block number (decimal or hex). The spec enables caller to additionally specify a json hash which can include the following fields: - blockNumber EthUint64: A block number (decimal or hex) which is similar to the original use of the blkParam string - blockHash EthHash: The block hash - requireCanonical bool) If true we should make sure the block is in the canonical chain Since the blkParam needs to support both being a number/string and a json hash then this to properly work we need to introduce a new struct with pointer fields to check if they exist. This is done in the EthBlockParamByNumberOrHash struct which first tries to unmarshal as a json hash (according to eip-1898) and then fallback to unmarshal as string/number. |
||
---|---|---|
.. | ||
blockminer.go | ||
circuit.go | ||
client.go | ||
control.go | ||
deals_state.go | ||
deals.go | ||
ensemble_opts_nv.go | ||
ensemble_opts.go | ||
ensemble_presets.go | ||
ensemble.go | ||
evm.go | ||
files.go | ||
funds.go | ||
init.go | ||
itestd.go | ||
log.go | ||
mockcli.go | ||
node_full.go | ||
node_miner.go | ||
node_opts.go | ||
node_worker.go | ||
rpc.go | ||
run.go | ||
solidity.go | ||
state.go |