les: fix megacheck warnings (#14941)

* les: fix megacheck warnings

* les: fixed testGetProofs
pull/14957/head
Felföldi Zsolt 7 years ago committed by Péter Szilágyi
parent d375193797
commit fff6e03a79
  1. 1
      les/backend.go
  2. 2
      les/flowcontrol/control.go
  3. 6
      les/handler.go
  4. 4
      les/handler_test.go
  5. 40
      les/helper_test.go
  6. 5
      les/peer.go
  7. 27
      les/protocol.go
  8. 11
      les/server.go

@ -70,7 +70,6 @@ type LightEthereum struct {
networkId uint64
netRPCService *ethapi.PublicNetAPI
quitSync chan struct{}
wg sync.WaitGroup
}

@ -157,9 +157,7 @@ func (peer *ServerNode) QueueRequest(reqID, maxCost uint64) {
peer.bufEstimate -= maxCost
peer.sumCost += maxCost
if reqID >= 0 {
peer.pending[reqID] = peer.sumCost
}
}
// GotReply adjusts estimated buffer value according to the value included in

@ -69,8 +69,6 @@ func errResp(code errCode, format string, v ...interface{}) error {
return fmt.Errorf("%v - %v", code, fmt.Sprintf(format, v...))
}
type hashFetcherFn func(common.Hash) error
type BlockChain interface {
HasHeader(hash common.Hash) bool
GetHeader(hash common.Hash, number uint64) *types.Header
@ -119,10 +117,6 @@ type ProtocolManager struct {
quitSync chan struct{}
noMorePeers chan struct{}
syncMu sync.Mutex
syncing bool
syncDone chan struct{}
// wait group is used for graceful shutdowns during downloading
// and processing
wg *sync.WaitGroup

@ -305,7 +305,7 @@ func testGetReceipt(t *testing.T, protocol int) {
}
// Tests that trie merkle proofs can be retrieved
func TestGetProofsLes1(t *testing.T) { testGetReceipt(t, 1) }
func TestGetProofsLes1(t *testing.T) { testGetProofs(t, 1) }
func testGetProofs(t *testing.T, protocol int) {
// Assemble the test environment
@ -327,7 +327,7 @@ func testGetProofs(t *testing.T, protocol int) {
for _, acc := range accounts {
req := ProofReq{
BHash: header.Hash(),
Key: acc[:],
Key: crypto.Keccak256(acc[:]),
}
proofreqs = append(proofreqs, req)

@ -20,7 +20,6 @@
package les
import (
"crypto/ecdsa"
"crypto/rand"
"math/big"
"sync"
@ -189,45 +188,6 @@ func newTestProtocolManagerMust(t *testing.T, lightSync bool, blocks int, genera
return pm
}
// testTxPool is a fake, helper transaction pool for testing purposes
type testTxPool struct {
pool []*types.Transaction // Collection of all transactions
added chan<- []*types.Transaction // Notification channel for new transactions
lock sync.RWMutex // Protects the transaction pool
}
// AddTransactions appends a batch of transactions to the pool, and notifies any
// listeners if the addition channel is non nil
func (p *testTxPool) AddBatch(txs []*types.Transaction) {
p.lock.Lock()
defer p.lock.Unlock()
p.pool = append(p.pool, txs...)
if p.added != nil {
p.added <- txs
}
}
// GetTransactions returns all the transactions known to the pool
func (p *testTxPool) GetTransactions() types.Transactions {
p.lock.RLock()
defer p.lock.RUnlock()
txs := make([]*types.Transaction, len(p.pool))
copy(txs, p.pool)
return txs
}
// newTestTransaction create a new dummy transaction.
func newTestTransaction(from *ecdsa.PrivateKey, nonce uint64, datasize int) *types.Transaction {
tx := types.NewTransaction(nonce, common.Address{}, big.NewInt(0), big.NewInt(100000), big.NewInt(0), make([]byte, datasize))
tx, _ = types.SignTx(tx, types.HomesteadSigner{}, from)
return tx
}
// testPeer is a simulated peer to allow testing direct network calls.
type testPeer struct {
net p2p.MsgReadWriter // Network layer reader/writer to simulate remote messaging

@ -38,10 +38,7 @@ var (
errNotRegistered = errors.New("peer is not registered")
)
const (
maxHeadInfoLen = 20
maxResponseErrors = 50 // number of invalid responses tolerated (makes the protocol less brittle but still avoids spam)
)
const maxResponseErrors = 50 // number of invalid responses tolerated (makes the protocol less brittle but still avoids spam)
type peer struct {
*p2p.Peer

@ -23,7 +23,6 @@ import (
"math/big"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core/types"
"github.com/ethereum/go-ethereum/rlp"
)
@ -105,12 +104,6 @@ var errorToString = map[int]string{
ErrHandshakeMissingKey: "Key missing from handshake message",
}
type chainManager interface {
GetBlockHashesFromHash(hash common.Hash, amount uint64) (hashes []common.Hash)
GetBlock(hash common.Hash) (block *types.Block)
Status() (td *big.Int, currentBlock common.Hash, genesisBlock common.Hash)
}
// announceData is the network packet for the block announcements.
type announceData struct {
Hash common.Hash // Hash of one particular block being announced
@ -118,11 +111,6 @@ type announceData struct {
Td *big.Int // Total difficulty of one particular block being announced
ReorgDepth uint64
Update keyValueList
haveHeaders uint64 // we have the headers of the remote peer's chain up to this number
headKnown bool
requested bool
next *announceData
}
type blockInfo struct {
@ -131,12 +119,6 @@ type blockInfo struct {
Td *big.Int // Total difficulty of one particular block being announced
}
// getBlockHashesData is the network packet for the hash based hash retrieval.
type getBlockHashesData struct {
Hash common.Hash
Amount uint64
}
// getBlockHeadersData represents a block header query.
type getBlockHeadersData struct {
Origin hashOrNumber // Block from which to retrieve headers
@ -181,15 +163,6 @@ func (hn *hashOrNumber) DecodeRLP(s *rlp.Stream) error {
return err
}
// newBlockData is the network packet for the block propagation message.
type newBlockData struct {
Block *types.Block
TD *big.Int
}
// blockBodiesData is the network packet for block content distribution.
type blockBodiesData []*types.Body
// CodeData is the network response packet for a node data retrieval.
type CodeData []struct {
Value []byte

@ -44,7 +44,6 @@ type LesServer struct {
defParams *flowcontrol.ServerParams
lesTopic discv5.Topic
quitSync chan struct{}
stopped bool
}
func NewLesServer(eth *eth.Ethereum, config *eth.Config) (*LesServer, error) {
@ -118,16 +117,6 @@ func (list RequestCostList) decode() requestCostTable {
return table
}
func (table requestCostTable) encode() RequestCostList {
list := make(RequestCostList, len(table))
for idx, code := range reqList {
list[idx].MsgCode = code
list[idx].BaseCost = table[code].baseCost
list[idx].ReqCost = table[code].reqCost
}
return list
}
type linReg struct {
sumX, sumY, sumXX, sumXY float64
cnt uint64

Loading…
Cancel
Save