Просмотр исходного кода

p2p/discover, p2p/discv5: use flexible comparison for IPs

Péter Szilágyi 9 лет назад
Родитель
Сommit
2573094df2
4 измененных файлов с 4 добавлено и 5 удалено
  1. 1 1
      p2p/discover/udp_test.go
  2. 1 1
      p2p/discv5/net.go
  3. 1 2
      p2p/discv5/node.go
  4. 1 1
      p2p/discv5/udp.go

+ 1 - 1
p2p/discover/udp_test.go

@@ -374,7 +374,7 @@ func TestUDP_successfulPing(t *testing.T) {
 		if 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)
 		}
 		if int(n.UDP) != test.remoteaddr.Port {

+ 1 - 1
p2p/discv5/net.go

@@ -759,7 +759,7 @@ func (net *Network) internNodeFromNeighbours(sender *net.UDPAddr, rn rpcNode) (n
 		}
 		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)
 	}
 	return n, err

+ 1 - 2
p2p/discv5/node.go

@@ -17,7 +17,6 @@
 package discv5
 
 import (
-	"bytes"
 	"crypto/ecdsa"
 	"crypto/elliptic"
 	"encoding/hex"
@@ -81,7 +80,7 @@ func (n *Node) addrEqual(a *net.UDPAddr) bool {
 	if ipv4 := a.IP.To4(); ipv4 != nil {
 		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.

+ 1 - 1
p2p/discv5/udp.go

@@ -196,7 +196,7 @@ func makeEndpoint(addr *net.UDPAddr, tcpPort uint16) rpcEndpoint {
 }
 
 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) {