diff options
Diffstat (limited to 'src/main/java/com/it_jaros/network_scanner/Scanner.java')
| -rw-r--r-- | src/main/java/com/it_jaros/network_scanner/Scanner.java | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/main/java/com/it_jaros/network_scanner/Scanner.java b/src/main/java/com/it_jaros/network_scanner/Scanner.java index 3a4b37c..8144d6b 100644 --- a/src/main/java/com/it_jaros/network_scanner/Scanner.java +++ b/src/main/java/com/it_jaros/network_scanner/Scanner.java @@ -74,7 +74,7 @@ public class Scanner { AtomicLong portSlotFactory = new AtomicLong(System.nanoTime()); Semaphore maxWorkers = new Semaphore(maxWorkersPerHost); BitSet openPorts = new BitSet(PortRange.MAX_PORT); - BitSet blockedPorts = new BitSet(PortRange.MAX_PORT); + BitSet filteredPorts = new BitSet(PortRange.MAX_PORT); Progress progress = new Progress(target, portRange.getTotal(), new AtomicInteger(), new AtomicInteger(), new AtomicInteger() ); progressBar.submit(progress); @@ -90,8 +90,8 @@ public class Scanner { PortState state = getPortState(target, currentPort); if (state.equals(PortState.OPEN)) { progress.open().incrementAndGet(); - } else if (state.equals(PortState.BLOCKED)) { - progress.blocked().incrementAndGet(); + } else if (state.equals(PortState.FILTERED)) { + progress.filtered().incrementAndGet(); } return new PortResult(currentPort, state); } finally { @@ -109,8 +109,8 @@ public class Scanner { PortResult portResult = f.get(); if (portResult.state().equals(PortState.OPEN)) { openPorts.set(portResult.port()); - } else if (portResult.state().equals(PortState.BLOCKED)) { - blockedPorts.set(portResult.port()); + } else if (portResult.state().equals(PortState.FILTERED)) { + filteredPorts.set(portResult.port()); } } catch (InterruptedException e) { Thread.currentThread().interrupt(); @@ -124,7 +124,7 @@ public class Scanner { } } - return new ScanResult(target, openPorts, blockedPorts); + return new ScanResult(target, openPorts, filteredPorts); } private void waitForSlot(AtomicLong scanSlotFactory) { @@ -144,8 +144,10 @@ public class Scanner { return PortState.OPEN; } catch (NoRouteToHostException ignored) { // this can be safely ignored because the port is closed if a host is unreachable + } catch (SocketTimeoutException ignored) { + return PortState.FILTERED; } catch (ConnectException ignored) { - return PortState.BLOCKED; + return PortState.CLOSED; } catch (IOException ignored) { // Will happen a lot when scanning for open ports, so not needed } finally { |
