package iptools import "fmt" func enumerateRange(name string, r *Range, startFromOne bool) []LeaseInfo { start := r.Start cur := start lenfmt := fmt.Sprintf("%%s%%0%dd", len(fmt.Sprintf("%d", r.numHosts()))) i := 0 if startFromOne { i++ } leases := []LeaseInfo{} for r.End.Compare(cur) >= 0 { leases = append(leases, LeaseInfo{ HostName: fmt.Sprintf(lenfmt, name, i), Addr: cur, }) i++ cur = cur.Next() } return leases }