From cb7568982542162c46e2a84be5f2a979691f191b Mon Sep 17 00:00:00 2001 From: Callan Bryant Date: Sun, 25 Oct 2020 14:59:46 +0000 Subject: [PATCH] move allocation out of loop --- configtypes.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/configtypes.go b/configtypes.go index 635b328..3ee53fe 100644 --- a/configtypes.go +++ b/configtypes.go @@ -165,8 +165,9 @@ func (conf DsnetConfig) MustAllocateIP() net.IP { // avoids broadcast addr + overflow max := (1 << zeros) - 2 + IP := make(net.IP, len(network.IP)) + for i := min; i <= max; i++ { - IP := make(net.IP, len(network.IP)) // dst, src! copy(IP, network.IP) @@ -195,9 +196,10 @@ func (conf DsnetConfig) MustAllocateIP6() net.IP { rbs := make([]byte, zeros) rand.Seed(time.Now().UTC().UnixNano()) + IP := make(net.IP, len(network.IP)) + for i := 0; i <= 10000; i++ { rand.Read(rbs) - IP := make(net.IP, len(network.IP)) // dst, src! Copy prefix of IP copy(IP, network.IP)