diff options
| author | 2026-08-13 20:53:47 +0200 | |
|---|---|---|
| committer | 2026-08-13 20:53:47 +0200 | |
| commit | 4b5dbb6b166d61bfd409ca460db1ef7a9bad4b0e (patch) | |
| tree | 4f933552566c9eb1e02b2561b4f32103f0f232f5 /src/main/java/com | |
| parent | 9ada0eae23e467d19edd4b45a9a3c215a320a06e (diff) | |
Wrapped exceptions in PortScanResultAccumulator instead of printing them
and messing with cliprinter
Diffstat (limited to 'src/main/java/com')
| -rw-r--r-- | src/main/java/com/it_jaros/jns/scan/engine/PortScanResultAccumulator.java | 15 | ||||
| -rw-r--r-- | src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java | 2 |
2 files changed, 8 insertions, 9 deletions
diff --git a/src/main/java/com/it_jaros/jns/scan/engine/PortScanResultAccumulator.java b/src/main/java/com/it_jaros/jns/scan/engine/PortScanResultAccumulator.java index 89238ed..e4dfcd7 100644 --- a/src/main/java/com/it_jaros/jns/scan/engine/PortScanResultAccumulator.java +++ b/src/main/java/com/it_jaros/jns/scan/engine/PortScanResultAccumulator.java @@ -33,14 +33,7 @@ final class PortScanResultAccumulator { } final Exception e = portResult.getException(); if (e != null) { - ScanFailure scanFailure = failureCounts.computeIfAbsent( - e.getClass(), - k -> new ScanFailure( - new ArrayList<>(), - ExceptionInfo.from(e) - ) - ); - scanFailure.ports().add(portResult.getPort()); + recordFailure(e, portResult.getPort()); } } @@ -57,4 +50,10 @@ final class PortScanResultAccumulator { getFailureSummary() ); } + + public void recordFailure(Throwable e, int port) { + failureCounts.computeIfAbsent(e.getClass(), + k -> new ScanFailure(new ArrayList<>(), ExceptionInfo.from(e))) + .ports().add(port); + } } diff --git a/src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java b/src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java index d27cae2..045ba62 100644 --- a/src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java +++ b/src/main/java/com/it_jaros/jns/scan/engine/ScanHostTask.java @@ -76,7 +76,7 @@ public class ScanHostTask implements Callable<ScanResult> { if (poll instanceof PollState.Success<PortResult>(PortResult value)) { accumulator.add(value); } else if (poll instanceof PollState.Failure(Throwable error)) { - System.err.printf("scanHostPorts(%s): ScanPortTask() failed with error %s -> %s%n", host, error.getClass().getSimpleName(), error.getMessage()); + accumulator.recordFailure(error, -1); } } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); |
