p2p/netutil: add ipv4 parameter to RandomAddr

This commit is contained in:
Felix Lange 2024-05-30 16:20:02 +02:00
parent 36e5fe2b19
commit f0a653fced
4 changed files with 5 additions and 11 deletions

View file

@ -268,7 +268,7 @@ func (*closeTest) Generate(rand *rand.Rand, size int) reflect.Value {
} }
for _, id := range gen([]enode.ID{}, rand).([]enode.ID) { for _, id := range gen([]enode.ID{}, rand).([]enode.ID) {
r := new(enr.Record) r := new(enr.Record)
r.Set(enr.IP(genIP(rand))) r.Set(enr.IPv4Addr(netutil.RandomAddr(rand, true)))
n := enode.SignNull(r, id) n := enode.SignNull(r, id)
t.All = append(t.All, n) t.All = append(t.All, n)
} }
@ -483,12 +483,6 @@ func gen(typ interface{}, rand *rand.Rand) interface{} {
return v.Interface() return v.Interface()
} }
func genIP(rand *rand.Rand) net.IP {
ip := make(net.IP, 4)
rand.Read(ip)
return ip
}
func quickcfg() *quick.Config { func quickcfg() *quick.Config {
return &quick.Config{ return &quick.Config{
MaxCount: 5000, MaxCount: 5000,

View file

@ -119,7 +119,7 @@ func TestLocalNodeEndpoint(t *testing.T) {
assert.Equal(t, fallback.Port, ln.Node().UDP()) assert.Equal(t, fallback.Port, ln.Node().UDP())
assert.Equal(t, initialSeq+1, ln.Node().Seq()) assert.Equal(t, initialSeq+1, ln.Node().Seq())
from := netip.AddrPortFrom(netutil.RandomAddr(rng), 9000) from := netip.AddrPortFrom(netutil.RandomAddr(rng, true), 9000)
endpoint := netip.AddrPortFrom(netutil.IPToAddr(predicted.IP), uint16(predicted.Port)) endpoint := netip.AddrPortFrom(netutil.IPToAddr(predicted.IP), uint16(predicted.Port))
ln.UDPEndpointStatement(from, endpoint) ln.UDPEndpointStatement(from, endpoint)
} }

View file

@ -354,9 +354,9 @@ func IPToAddr(ip net.IP) netip.Addr {
} }
// RandomAddr creates a random IP address. // RandomAddr creates a random IP address.
func RandomAddr(rng *rand.Rand) netip.Addr { func RandomAddr(rng *rand.Rand, ipv4 bool) netip.Addr {
var bytes []byte var bytes []byte
if rng.Intn(2) == 0 { if ipv4 || rng.Intn(2) == 0 {
bytes = make([]byte, 4) bytes = make([]byte, 4)
} else { } else {
bytes = make([]byte, 16) bytes = make([]byte, 16)

View file

@ -252,7 +252,7 @@ func TestDistinctNetSetAddRemove(t *testing.T) {
Values: func(s []reflect.Value, rng *rand.Rand) { Values: func(s []reflect.Value, rng *rand.Rand) {
slice := make([]netip.Addr, rng.Intn(20)+1) slice := make([]netip.Addr, rng.Intn(20)+1)
for i := range slice { for i := range slice {
slice[i] = RandomAddr(rng) slice[i] = RandomAddr(rng, false)
} }
s[0] = reflect.ValueOf(slice) s[0] = reflect.ValueOf(slice)
}, },