diff --git a/tcp_syni.nim b/tcp_syni.nim index 619143b..df5536e 100644 --- a/tcp_syni.nim +++ b/tcp_syni.nim @@ -174,10 +174,10 @@ proc predictPortRange(dstPorts: seq[Port]): seq[Port] = result[i] = Port(basePort + i.uint16) proc cleanup*(puncher: TcpSyniPuncher) {.async.} = - for attempt in puncher.connectAttempts: - await attempt.deleteFirewallRules() - for attempt in puncher.acceptAttempts: - await attempt.deleteFirewallRules() + while puncher.connectAttempts.len() != 0: + await puncher.connectAttempts.pop().deleteFirewallRules() + while puncher.acceptAttempts.len() != 0: + await puncher.connectAttempts.pop().deleteFirewallRules() proc doConnect(srcIp: IpAddress, srcPort: Port, dstIp: IpAddress, dstPort: Port, future: Future[AsyncSocket]) {.async.} =