diff options
Diffstat (limited to 'src/main/java/com/it_jaros/networkScanner')
| -rw-r--r-- | src/main/java/com/it_jaros/networkScanner/Scanner.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/com/it_jaros/networkScanner/Scanner.java b/src/main/java/com/it_jaros/networkScanner/Scanner.java index 86e343d..518372f 100644 --- a/src/main/java/com/it_jaros/networkScanner/Scanner.java +++ b/src/main/java/com/it_jaros/networkScanner/Scanner.java @@ -71,7 +71,10 @@ public class Scanner { List<Future<Integer>> futures = new ArrayList<>(); while (portRange.hasNext()) { final int currentPort = portRange.next(); - futures.add(executor.submit(() -> scanPort(target, portSlotFactory, currentPort))); + futures.add(executor.submit(() -> { + waitForSlot(portSlotFactory); + return scanPort(target, currentPort); + })); } futures.forEach(f -> { @@ -92,8 +95,7 @@ public class Scanner { return new ScanResult(target, openPorts); } - private int scanPort(String target, AtomicLong scanSlotFactory, final int currentPort) { - waitForSlot(scanSlotFactory); + private int scanPort(String target, final int currentPort) { if (isTargetPortOpen(target, currentPort)) { return currentPort; } |
