forked from cerc-io/plugeth
p2p/discover, p2p/discv5: use flexible comparison for IPs
This commit is contained in:
parent
745026b7b4
commit
2573094df2
@ -374,7 +374,7 @@ func TestUDP_successfulPing(t *testing.T) {
|
|||||||
if n.ID != rid {
|
if n.ID != rid {
|
||||||
t.Errorf("node has wrong ID: got %v, want %v", n.ID, rid)
|
t.Errorf("node has wrong ID: got %v, want %v", n.ID, rid)
|
||||||
}
|
}
|
||||||
if !bytes.Equal(n.IP, test.remoteaddr.IP) {
|
if !n.IP.Equal(test.remoteaddr.IP) {
|
||||||
t.Errorf("node has wrong IP: got %v, want: %v", n.IP, test.remoteaddr.IP)
|
t.Errorf("node has wrong IP: got %v, want: %v", n.IP, test.remoteaddr.IP)
|
||||||
}
|
}
|
||||||
if int(n.UDP) != test.remoteaddr.Port {
|
if int(n.UDP) != test.remoteaddr.Port {
|
||||||
|
@ -759,7 +759,7 @@ func (net *Network) internNodeFromNeighbours(sender *net.UDPAddr, rn rpcNode) (n
|
|||||||
}
|
}
|
||||||
return n, err
|
return n, err
|
||||||
}
|
}
|
||||||
if !bytes.Equal(n.IP, rn.IP) || n.UDP != rn.UDP || n.TCP != rn.TCP {
|
if !n.IP.Equal(rn.IP) || n.UDP != rn.UDP || n.TCP != rn.TCP {
|
||||||
err = fmt.Errorf("metadata mismatch: got %v, want %v", rn, n)
|
err = fmt.Errorf("metadata mismatch: got %v, want %v", rn, n)
|
||||||
}
|
}
|
||||||
return n, err
|
return n, err
|
||||||
|
@ -17,7 +17,6 @@
|
|||||||
package discv5
|
package discv5
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
|
||||||
"crypto/ecdsa"
|
"crypto/ecdsa"
|
||||||
"crypto/elliptic"
|
"crypto/elliptic"
|
||||||
"encoding/hex"
|
"encoding/hex"
|
||||||
@ -81,7 +80,7 @@ func (n *Node) addrEqual(a *net.UDPAddr) bool {
|
|||||||
if ipv4 := a.IP.To4(); ipv4 != nil {
|
if ipv4 := a.IP.To4(); ipv4 != nil {
|
||||||
ip = ipv4
|
ip = ipv4
|
||||||
}
|
}
|
||||||
return n.UDP == uint16(a.Port) && bytes.Equal(n.IP, ip)
|
return n.UDP == uint16(a.Port) && n.IP.Equal(ip)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Incomplete returns true for nodes with no IP address.
|
// Incomplete returns true for nodes with no IP address.
|
||||||
|
@ -196,7 +196,7 @@ func makeEndpoint(addr *net.UDPAddr, tcpPort uint16) rpcEndpoint {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (e1 rpcEndpoint) equal(e2 rpcEndpoint) bool {
|
func (e1 rpcEndpoint) equal(e2 rpcEndpoint) bool {
|
||||||
return e1.UDP == e2.UDP && e1.TCP == e2.TCP && bytes.Equal(e1.IP, e2.IP)
|
return e1.UDP == e2.UDP && e1.TCP == e2.TCP && e1.IP.Equal(e2.IP)
|
||||||
}
|
}
|
||||||
|
|
||||||
func nodeFromRPC(sender *net.UDPAddr, rn rpcNode) (*Node, error) {
|
func nodeFromRPC(sender *net.UDPAddr, rn rpcNode) (*Node, error) {
|
||||||
|
Loading…
Reference in New Issue
Block a user