diff options
author | Felix Lange <fjl@users.noreply.github.com> | 2017-01-13 07:37:23 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-01-13 07:37:23 +0800 |
commit | c5df37c1119107ddcc517127b3bd7c2ab4e3649f (patch) | |
tree | 22b72545e83ab83ddab5c531d46bdcffc8b8ae59 /miner | |
parent | e0ceeab0d111ada7d847c83992d2ff3128bfb959 (diff) | |
download | dexon-c5df37c1119107ddcc517127b3bd7c2ab4e3649f.tar.gz dexon-c5df37c1119107ddcc517127b3bd7c2ab4e3649f.tar.zst dexon-c5df37c1119107ddcc517127b3bd7c2ab4e3649f.zip |
eth: accept leading zeros for nonce parameter of submitWork (#3558)
Diffstat (limited to 'miner')
-rw-r--r-- | miner/agent.go | 3 | ||||
-rw-r--r-- | miner/remote_agent.go | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/miner/agent.go b/miner/agent.go index 16f2a7723..697e3971b 100644 --- a/miner/agent.go +++ b/miner/agent.go @@ -22,6 +22,7 @@ import ( "sync/atomic" "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/logger" "github.com/ethereum/go-ethereum/logger/glog" "github.com/ethereum/go-ethereum/pow" @@ -112,7 +113,7 @@ func (self *CpuAgent) mine(work *Work, stop <-chan struct{}) { // Mine nonce, mixDigest := self.pow.Search(work.Block, stop, self.index) if nonce != 0 { - block := work.Block.WithMiningResult(nonce, common.BytesToHash(mixDigest)) + block := work.Block.WithMiningResult(types.EncodeNonce(nonce), common.BytesToHash(mixDigest)) self.returnCh <- &Result{work, block} } else { self.returnCh <- nil diff --git a/miner/remote_agent.go b/miner/remote_agent.go index f99f38b36..23277bac8 100644 --- a/miner/remote_agent.go +++ b/miner/remote_agent.go @@ -25,6 +25,7 @@ import ( "github.com/ethereum/ethash" "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/logger" "github.com/ethereum/go-ethereum/logger/glog" "github.com/ethereum/go-ethereum/pow" @@ -132,7 +133,7 @@ func (a *RemoteAgent) GetWork() ([3]string, error) { // SubmitWork tries to inject a PoW solution tinto the remote agent, returning // whether the solution was acceted or not (not can be both a bad PoW as well as // any other error, like no work pending). -func (a *RemoteAgent) SubmitWork(nonce uint64, mixDigest, hash common.Hash) bool { +func (a *RemoteAgent) SubmitWork(nonce types.BlockNonce, mixDigest, hash common.Hash) bool { a.mu.Lock() defer a.mu.Unlock() |