mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-18 02:40:45 +00:00
Fixed default for foundation wallet address at puppeth.
This commit is contained in:
parent
ece1dccd93
commit
77bf4b18e1
2 changed files with 17 additions and 9 deletions
|
|
@ -58,10 +58,10 @@ func (w *wizard) makeGenesis() {
|
||||||
}
|
}
|
||||||
// Figure out which consensus engine to choose
|
// Figure out which consensus engine to choose
|
||||||
fmt.Println()
|
fmt.Println()
|
||||||
fmt.Println("Which consensus engine to use? (default = XDPos)")
|
fmt.Println("Which consensus engine to use? (default = XDPoS)")
|
||||||
fmt.Println(" 1. Ethash - proof-of-work")
|
fmt.Println(" 1. Ethash - proof-of-work")
|
||||||
fmt.Println(" 2. Clique - proof-of-authority")
|
fmt.Println(" 2. Clique - proof-of-authority")
|
||||||
fmt.Println(" 3. XDPos - proof-of-stake-voting")
|
fmt.Println(" 3. XDPoS - proof-of-stake-voting")
|
||||||
|
|
||||||
choice := w.read()
|
choice := w.read()
|
||||||
switch {
|
switch {
|
||||||
|
|
@ -110,7 +110,7 @@ func (w *wizard) makeGenesis() {
|
||||||
|
|
||||||
case choice == "" || choice == "3":
|
case choice == "" || choice == "3":
|
||||||
genesis.Difficulty = big.NewInt(1)
|
genesis.Difficulty = big.NewInt(1)
|
||||||
genesis.Config.XDPoS = ¶ms.XDPosConfig{
|
genesis.Config.XDPoS = ¶ms.XDPoSConfig{
|
||||||
Period: 15,
|
Period: 15,
|
||||||
Epoch: 30000,
|
Epoch: 30000,
|
||||||
Reward: 0,
|
Reward: 0,
|
||||||
|
|
@ -161,13 +161,17 @@ func (w *wizard) makeGenesis() {
|
||||||
fmt.Println()
|
fmt.Println()
|
||||||
fmt.Println("How many blocks per epoch? (default = 900)")
|
fmt.Println("How many blocks per epoch? (default = 900)")
|
||||||
epochNumber := uint64(w.readDefaultInt(900))
|
epochNumber := uint64(w.readDefaultInt(900))
|
||||||
genesis.Config.XDPoS.Epoch = genesis.Config.XDPoS.RewardCheckpoint
|
genesis.Config.XDPoS.Epoch = epochNumber
|
||||||
genesis.Config.XDPoS.RewardCheckpoint = epochNumber
|
genesis.Config.XDPoS.RewardCheckpoint = epochNumber
|
||||||
|
|
||||||
fmt.Println()
|
fmt.Println()
|
||||||
fmt.Println("How many blocks before checkpoint need to prepare new set of masternodes? (default = 450)")
|
fmt.Println("How many blocks before checkpoint need to prepare new set of masternodes? (default = 450)")
|
||||||
genesis.Config.XDPoS.Gap = uint64(w.readDefaultInt(450))
|
genesis.Config.XDPoS.Gap = uint64(w.readDefaultInt(450))
|
||||||
|
|
||||||
|
fmt.Println()
|
||||||
|
fmt.Println("What is foundation wallet address? (default = 0x0000000000000000000000000000000000000068)")
|
||||||
|
genesis.Config.XDPoS.FoudationWalletAddr = w.readDefaultAddress(common.HexToAddress("0x0000000000000000000000000000000000000068"))
|
||||||
|
|
||||||
// Validator Smart Contract Code
|
// Validator Smart Contract Code
|
||||||
pKey, _ := crypto.HexToECDSA("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291")
|
pKey, _ := crypto.HexToECDSA("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291")
|
||||||
addr := crypto.PubkeyToAddress(pKey.PublicKey)
|
addr := crypto.PubkeyToAddress(pKey.PublicKey)
|
||||||
|
|
|
||||||
|
|
@ -29,8 +29,8 @@ import (
|
||||||
"github.com/ethereum/go-ethereum/common"
|
"github.com/ethereum/go-ethereum/common"
|
||||||
"github.com/ethereum/go-ethereum/common/hexutil"
|
"github.com/ethereum/go-ethereum/common/hexutil"
|
||||||
"github.com/ethereum/go-ethereum/consensus"
|
"github.com/ethereum/go-ethereum/consensus"
|
||||||
"github.com/ethereum/go-ethereum/consensus/XDPoS"
|
|
||||||
"github.com/ethereum/go-ethereum/consensus/ethash"
|
"github.com/ethereum/go-ethereum/consensus/ethash"
|
||||||
|
"github.com/ethereum/go-ethereum/consensus/XDPoS"
|
||||||
"github.com/ethereum/go-ethereum/contracts"
|
"github.com/ethereum/go-ethereum/contracts"
|
||||||
"github.com/ethereum/go-ethereum/contracts/validator/contract"
|
"github.com/ethereum/go-ethereum/contracts/validator/contract"
|
||||||
"github.com/ethereum/go-ethereum/core"
|
"github.com/ethereum/go-ethereum/core"
|
||||||
|
|
@ -217,7 +217,11 @@ func New(ctx *node.ServiceContext, config *Config) (*Ethereum, error) {
|
||||||
}
|
}
|
||||||
number := header.Number.Uint64()
|
number := header.Number.Uint64()
|
||||||
rCheckpoint := chain.Config().XDPoS.RewardCheckpoint
|
rCheckpoint := chain.Config().XDPoS.RewardCheckpoint
|
||||||
if number > 0 && number-rCheckpoint > 0 {
|
foudationWalletAddr := chain.Config().XDPoS.FoudationWalletAddr
|
||||||
|
if foudationWalletAddr == (common.Address{}) {
|
||||||
|
log.Error("Foundation Wallet Address is empty", "error", foudationWalletAddr)
|
||||||
|
}
|
||||||
|
if number > 0 && number-rCheckpoint > 0 && foudationWalletAddr != (common.Address{}) {
|
||||||
// Get signers in blockSigner smartcontract.
|
// Get signers in blockSigner smartcontract.
|
||||||
addr := common.HexToAddress(common.BlockSigners)
|
addr := common.HexToAddress(common.BlockSigners)
|
||||||
chainReward := new(big.Int).Mul(new(big.Int).SetUint64(chain.Config().XDPoS.Reward), new(big.Int).SetUint64(params.Ether))
|
chainReward := new(big.Int).Mul(new(big.Int).SetUint64(chain.Config().XDPoS.Reward), new(big.Int).SetUint64(params.Ether))
|
||||||
|
|
@ -240,7 +244,7 @@ func New(ctx *node.ServiceContext, config *Config) (*Ethereum, error) {
|
||||||
// Add reward for coin holders.
|
// Add reward for coin holders.
|
||||||
if len(signers) > 0 {
|
if len(signers) > 0 {
|
||||||
for signer, calcReward := range rewardSigners {
|
for signer, calcReward := range rewardSigners {
|
||||||
err := contracts.CalculateRewardForHolders(validator, state, signer, calcReward)
|
err := contracts.CalculateRewardForHolders(foudationWalletAddr, validator, state, signer, calcReward)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Error("Fail to calculate reward for holders.", "error", err)
|
log.Error("Fail to calculate reward for holders.", "error", err)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue