try continuous port range
This commit is contained in:
parent
769621f4b9
commit
490d34bd79
|
@ -84,16 +84,13 @@ proc predictPortRange*(localPort: Port, probedPorts: seq[Port]): seq[Port] =
|
|||
return
|
||||
# assume symmetric NAT with random port mapping
|
||||
randomize()
|
||||
let first = if minPort >= 1024 + 10000:
|
||||
minPort - 10000
|
||||
let first = if maxPort <= uint16.high - RandomPortCount - 1000'u16:
|
||||
maxPort + 1000'u16
|
||||
else:
|
||||
1024
|
||||
let last = if maxPort <= uint16.high - 10000:
|
||||
maxPort + 10000
|
||||
else:
|
||||
uint16.high
|
||||
for _ in 1 .. RandomPortCount:
|
||||
result.add(Port(rand(first .. last)))
|
||||
uint16.high - RandomPortCount
|
||||
result = newSeq[Port](RandomPortCount)
|
||||
for i in 0'u16 .. RandomPortCount - 1'u16:
|
||||
result[i] = Port(first + i)
|
||||
|
||||
suite "port prediction tests":
|
||||
test "single port":
|
||||
|
|
Loading…
Reference in New Issue