aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--eth/backend.go1
-rw-r--r--rpc/api.go2
-rw-r--r--xeth/xeth.go4
3 files changed, 7 insertions, 0 deletions
diff --git a/eth/backend.go b/eth/backend.go
index 88456e448..982317314 100644
--- a/eth/backend.go
+++ b/eth/backend.go
@@ -341,6 +341,7 @@ func (s *Ethereum) Etherbase() (eb common.Address, err error) {
func (s *Ethereum) StopMining() { s.miner.Stop() }
func (s *Ethereum) IsMining() bool { return s.miner.Mining() }
+func (s *Ethereum) HashRate() int64 { return s.miner.HashRate() }
func (s *Ethereum) Miner() *miner.Miner { return s.miner }
// func (s *Ethereum) Logger() logger.LogSystem { return s.logger }
diff --git a/rpc/api.go b/rpc/api.go
index 66283752b..8a0d759c1 100644
--- a/rpc/api.go
+++ b/rpc/api.go
@@ -62,6 +62,8 @@ func (api *EthereumApi) GetRequestReply(req *RpcRequest, reply *interface{}) err
*reply = newHexData(api.xeth().Coinbase())
case "eth_mining":
*reply = api.xeth().IsMining()
+ case "eth_hashrate":
+ *reply = api.xeth().HashRate()
case "eth_gasPrice":
v := xeth.DefaultGas()
*reply = newHexData(v.Bytes())
diff --git a/xeth/xeth.go b/xeth/xeth.go
index afcb33e4c..e221f6d20 100644
--- a/xeth/xeth.go
+++ b/xeth/xeth.go
@@ -276,6 +276,10 @@ func (self *XEth) IsMining() bool {
return self.backend.IsMining()
}
+func (self *XEth) HashRate() int64 {
+ return self.backend.HashRate()
+}
+
func (self *XEth) EthVersion() string {
return fmt.Sprintf("%d", self.backend.EthVersion())
}