diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/main/java/com/it_jaros/jns/App.java | 8 | ||||
| -rw-r--r-- | src/main/java/com/it_jaros/jns/CliParser.java | 10 | ||||
| -rw-r--r-- | src/main/java/com/it_jaros/jns/scan/ScanOptions.java | 3 |
3 files changed, 14 insertions, 7 deletions
diff --git a/src/main/java/com/it_jaros/jns/App.java b/src/main/java/com/it_jaros/jns/App.java index 794d149..7573053 100644 --- a/src/main/java/com/it_jaros/jns/App.java +++ b/src/main/java/com/it_jaros/jns/App.java @@ -51,8 +51,12 @@ public class App { private static ScanOptions parseOptions(String[] args) { CliParser cliParser = new CliParser(); try { - return cliParser.parseArgs(args); - } catch (IllegalArgumentException e) { + ScanOptions scanOptions = cliParser.parseArgs(args); + if (scanOptions.help()) { + throw new HelpRequested(); + } + return scanOptions; + } catch (IllegalArgumentException | HelpRequested e) { cliParser.printUsageHelp(); throw e; } diff --git a/src/main/java/com/it_jaros/jns/CliParser.java b/src/main/java/com/it_jaros/jns/CliParser.java index 191dd29..ea16a1e 100644 --- a/src/main/java/com/it_jaros/jns/CliParser.java +++ b/src/main/java/com/it_jaros/jns/CliParser.java @@ -19,13 +19,14 @@ public class CliParser { String ports = CliDefaults.PORTS; boolean bannerRecognition = CliDefaults.BANNER_RECOGNITION; boolean disableOnlineCheck = CliDefaults.DISABLE_HOST_CHECK; + boolean help = false; boolean quiet = CliDefaults.QUIET; boolean showFilteredPorts = CliDefaults.SHOW_FILTERED_PORTS; int delayInMillis = CliDefaults.DELAY_IN_MILLIS; int hostsLimit = CliDefaults.MAX_HOSTS_LIMIT; - int workersPerHostLimit = CliDefaults.MAX_WORKERS_PER_HOST; int socketLimit = CliDefaults.SOCKET_LIMIT; int timeoutInMillis = CliDefaults.TIMEOUT_IN_MILLIS; + int workersPerHostLimit = CliDefaults.MAX_WORKERS_PER_HOST; for (int i = 0; i < args.length; i++) { final String currentArg = args[i]; @@ -45,8 +46,8 @@ public class CliParser { disableOnlineCheck = true; break; case "--help", "-h": - printUsageHelp(); - throw new HelpRequested(); + help = true; + break; case "--input", "-i": hostsFile = getArgument(args, ++i, currentArg); break; @@ -92,7 +93,8 @@ public class CliParser { hostsLimit, workersPerHostLimit, socketLimit, - timeoutInMillis + timeoutInMillis, + help ); } diff --git a/src/main/java/com/it_jaros/jns/scan/ScanOptions.java b/src/main/java/com/it_jaros/jns/scan/ScanOptions.java index b6aeae2..d6035c7 100644 --- a/src/main/java/com/it_jaros/jns/scan/ScanOptions.java +++ b/src/main/java/com/it_jaros/jns/scan/ScanOptions.java @@ -14,5 +14,6 @@ public record ScanOptions( int maxHostsLimit, int maxWorkersPerHost, int socketLimit, - int timeoutInMillis + int timeoutInMillis, + boolean help ) {} |
