summaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorGravatar Matthias Jaros <jarlucmat@mailbox.org>2026-08-22 09:15:28 +0200
committerGravatar Matthias Jaros <jarlucmat@mailbox.org>2026-08-22 09:15:28 +0200
commitc2853e0a0f02c863336c672db92c1b6ba41a1e3d (patch)
tree5842825f41d00ce21f5539d93e312d3dbc0925d8 /src/main
parentb0ce84cb9ec840d80b3e596961dac4154114584f (diff)
Wrapped ScanPortException in class
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/it_jaros/jns/scan/engine/ScanPortException.java7
-rw-r--r--src/main/java/com/it_jaros/jns/scan/engine/ScanPortTask.java23
2 files changed, 21 insertions, 9 deletions
diff --git a/src/main/java/com/it_jaros/jns/scan/engine/ScanPortException.java b/src/main/java/com/it_jaros/jns/scan/engine/ScanPortException.java
new file mode 100644
index 0000000..5c5389f
--- /dev/null
+++ b/src/main/java/com/it_jaros/jns/scan/engine/ScanPortException.java
@@ -0,0 +1,7 @@
+package com.it_jaros.jns.scan.engine;
+
+public class ScanPortException extends RuntimeException {
+ public ScanPortException(int port, Exception e) {
+ super(String.valueOf(port), e);
+ }
+}
diff --git a/src/main/java/com/it_jaros/jns/scan/engine/ScanPortTask.java b/src/main/java/com/it_jaros/jns/scan/engine/ScanPortTask.java
index 4255d6e..64d3298 100644
--- a/src/main/java/com/it_jaros/jns/scan/engine/ScanPortTask.java
+++ b/src/main/java/com/it_jaros/jns/scan/engine/ScanPortTask.java
@@ -43,17 +43,22 @@ public class ScanPortTask implements Callable<PortResult> {
@Override
public PortResult call() throws Exception {
- socketLimit.acquire();
try {
- scan.portStart();
- portScanRateLimiter.apply();
- if (cancelledToken.isCancelled()) {
- return PortResult.empty();
+ socketLimit.acquire();
+ try {
+ scan.portStart();
+ portScanRateLimiter.apply();
+ if (cancelledToken.isCancelled()) {
+ return PortResult.empty();
+ }
+ return checkPort();
+ } finally {
+ scan.portFinish();
+ socketLimit.release();
}
- return checkPort();
- } finally {
- scan.portFinish();
- socketLimit.release();
+ } catch (Exception e) {
+ // think about how to handle that
+ throw new ScanPortException(port, e);
}
}