aboutsummaryrefslogtreecommitdiffstats
path: root/params
diff options
context:
space:
mode:
authorWei-Ning Huang <w@cobinhood.com>2018-09-03 13:42:13 +0800
committerWei-Ning Huang <w@dexon.org>2018-12-19 17:20:14 +0800
commit1c5de76404aebd2f82d337f7ef5633bce2de586f (patch)
tree2177b345598c513214efe6b3efac764d208f2cfe /params
parent24d727b6d6e2c0cde222fa12155c4a6db5caaf2e (diff)
downloaddexon-1c5de76404aebd2f82d337f7ef5633bce2de586f.tar
dexon-1c5de76404aebd2f82d337f7ef5633bce2de586f.tar.gz
dexon-1c5de76404aebd2f82d337f7ef5633bce2de586f.tar.bz2
dexon-1c5de76404aebd2f82d337f7ef5633bce2de586f.tar.lz
dexon-1c5de76404aebd2f82d337f7ef5633bce2de586f.tar.xz
dexon-1c5de76404aebd2f82d337f7ef5633bce2de586f.tar.zst
dexon-1c5de76404aebd2f82d337f7ef5633bce2de586f.zip
Add initial DEXON consensus engine implementation skeleton
Diffstat (limited to 'params')
-rw-r--r--params/config.go17
1 files changed, 14 insertions, 3 deletions
diff --git a/params/config.go b/params/config.go
index 2935ef1f3..25b611dfd 100644
--- a/params/config.go
+++ b/params/config.go
@@ -111,16 +111,16 @@ var (
//
// This configuration is intentionally not using keyed fields to force anyone
// adding flags to the config to also have to set these fields.
- AllEthashProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, new(EthashConfig), nil}
+ AllEthashProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, new(EthashConfig), nil, nil}
// AllCliqueProtocolChanges contains every protocol change (EIPs) introduced
// and accepted by the Ethereum core developers into the Clique consensus.
//
// This configuration is intentionally not using keyed fields to force anyone
// adding flags to the config to also have to set these fields.
- AllCliqueProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, &CliqueConfig{Period: 0, Epoch: 30000}}
+ AllCliqueProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, &CliqueConfig{Period: 0, Epoch: 30000}, nil}
- TestChainConfig = &ChainConfig{big.NewInt(1), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, new(EthashConfig), nil}
+ TestChainConfig = &ChainConfig{big.NewInt(1), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, new(EthashConfig), nil, nil}
TestRules = TestChainConfig.Rules(new(big.Int))
)
@@ -163,6 +163,7 @@ type ChainConfig struct {
// Various consensus engines
Ethash *EthashConfig `json:"ethash,omitempty"`
Clique *CliqueConfig `json:"clique,omitempty"`
+ Dexcon *DexconConfig `json:"dexcon,omitempty"`
}
// EthashConfig is the consensus engine configs for proof-of-work based sealing.
@@ -184,6 +185,16 @@ func (c *CliqueConfig) String() string {
return "clique"
}
+// DexconConfig is the consensus engine configs for DEXON consensus.
+type DexconConfig struct {
+ GovernanceContractAddress string
+}
+
+// String implements the stringer interface, returning the consensus engine details.
+func (c *DexconConfig) String() string {
+ return "dexcon"
+}
+
// String implements the fmt.Stringer interface.
func (c *ChainConfig) String() string {
var engine interface{}