2017-05-01 11:09:48 +00:00
|
|
|
// Code generated by github.com/fjl/gencodec. DO NOT EDIT.
|
|
|
|
|
|
|
|
package eth
|
|
|
|
|
|
|
|
import (
|
|
|
|
"math/big"
|
2018-08-27 08:22:21 +00:00
|
|
|
"time"
|
2017-05-01 11:09:48 +00:00
|
|
|
|
|
|
|
"github.com/ethereum/go-ethereum/common"
|
2018-02-27 10:39:30 +00:00
|
|
|
"github.com/ethereum/go-ethereum/consensus/ethash"
|
2017-05-01 11:09:48 +00:00
|
|
|
"github.com/ethereum/go-ethereum/core"
|
|
|
|
"github.com/ethereum/go-ethereum/eth/downloader"
|
|
|
|
"github.com/ethereum/go-ethereum/eth/gasprice"
|
2019-10-04 15:21:24 +00:00
|
|
|
"github.com/ethereum/go-ethereum/miner"
|
|
|
|
"github.com/ethereum/go-ethereum/params"
|
2017-05-01 11:09:48 +00:00
|
|
|
)
|
|
|
|
|
2018-08-27 08:22:21 +00:00
|
|
|
// MarshalTOML marshals as TOML.
|
2017-05-01 11:09:48 +00:00
|
|
|
func (c Config) MarshalTOML() (interface{}, error) {
|
|
|
|
type Config struct {
|
|
|
|
Genesis *core.Genesis `toml:",omitempty"`
|
|
|
|
NetworkId uint64
|
|
|
|
SyncMode downloader.SyncMode
|
2018-08-27 08:22:21 +00:00
|
|
|
NoPruning bool
|
2019-10-04 15:21:24 +00:00
|
|
|
NoPrefetch bool
|
|
|
|
Whitelist map[uint64]common.Hash `toml:"-"`
|
|
|
|
LightServ int `toml:",omitempty"`
|
|
|
|
LightIngress int `toml:",omitempty"`
|
|
|
|
LightEgress int `toml:",omitempty"`
|
|
|
|
LightPeers int `toml:",omitempty"`
|
|
|
|
UltraLightServers []string `toml:",omitempty"`
|
|
|
|
UltraLightFraction int `toml:",omitempty"`
|
|
|
|
UltraLightOnlyAnnounce bool `toml:",omitempty"`
|
|
|
|
SkipBcVersionCheck bool `toml:"-"`
|
|
|
|
DatabaseHandles int `toml:"-"`
|
2017-05-01 11:09:48 +00:00
|
|
|
DatabaseCache int
|
2019-10-04 15:21:24 +00:00
|
|
|
DatabaseFreezer string
|
2018-12-19 10:02:07 +00:00
|
|
|
TrieCleanCache int
|
|
|
|
TrieDirtyCache int
|
2018-08-27 08:22:21 +00:00
|
|
|
TrieTimeout time.Duration
|
2019-10-04 15:21:24 +00:00
|
|
|
Miner miner.Config
|
2018-02-27 10:39:30 +00:00
|
|
|
Ethash ethash.Config
|
2017-08-04 16:14:17 +00:00
|
|
|
TxPool core.TxPoolConfig
|
2017-05-01 11:09:48 +00:00
|
|
|
GPO gasprice.Config
|
|
|
|
EnablePreimageRecording bool
|
|
|
|
DocRoot string `toml:"-"`
|
2018-12-19 10:02:07 +00:00
|
|
|
EWASMInterpreter string
|
|
|
|
EVMInterpreter string
|
2019-10-04 15:21:24 +00:00
|
|
|
RPCGasCap *big.Int `toml:",omitempty"`
|
|
|
|
Checkpoint *params.TrustedCheckpoint `toml:",omitempty"`
|
|
|
|
CheckpointOracle *params.CheckpointOracleConfig `toml:",omitempty"`
|
2017-05-01 11:09:48 +00:00
|
|
|
}
|
|
|
|
var enc Config
|
|
|
|
enc.Genesis = c.Genesis
|
|
|
|
enc.NetworkId = c.NetworkId
|
|
|
|
enc.SyncMode = c.SyncMode
|
2018-08-27 08:22:21 +00:00
|
|
|
enc.NoPruning = c.NoPruning
|
2019-10-04 15:21:24 +00:00
|
|
|
enc.NoPrefetch = c.NoPrefetch
|
|
|
|
enc.Whitelist = c.Whitelist
|
2017-05-01 11:09:48 +00:00
|
|
|
enc.LightServ = c.LightServ
|
2019-10-04 15:21:24 +00:00
|
|
|
enc.LightIngress = c.LightIngress
|
|
|
|
enc.LightEgress = c.LightEgress
|
2017-05-01 11:09:48 +00:00
|
|
|
enc.LightPeers = c.LightPeers
|
2019-10-04 15:21:24 +00:00
|
|
|
enc.UltraLightServers = c.UltraLightServers
|
|
|
|
enc.UltraLightFraction = c.UltraLightFraction
|
|
|
|
enc.UltraLightOnlyAnnounce = c.UltraLightOnlyAnnounce
|
2017-05-01 11:09:48 +00:00
|
|
|
enc.SkipBcVersionCheck = c.SkipBcVersionCheck
|
|
|
|
enc.DatabaseHandles = c.DatabaseHandles
|
|
|
|
enc.DatabaseCache = c.DatabaseCache
|
2019-10-04 15:21:24 +00:00
|
|
|
enc.DatabaseFreezer = c.DatabaseFreezer
|
2018-12-19 10:02:07 +00:00
|
|
|
enc.TrieCleanCache = c.TrieCleanCache
|
|
|
|
enc.TrieDirtyCache = c.TrieDirtyCache
|
2018-08-27 08:22:21 +00:00
|
|
|
enc.TrieTimeout = c.TrieTimeout
|
2019-10-04 15:21:24 +00:00
|
|
|
enc.Miner = c.Miner
|
2018-02-27 10:39:30 +00:00
|
|
|
enc.Ethash = c.Ethash
|
2017-08-04 16:14:17 +00:00
|
|
|
enc.TxPool = c.TxPool
|
2017-05-01 11:09:48 +00:00
|
|
|
enc.GPO = c.GPO
|
|
|
|
enc.EnablePreimageRecording = c.EnablePreimageRecording
|
|
|
|
enc.DocRoot = c.DocRoot
|
2018-12-19 10:02:07 +00:00
|
|
|
enc.EWASMInterpreter = c.EWASMInterpreter
|
|
|
|
enc.EVMInterpreter = c.EVMInterpreter
|
2019-10-04 15:21:24 +00:00
|
|
|
enc.RPCGasCap = c.RPCGasCap
|
|
|
|
enc.Checkpoint = c.Checkpoint
|
|
|
|
enc.CheckpointOracle = c.CheckpointOracle
|
2017-05-01 11:09:48 +00:00
|
|
|
return &enc, nil
|
|
|
|
}
|
|
|
|
|
2018-08-27 08:22:21 +00:00
|
|
|
// UnmarshalTOML unmarshals from TOML.
|
2017-05-01 11:09:48 +00:00
|
|
|
func (c *Config) UnmarshalTOML(unmarshal func(interface{}) error) error {
|
|
|
|
type Config struct {
|
|
|
|
Genesis *core.Genesis `toml:",omitempty"`
|
|
|
|
NetworkId *uint64
|
|
|
|
SyncMode *downloader.SyncMode
|
2018-08-27 08:22:21 +00:00
|
|
|
NoPruning *bool
|
2019-10-04 15:21:24 +00:00
|
|
|
NoPrefetch *bool
|
|
|
|
Whitelist map[uint64]common.Hash `toml:"-"`
|
|
|
|
LightServ *int `toml:",omitempty"`
|
|
|
|
LightIngress *int `toml:",omitempty"`
|
|
|
|
LightEgress *int `toml:",omitempty"`
|
|
|
|
LightPeers *int `toml:",omitempty"`
|
|
|
|
UltraLightServers []string `toml:",omitempty"`
|
|
|
|
UltraLightFraction *int `toml:",omitempty"`
|
|
|
|
UltraLightOnlyAnnounce *bool `toml:",omitempty"`
|
|
|
|
SkipBcVersionCheck *bool `toml:"-"`
|
|
|
|
DatabaseHandles *int `toml:"-"`
|
2017-05-01 11:09:48 +00:00
|
|
|
DatabaseCache *int
|
2019-10-04 15:21:24 +00:00
|
|
|
DatabaseFreezer *string
|
2018-12-19 10:02:07 +00:00
|
|
|
TrieCleanCache *int
|
|
|
|
TrieDirtyCache *int
|
2018-08-27 08:22:21 +00:00
|
|
|
TrieTimeout *time.Duration
|
2019-10-04 15:21:24 +00:00
|
|
|
Miner *miner.Config
|
2018-02-27 10:39:30 +00:00
|
|
|
Ethash *ethash.Config
|
2017-08-04 16:14:17 +00:00
|
|
|
TxPool *core.TxPoolConfig
|
2017-05-01 11:09:48 +00:00
|
|
|
GPO *gasprice.Config
|
|
|
|
EnablePreimageRecording *bool
|
|
|
|
DocRoot *string `toml:"-"`
|
2018-12-19 10:02:07 +00:00
|
|
|
EWASMInterpreter *string
|
|
|
|
EVMInterpreter *string
|
2019-10-04 15:21:24 +00:00
|
|
|
RPCGasCap *big.Int `toml:",omitempty"`
|
|
|
|
Checkpoint *params.TrustedCheckpoint `toml:",omitempty"`
|
|
|
|
CheckpointOracle *params.CheckpointOracleConfig `toml:",omitempty"`
|
2017-05-01 11:09:48 +00:00
|
|
|
}
|
|
|
|
var dec Config
|
|
|
|
if err := unmarshal(&dec); err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
if dec.Genesis != nil {
|
|
|
|
c.Genesis = dec.Genesis
|
|
|
|
}
|
|
|
|
if dec.NetworkId != nil {
|
|
|
|
c.NetworkId = *dec.NetworkId
|
|
|
|
}
|
|
|
|
if dec.SyncMode != nil {
|
|
|
|
c.SyncMode = *dec.SyncMode
|
|
|
|
}
|
2018-08-27 08:22:21 +00:00
|
|
|
if dec.NoPruning != nil {
|
|
|
|
c.NoPruning = *dec.NoPruning
|
|
|
|
}
|
2019-10-04 15:21:24 +00:00
|
|
|
if dec.NoPrefetch != nil {
|
|
|
|
c.NoPrefetch = *dec.NoPrefetch
|
|
|
|
}
|
|
|
|
if dec.Whitelist != nil {
|
|
|
|
c.Whitelist = dec.Whitelist
|
|
|
|
}
|
2017-05-01 11:09:48 +00:00
|
|
|
if dec.LightServ != nil {
|
|
|
|
c.LightServ = *dec.LightServ
|
|
|
|
}
|
2019-10-04 15:21:24 +00:00
|
|
|
if dec.LightIngress != nil {
|
|
|
|
c.LightIngress = *dec.LightIngress
|
|
|
|
}
|
|
|
|
if dec.LightEgress != nil {
|
|
|
|
c.LightEgress = *dec.LightEgress
|
|
|
|
}
|
2017-05-01 11:09:48 +00:00
|
|
|
if dec.LightPeers != nil {
|
|
|
|
c.LightPeers = *dec.LightPeers
|
|
|
|
}
|
2019-10-04 15:21:24 +00:00
|
|
|
if dec.UltraLightServers != nil {
|
|
|
|
c.UltraLightServers = dec.UltraLightServers
|
2018-10-16 11:27:11 +00:00
|
|
|
}
|
2019-10-04 15:21:24 +00:00
|
|
|
if dec.UltraLightFraction != nil {
|
|
|
|
c.UltraLightFraction = *dec.UltraLightFraction
|
|
|
|
}
|
|
|
|
if dec.UltraLightOnlyAnnounce != nil {
|
|
|
|
c.UltraLightOnlyAnnounce = *dec.UltraLightOnlyAnnounce
|
2018-10-16 11:27:11 +00:00
|
|
|
}
|
2017-05-01 11:09:48 +00:00
|
|
|
if dec.SkipBcVersionCheck != nil {
|
|
|
|
c.SkipBcVersionCheck = *dec.SkipBcVersionCheck
|
|
|
|
}
|
|
|
|
if dec.DatabaseHandles != nil {
|
|
|
|
c.DatabaseHandles = *dec.DatabaseHandles
|
|
|
|
}
|
|
|
|
if dec.DatabaseCache != nil {
|
|
|
|
c.DatabaseCache = *dec.DatabaseCache
|
|
|
|
}
|
2019-10-04 15:21:24 +00:00
|
|
|
if dec.DatabaseFreezer != nil {
|
|
|
|
c.DatabaseFreezer = *dec.DatabaseFreezer
|
|
|
|
}
|
2018-12-19 10:02:07 +00:00
|
|
|
if dec.TrieCleanCache != nil {
|
|
|
|
c.TrieCleanCache = *dec.TrieCleanCache
|
|
|
|
}
|
|
|
|
if dec.TrieDirtyCache != nil {
|
|
|
|
c.TrieDirtyCache = *dec.TrieDirtyCache
|
2018-08-27 08:22:21 +00:00
|
|
|
}
|
|
|
|
if dec.TrieTimeout != nil {
|
|
|
|
c.TrieTimeout = *dec.TrieTimeout
|
|
|
|
}
|
2019-10-04 15:21:24 +00:00
|
|
|
if dec.Miner != nil {
|
|
|
|
c.Miner = *dec.Miner
|
2018-09-25 08:55:54 +00:00
|
|
|
}
|
2018-02-27 10:39:30 +00:00
|
|
|
if dec.Ethash != nil {
|
|
|
|
c.Ethash = *dec.Ethash
|
2017-05-01 11:09:48 +00:00
|
|
|
}
|
2017-08-04 16:14:17 +00:00
|
|
|
if dec.TxPool != nil {
|
|
|
|
c.TxPool = *dec.TxPool
|
|
|
|
}
|
2017-05-01 11:09:48 +00:00
|
|
|
if dec.GPO != nil {
|
|
|
|
c.GPO = *dec.GPO
|
|
|
|
}
|
|
|
|
if dec.EnablePreimageRecording != nil {
|
|
|
|
c.EnablePreimageRecording = *dec.EnablePreimageRecording
|
|
|
|
}
|
|
|
|
if dec.DocRoot != nil {
|
|
|
|
c.DocRoot = *dec.DocRoot
|
|
|
|
}
|
2018-12-19 10:02:07 +00:00
|
|
|
if dec.EWASMInterpreter != nil {
|
|
|
|
c.EWASMInterpreter = *dec.EWASMInterpreter
|
|
|
|
}
|
|
|
|
if dec.EVMInterpreter != nil {
|
|
|
|
c.EVMInterpreter = *dec.EVMInterpreter
|
|
|
|
}
|
2019-10-04 15:21:24 +00:00
|
|
|
if dec.RPCGasCap != nil {
|
|
|
|
c.RPCGasCap = dec.RPCGasCap
|
|
|
|
}
|
|
|
|
if dec.Checkpoint != nil {
|
|
|
|
c.Checkpoint = dec.Checkpoint
|
|
|
|
}
|
|
|
|
if dec.CheckpointOracle != nil {
|
|
|
|
c.CheckpointOracle = dec.CheckpointOracle
|
|
|
|
}
|
2017-05-01 11:09:48 +00:00
|
|
|
return nil
|
|
|
|
}
|