|
|
- package p2p
-
- import (
- "strings"
- )
-
- // TODO Test
- func AddToIPRangeCounts(counts map[string]int, ip string) map[string]int {
- changes := make(map[string]int)
- ipParts := strings.Split(ip, ":")
- for i := 1; i < len(ipParts); i++ {
- prefix := strings.Join(ipParts[:i], ":")
- counts[prefix] += 1
- changes[prefix] = counts[prefix]
- }
- return changes
- }
-
- // TODO Test
- func CheckIPRangeCounts(counts map[string]int, limits []int) bool {
- for prefix, count := range counts {
- ipParts := strings.Split(prefix, ":")
- numParts := len(ipParts)
- if limits[numParts] < count {
- return false
- }
- }
- return true
- }
|