Version: v0.0.0-...-08721ad Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Nov 18, 2020 License: GPL-3.0 Imports: 23 Imported by: 0




View Source
const (
	MaxReqSize = 1024


This section is empty.


This section is empty.


type Block

type Block struct {
	// contains filtered or unexported fields

func (Block) Difficulty

func (b Block) Difficulty() *big.Int

func (Block) HashNoNonce

func (b Block) HashNoNonce() common.Hash

func (Block) MixDigest

func (b Block) MixDigest() common.Hash

func (Block) Nonce

func (b Block) Nonce() uint64

func (Block) NumberU64

func (b Block) NumberU64() uint64

type BlockTemplate

type BlockTemplate struct {
	Header               string
	Seed                 string
	Target               string
	Difficulty           *big.Int
	Height               uint64
	GetPendingBlockCache *rpc.GetBlockReplyPart
	// contains filtered or unexported fields

type Config

type Config struct {
	Name                  string        `json:"name"`
	Proxy                 Proxy         `json:"proxy"`
	Api                   api.ApiConfig `json:"api"`
	Upstream              []Upstream    `json:"upstream"`
	UpstreamCheckInterval string        `json:"upstreamCheckInterval"`

	Threads int `json:"threads"`

	Coin  string         `json:"coin"`
	Pplns int64          `json:"pplns"`
	Redis storage.Config `json:"redis"`

	BlockUnlocker payouts.UnlockerConfig `json:"unlocker"`
	Payouts       payouts.PayoutsConfig  `json:"payouts"`

	NewrelicName    string `json:"newrelicName"`
	NewrelicKey     string `json:"newrelicKey"`
	NewrelicVerbose bool   `json:"newrelicVerbose"`
	NewrelicEnabled bool   `json:"newrelicEnabled"`

type ErrorReply

type ErrorReply struct {
	Code    int    `json:"code"`
	Message string `json:"message"`

type JSONPushMessage

type JSONPushMessage struct {
	// FIXME: Temporarily add ID for Claymore compliance
	Id      int64       `json:"id"`
	Version string      `json:"jsonrpc"`
	Result  interface{} `json:"result"`


type JSONRpcReq

type JSONRpcReq struct {
	Id     json.RawMessage `json:"id"`
	Method string          `json:"method"`
	Params json.RawMessage `json:"params"`

type JSONRpcResp

type JSONRpcResp struct {
	Id      json.RawMessage `json:"id"`
	Version string          `json:"jsonrpc"`
	Result  interface{}     `json:"result"`
	Error   interface{}     `json:"error,omitempty"`

type Proxy

type Proxy struct {
	Enabled              bool   `json:"enabled"`
	Listen               string `json:"listen"`
	LimitHeadersSize     int    `json:"limitHeadersSize"`
	LimitBodySize        int64  `json:"limitBodySize"`
	BehindReverseProxy   bool   `json:"behindReverseProxy"`
	BlockRefreshInterval string `json:"blockRefreshInterval"`
	Difficulty           int64  `json:"difficulty"`
	StateUpdateInterval  string `json:"stateUpdateInterval"`
	HashrateExpiration   string `json:"hashrateExpiration"`
	StratumHostname      string `json:"stratumHostname"`

	Policy policy.Config `json:"policy"`

	MaxFails    int64 `json:"maxFails"`
	HealthCheck bool  `json:"healthCheck"`

	Stratum Stratum `json:"stratum"`

type ProxyServer

type ProxyServer struct {
	// contains filtered or unexported fields

func NewProxy

func NewProxy(cfg *Config, backend *storage.RedisClient) *ProxyServer

func (*ProxyServer) ListenTCP

func (s *ProxyServer) ListenTCP()

func (*ProxyServer) ServeHTTP

func (s *ProxyServer) ServeHTTP(w http.ResponseWriter, r *http.Request)

func (*ProxyServer) Start

func (s *ProxyServer) Start()

type Session

type Session struct {

	// Stratum
	// contains filtered or unexported fields

type Stratum

type Stratum struct {
	Enabled bool   `json:"enabled"`
	Listen  string `json:"listen"`
	Timeout string `json:"timeout"`
	MaxConn int    `json:"maxConn"`

type StratumReq

type StratumReq struct {
	Worker string `json:"worker"`

type SubmitReply

type SubmitReply struct {
	Status string `json:"status"`

type Upstream

type Upstream struct {
	Name    string `json:"name"`
	Url     string `json:"url"`
	Timeout string `json:"timeout"`

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL