From 4fa93a3e361ddc39fa4e1d3681c584874af7814d Mon Sep 17 00:00:00 2001 From: bold Date: Wed, 9 Jan 2019 20:45:59 +0800 Subject: [PATCH] show user agent of mining software --- pkg/modelx/modelx.go | 2 ++ pkg/pool/pool.go | 6 ++++++ pkg/webserver/webserver.go | 4 +++- web/templates/minerTable.tmpl | 2 ++ 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pkg/modelx/modelx.go b/pkg/modelx/modelx.go index 5c35ab1..835157a 100644 --- a/pkg/modelx/modelx.go +++ b/pkg/modelx/modelx.go @@ -47,6 +47,8 @@ type Miner struct { PayoutDetail string `db:"account.payout_detail"` + UserAgent string + // this mutex ensures that there is only one concurrent write process // to the db for each miner dbMu sync.Mutex diff --git a/pkg/pool/pool.go b/pkg/pool/pool.go index 3b16731..1c6e461 100644 --- a/pkg/pool/pool.go +++ b/pkg/pool/pool.go @@ -238,6 +238,12 @@ func (pool *Pool) processSubmitNonceRequest(w http.ResponseWriter, req *http.Req return } + if ua := req.Header.Get("User-Agent"); ua == "" { + miner.UserAgent = req.Header.Get("X-Miner") + } else { + miner.UserAgent = ua + } + // Calculate deadline and check against limit deadlineReq := burstmath.NewCalcDeadlineRequest(accountID, nonce, ri.BaseTarget, ri.Scoop, ri.GenSig) deadline := pool.deadlineRequestHandler.CalcDeadline(deadlineReq) diff --git a/pkg/webserver/webserver.go b/pkg/webserver/webserver.go index 56e5e29..b94240f 100644 --- a/pkg/webserver/webserver.go +++ b/pkg/webserver/webserver.go @@ -77,6 +77,7 @@ type MinerInfo struct { LastActiveBlockHeight uint64 Capacity float64 Deadline uint64 + UserAgent string } type IndexInfo struct { @@ -239,7 +240,8 @@ func (webServer *WebServer) updateMinerInfos() { NConf: len(miner.DeadlinesParams), Capacity: capacity, Deadline: miner.CurrentDeadline(), - LastActiveBlockHeight: miner.CurrentBlockHeight()} + LastActiveBlockHeight: miner.CurrentBlockHeight(), + UserAgent: miner.UserAgent} miner.Unlock() mis = append(mis, mi) diff --git a/web/templates/minerTable.tmpl b/web/templates/minerTable.tmpl index 78ef4c2..3e972ae 100644 --- a/web/templates/minerTable.tmpl +++ b/web/templates/minerTable.tmpl @@ -8,6 +8,7 @@ Historical Share Effective Capacity Confirmed Deadlines (Last nAvg Rounds) + Miner @@ -23,6 +24,7 @@ {{$minerInfo.HistoricalShare | printf "%.3f" | html}} % {{$minerInfo.Capacity |printf "%.4f"| html}} TB {{$minerInfo.NConf | html}} + {{$minerInfo.UserAgent | html}} {{end}}