aboutsummaryrefslogtreecommitdiffstats
path: root/miner
diff options
context:
space:
mode:
authorJeffrey Wilcke <jeffrey@ethereum.org>2015-08-07 20:00:36 +0800
committerJeffrey Wilcke <jeffrey@ethereum.org>2015-08-07 20:00:36 +0800
commitd7580f21f65beaf896bfc004cf13d28ed87f2ae3 (patch)
treeeeb9391f0b828099319612445337ef2a9069819a /miner
parentb1fac4270d639d0a80871784edd80cf16c9f8540 (diff)
parent132df860d90c163a8be55260bdd219892f9e1bef (diff)
downloaddexon-d7580f21f65beaf896bfc004cf13d28ed87f2ae3.tar.gz
dexon-d7580f21f65beaf896bfc004cf13d28ed87f2ae3.tar.zst
dexon-d7580f21f65beaf896bfc004cf13d28ed87f2ae3.zip
Merge pull request #1595 from obscuren/extra-data
cmd/geth, eth: added canonical extra data
Diffstat (limited to 'miner')
-rw-r--r--miner/miner.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/miner/miner.go b/miner/miner.go
index 508778579..b550ed6d6 100644
--- a/miner/miner.go
+++ b/miner/miner.go
@@ -18,6 +18,7 @@
package miner
import (
+ "fmt"
"math/big"
"sync/atomic"
@@ -29,6 +30,7 @@ import (
"github.com/ethereum/go-ethereum/event"
"github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/logger/glog"
+ "github.com/ethereum/go-ethereum/params"
"github.com/ethereum/go-ethereum/pow"
)
@@ -150,8 +152,13 @@ func (self *Miner) HashRate() (tot int64) {
return
}
-func (self *Miner) SetExtra(extra []byte) {
+func (self *Miner) SetExtra(extra []byte) error {
+ if uint64(len(extra)) > params.MaximumExtraDataSize.Uint64() {
+ return fmt.Errorf("Extra exceeds max length. %d > %v", len(extra), params.MaximumExtraDataSize)
+ }
+
self.worker.extra = extra
+ return nil
}
func (self *Miner) PendingState() *state.StateDB {