cmd/devp2p, p2p: dial using node iterator, discovery crawler (#20132)
* p2p/enode: add Iterator and associated utilities * p2p/discover: add RandomNodes iterator * p2p: dial using iterator * cmd/devp2p: add discv4 crawler * cmd/devp2p: WIP nodeset filter * cmd/devp2p: fixup lesFilter * core/forkid: add NewStaticFilter * cmd/devp2p: make -eth-network filter actually work * cmd/devp2p: improve crawl timestamp handling * cmd/devp2p: fix typo * p2p/enode: fix comment typos * p2p/discover: fix comment typos * p2p/discover: rename lookup.next to 'advance' * p2p: lower discovery mixer timeout * p2p/enode: implement dynamic FairMix timeouts * cmd/devp2p: add ropsten support in -eth-network filter * cmd/devp2p: tweak crawler log message
This commit is contained in:
		
				
					committed by
					
						 Péter Szilágyi
						Péter Szilágyi
					
				
			
			
				
	
			
			
			
						parent
						
							b0b277525c
						
					
				
				
					commit
					2c37142d2f
				
			| @@ -54,6 +54,11 @@ type Protocol struct { | ||||
| 	// but returns nil, it is assumed that the protocol handshake is still running. | ||||
| 	PeerInfo func(id enode.ID) interface{} | ||||
|  | ||||
| 	// DialCandidates, if non-nil, is a way to tell Server about protocol-specific nodes | ||||
| 	// that should be dialed. The server continuously reads nodes from the iterator and | ||||
| 	// attempts to create connections to them. | ||||
| 	DialCandidates enode.Iterator | ||||
|  | ||||
| 	// Attributes contains protocol specific information for the node record. | ||||
| 	Attributes []enr.Entry | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user