diff --git a/nknd.go b/nknd.go index e0e974e94..523653726 100644 --- a/nknd.go +++ b/nknd.go @@ -181,7 +181,7 @@ func nknMain(c *cli.Context) error { // if InitLedger return err, chain.DefaultLedger is uninitialized. defer chain.DefaultLedger.Store.Close() - id, err := GetOrCreateID(config.Parameters.SeedList, wallet, Fixed64(config.Parameters.RegisterIDFee)) + id, err := GetOrCreateID(config.Parameters.SeedList, wallet, Fixed64(config.Parameters.RegisterIDRegFee), Fixed64(config.Parameters.RegisterIDTxnFee)) if err != nil { panic(fmt.Errorf("Get or create id error: %v", err)) } @@ -441,7 +441,7 @@ func GetID(seeds []string, publickey []byte) ([]byte, error) { return nil, fmt.Errorf("failed to get ID from majority of %d seeds", n) } -func CreateID(seeds []string, wallet vault.Wallet, regFee Fixed64) error { +func CreateID(seeds []string, wallet vault.Wallet, regFee, txnFee Fixed64) error { account, err := wallet.GetDefaultAccount() if err != nil { return err @@ -463,7 +463,7 @@ func CreateID(seeds []string, wallet vault.Wallet, regFee Fixed64) error { continue } - txn, err := common.MakeGenerateIDTransaction(wallet, regFee, nonce, 0) + txn, err := common.MakeGenerateIDTransaction(wallet, regFee, nonce, txnFee) if err != nil { return err } @@ -485,7 +485,7 @@ func CreateID(seeds []string, wallet vault.Wallet, regFee Fixed64) error { return errors.New("create ID failed") } -func GetOrCreateID(seeds []string, wallet vault.Wallet, regFee Fixed64) ([]byte, error) { +func GetOrCreateID(seeds []string, wallet vault.Wallet, regFee, txnFee Fixed64) ([]byte, error) { account, err := wallet.GetDefaultAccount() if err != nil { return nil, err @@ -497,7 +497,7 @@ func GetOrCreateID(seeds []string, wallet vault.Wallet, regFee Fixed64) ([]byte, if err != nil { log.Warningf("Get id from neighbors error: %v", err) } - if err := CreateID(seeds, wallet, regFee); err != nil { + if err := CreateID(seeds, wallet, regFee, txnFee); err != nil { return nil, err } } else if len(id) != config.NodeIDBytes { diff --git a/util/config/config.go b/util/config/config.go index 07ab1f8af..9b3b69ecd 100644 --- a/util/config/config.go +++ b/util/config/config.go @@ -131,7 +131,8 @@ var ( TxPoolPerAccountTxCap: 32, TxPoolTotalTxCap: 0, TxPoolMaxMemorySize: 32, - RegisterIDFee: 0, + RegisterIDRegFee: 0, + RegisterIDTxnFee: 0, LogPath: "Log", ChainDBPath: "ChainDB", WalletFile: "wallet.json", @@ -161,7 +162,8 @@ type Configuration struct { GenesisBlockProposer string `json:"GenesisBlockProposer"` NumLowFeeTxnPerBlock uint32 `json:"NumLowFeeTxnPerBlock"` MinTxnFee int64 `json:"MinTxnFee"` - RegisterIDFee int64 `json:"RegisterIDFee"` + RegisterIDRegFee int64 `json:"RegisterIDRegFee"` + RegisterIDTxnFee int64 `json:"RegisterIDTxnFee"` Hostname string `json:"Hostname"` Transport string `json:"Transport"` NAT bool `json:"NAT"`