les: pass server pool to protocol manager (#16947)
This commit is contained in:
		
				
					committed by
					
						
						Péter Szilágyi
					
				
			
			
				
	
			
			
			
						parent
						
							f991995918
						
					
				
				
					commit
					546d42179e
				
			@@ -127,7 +127,7 @@ func New(ctx *node.ServiceContext, config *eth.Config) (*LightEthereum, error) {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	leth.txPool = light.NewTxPool(leth.chainConfig, leth.blockchain, leth.relay)
 | 
			
		||||
	if leth.protocolManager, err = NewProtocolManager(leth.chainConfig, true, ClientProtocolVersions, config.NetworkId, leth.eventMux, leth.engine, leth.peers, leth.blockchain, nil, chainDb, leth.odr, leth.relay, quitSync, &leth.wg); err != nil {
 | 
			
		||||
	if leth.protocolManager, err = NewProtocolManager(leth.chainConfig, true, ClientProtocolVersions, config.NetworkId, leth.eventMux, leth.engine, leth.peers, leth.blockchain, nil, chainDb, leth.odr, leth.relay, leth.serverPool, quitSync, &leth.wg); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	leth.ApiBackend = &LesApiBackend{leth, nil}
 | 
			
		||||
 
 | 
			
		||||
@@ -129,7 +129,7 @@ type ProtocolManager struct {
 | 
			
		||||
 | 
			
		||||
// NewProtocolManager returns a new ethereum sub protocol manager. The Ethereum sub protocol manages peers capable
 | 
			
		||||
// with the ethereum network.
 | 
			
		||||
func NewProtocolManager(chainConfig *params.ChainConfig, lightSync bool, protocolVersions []uint, networkId uint64, mux *event.TypeMux, engine consensus.Engine, peers *peerSet, blockchain BlockChain, txpool txPool, chainDb ethdb.Database, odr *LesOdr, txrelay *LesTxRelay, quitSync chan struct{}, wg *sync.WaitGroup) (*ProtocolManager, error) {
 | 
			
		||||
func NewProtocolManager(chainConfig *params.ChainConfig, lightSync bool, protocolVersions []uint, networkId uint64, mux *event.TypeMux, engine consensus.Engine, peers *peerSet, blockchain BlockChain, txpool txPool, chainDb ethdb.Database, odr *LesOdr, txrelay *LesTxRelay, serverPool *serverPool, quitSync chan struct{}, wg *sync.WaitGroup) (*ProtocolManager, error) {
 | 
			
		||||
	// Create the protocol manager with the base fields
 | 
			
		||||
	manager := &ProtocolManager{
 | 
			
		||||
		lightSync:   lightSync,
 | 
			
		||||
@@ -141,6 +141,7 @@ func NewProtocolManager(chainConfig *params.ChainConfig, lightSync bool, protoco
 | 
			
		||||
		networkId:   networkId,
 | 
			
		||||
		txpool:      txpool,
 | 
			
		||||
		txrelay:     txrelay,
 | 
			
		||||
		serverPool:  serverPool,
 | 
			
		||||
		peers:       peers,
 | 
			
		||||
		newPeerCh:   make(chan *peer),
 | 
			
		||||
		quitSync:    quitSync,
 | 
			
		||||
 
 | 
			
		||||
@@ -178,7 +178,7 @@ func newTestProtocolManager(lightSync bool, blocks int, generator func(int, *cor
 | 
			
		||||
	} else {
 | 
			
		||||
		protocolVersions = ServerProtocolVersions
 | 
			
		||||
	}
 | 
			
		||||
	pm, err := NewProtocolManager(gspec.Config, lightSync, protocolVersions, NetworkId, evmux, engine, peers, chain, nil, db, odr, nil, make(chan struct{}), new(sync.WaitGroup))
 | 
			
		||||
	pm, err := NewProtocolManager(gspec.Config, lightSync, protocolVersions, NetworkId, evmux, engine, peers, chain, nil, db, odr, nil, nil, make(chan struct{}), new(sync.WaitGroup))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -52,7 +52,7 @@ type LesServer struct {
 | 
			
		||||
 | 
			
		||||
func NewLesServer(eth *eth.Ethereum, config *eth.Config) (*LesServer, error) {
 | 
			
		||||
	quitSync := make(chan struct{})
 | 
			
		||||
	pm, err := NewProtocolManager(eth.BlockChain().Config(), false, ServerProtocolVersions, config.NetworkId, eth.EventMux(), eth.Engine(), newPeerSet(), eth.BlockChain(), eth.TxPool(), eth.ChainDb(), nil, nil, quitSync, new(sync.WaitGroup))
 | 
			
		||||
	pm, err := NewProtocolManager(eth.BlockChain().Config(), false, ServerProtocolVersions, config.NetworkId, eth.EventMux(), eth.Engine(), newPeerSet(), eth.BlockChain(), eth.TxPool(), eth.ChainDb(), nil, nil, nil, quitSync, new(sync.WaitGroup))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user