Merge branch 'master' of github.com:harmony-one/harmony into rj_branch

pull/148/head
Rongjian Lan 6 years ago
commit 8d6341ad6e
  1. 12
      node/node.go

@ -261,7 +261,7 @@ func (node *Node) AddSmartContractsToPendingTransactions() {
dataEnc := common.FromHex(contractData) dataEnc := common.FromHex(contractData)
// Unsigned transaction to avoid the case of transaction address. // Unsigned transaction to avoid the case of transaction address.
mycontracttx, _ := types.SignTx(types.NewContractCreation(uint64(0), 0, big.NewInt(1000000), params.TxGasContractCreation*10, nil, dataEnc), types.HomesteadSigner{}, priKey) mycontracttx, _ := types.SignTx(types.NewContractCreation(uint64(0), 0, big.NewInt(1000000), params.TxGasContractCreation*10, nil, dataEnc), types.HomesteadSigner{}, priKey)
node.pendingTransactionsAccount = append(node.pendingTransactionsAccount, mycontracttx) node.addPendingTransactionsAccount(types.Transactions{mycontracttx})
} }
// New creates a new node. // New creates a new node.
@ -426,6 +426,16 @@ func (node *Node) GetSyncingPeers() []p2p.Peer {
return res return res
} }
//CallFaucetContract invokes the faucet contract to give the walletAddress initial money
func (node *Node) CallFaucetContract(contractAddress common.Address, walletAddress common.Address) {
nonce := node.Worker.GetCurrentState().GetNonce(crypto.PubkeyToAddress(node.ContractKeys[0].PublicKey))
callingFunction := "0x27c78c42000000000000000000000000"
contractData := callingFunction + walletAddress.Hex()
dataEnc := common.FromHex(contractData)
tx, _ := types.SignTx(types.NewTransaction(nonce, contractAddress, node.Consensus.ShardID, big.NewInt(7000000000000000000), params.TxGasContractCreation*10, nil, dataEnc), types.HomesteadSigner{}, node.ContractKeys[0])
node.addPendingTransactionsAccount(types.Transactions{tx})
}
// JoinShard helps a new node to join a shard. // JoinShard helps a new node to join a shard.
func (node *Node) JoinShard(leader p2p.Peer) { func (node *Node) JoinShard(leader p2p.Peer) {
// try to join the shard, send ping message every 1 second, with a 10 minutes time-out // try to join the shard, send ping message every 1 second, with a 10 minutes time-out

Loading…
Cancel
Save