diff options
author | Gustav Simonsson <gustav.simonsson@gmail.com> | 2015-05-05 14:24:15 +0800 |
---|---|---|
committer | Gustav Simonsson <gustav.simonsson@gmail.com> | 2015-05-05 14:24:15 +0800 |
commit | b1cc9cdc7424d452687e2e168027d591ed332f3f (patch) | |
tree | 85f9860c5348f7cce620349977e4dac5ab5140f8 /pow | |
parent | 50659f4b480fb9446cfb40955331a7a044353ff8 (diff) | |
download | go-tangerine-b1cc9cdc7424d452687e2e168027d591ed332f3f.tar.gz go-tangerine-b1cc9cdc7424d452687e2e168027d591ed332f3f.tar.zst go-tangerine-b1cc9cdc7424d452687e2e168027d591ed332f3f.zip |
Integrate new ethash API and change geth makedag cmd
Diffstat (limited to 'pow')
-rw-r--r-- | pow/dagger/dagger.go | 6 | ||||
-rw-r--r-- | pow/ezp/pow.go | 8 | ||||
-rw-r--r-- | pow/pow.go | 2 |
3 files changed, 8 insertions, 8 deletions
diff --git a/pow/dagger/dagger.go b/pow/dagger/dagger.go index f2d65e8ef..b941c0eeb 100644 --- a/pow/dagger/dagger.go +++ b/pow/dagger/dagger.go @@ -6,8 +6,8 @@ import ( "math/rand" "time" - "github.com/ethereum/go-ethereum/crypto/sha3" "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/crypto/sha3" "github.com/ethereum/go-ethereum/logger" ) @@ -44,7 +44,7 @@ func (dag *Dagger) Find(obj *big.Int, resChan chan int64) { resChan <- 0 } -func (dag *Dagger) Search(hash, diff *big.Int) ([]byte, []byte, []byte) { +func (dag *Dagger) Search(hash, diff *big.Int) (uint64, []byte) { // TODO fix multi threading. Somehow it results in the wrong nonce amountOfRoutines := 1 @@ -69,7 +69,7 @@ func (dag *Dagger) Search(hash, diff *big.Int) ([]byte, []byte, []byte) { } } - return big.NewInt(res).Bytes(), nil, nil + return uint64(res), nil } func (dag *Dagger) Verify(hash, diff, nonce *big.Int) bool { diff --git a/pow/ezp/pow.go b/pow/ezp/pow.go index bd2927fe8..c838dd5ec 100644 --- a/pow/ezp/pow.go +++ b/pow/ezp/pow.go @@ -32,7 +32,7 @@ func (pow *EasyPow) Turbo(on bool) { pow.turbo = on } -func (pow *EasyPow) Search(block pow.Block, stop <-chan struct{}) (uint64, []byte, []byte) { +func (pow *EasyPow) Search(block pow.Block, stop <-chan struct{}) (uint64, []byte) { r := rand.New(rand.NewSource(time.Now().UnixNano())) hash := block.HashNoNonce() diff := block.Difficulty() @@ -57,7 +57,7 @@ empty: for { select { case <-stop: - return 0, nil, nil + return 0, nil default: i++ @@ -67,7 +67,7 @@ empty: sha := uint64(r.Int63()) if verify(hash, diff, sha) { - return sha, nil, nil + return sha, nil } } @@ -76,7 +76,7 @@ empty: } } - return 0, nil, nil + return 0, nil } func (pow *EasyPow) Verify(block pow.Block) bool { diff --git a/pow/pow.go b/pow/pow.go index 3908e5f76..73984a4ae 100644 --- a/pow/pow.go +++ b/pow/pow.go @@ -1,7 +1,7 @@ package pow type PoW interface { - Search(block Block, stop <-chan struct{}) (uint64, []byte, []byte) + Search(block Block, stop <-chan struct{}) (uint64, []byte) Verify(block Block) bool GetHashrate() int64 Turbo(bool) |