From 59556bdfee89c91f15a64a04223779cbe729f837 Mon Sep 17 00:00:00 2001 From: Felix Lange Date: Fri, 24 Jan 2020 21:07:55 +0100 Subject: [PATCH] p2p: re-add check for self in checkDial --- p2p/dial.go | 3 +++ p2p/dial_test.go | 8 ++++---- p2p/server.go | 1 + 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/p2p/dial.go b/p2p/dial.go index 8421273bd8..53f9a2c394 100644 --- a/p2p/dial.go +++ b/p2p/dial.go @@ -357,6 +357,9 @@ func (d *dialScheduler) freeDialSlots() int { // checkDial returns an error if node n should not be dialed. func (d *dialScheduler) checkDial(n *enode.Node) error { + if n.ID() == d.self { + return errSelf + } if _, ok := d.dialing[n.ID()]; ok { return errAlreadyDialing } diff --git a/p2p/dial_test.go b/p2p/dial_test.go index 452de9d4aa..41be25d21d 100644 --- a/p2p/dial_test.go +++ b/p2p/dial_test.go @@ -250,10 +250,10 @@ func TestDialSchedManyStaticNodes(t *testing.T) { uintID(0xFFFF), }, wantNewDials: []*enode.Node{ - newNode(uintID(0x0321), "127.0.0.1:30303"), - newNode(uintID(0x02E2), "127.0.0.1:30303"), - newNode(uintID(0x01E2), "127.0.0.1:30303"), - newNode(uintID(0x03D5), "127.0.0.1:30303"), + newNode(uintID(0x0085), "127.0.0.1:30303"), + newNode(uintID(0x02dc), "127.0.0.1:30303"), + newNode(uintID(0x0285), "127.0.0.1:30303"), + newNode(uintID(0x00cb), "127.0.0.1:30303"), }, }, }) diff --git a/p2p/server.go b/p2p/server.go index d7e6a206c8..c3ff316419 100644 --- a/p2p/server.go +++ b/p2p/server.go @@ -596,6 +596,7 @@ func (srv *Server) setupDiscovery() error { func (srv *Server) setupDialScheduler() { config := dialConfig{ + self: srv.localnode.ID(), maxDialPeers: srv.maxDialedConns(), maxActiveDials: srv.MaxPendingPeers, resolver: srv.ntab,