Skip to content

Commit ea953ce

Browse files
committed
Merge remote-tracking branch 'origin/GT-3187_dev747368_GhidraServer_startup_option_cleanup' into Ghidra_9.1
2 parents 064bb71 + 2826eb2 commit ea953ce

File tree

1 file changed

+24
-23
lines changed

1 file changed

+24
-23
lines changed

Ghidra/Features/GhidraServer/src/main/java/ghidra/server/remote/GhidraServer.java

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -529,10 +529,22 @@ public static synchronized void main(String[] args) {
529529
String rootPath = null;
530530
int defaultPasswordExpiration = -1;
531531
boolean autoProvision = false;
532-
String jaasConfigFileStr = null;
532+
File jaasConfigFile = null;
533533

534534
// Network name resolution disabled by default
535535
InetNameLookup.setLookupEnabled(false);
536+
537+
// Initialize application
538+
try {
539+
ApplicationLayout layout = new GhidraServerApplicationLayout();
540+
ApplicationConfiguration configuration = new ApplicationConfiguration();
541+
configuration.setInitializeLogging(false);
542+
Application.initializeApplication(layout, configuration);
543+
}
544+
catch (IOException e) {
545+
System.err.println("Failed to initialize the application!");
546+
System.exit(-1);
547+
}
536548

537549
// Process command line options
538550
for (int i = 0; i < args.length; i++) {
@@ -635,8 +647,10 @@ else if (defaultPasswordExpiration == 0) {
635647
}
636648
}
637649
else if (s.startsWith("-jaas")) {
650+
String jaasConfigFileStr;
638651
if (s.length() == 5) {
639-
jaasConfigFileStr = ((i + 1) < args.length - 1) ? args[++i] : "";
652+
i++;
653+
jaasConfigFileStr = (i < args.length) ? args[i] : "";
640654
}
641655
else {
642656
jaasConfigFileStr = s.substring(5);
@@ -646,6 +660,13 @@ else if (s.startsWith("-jaas")) {
646660
displayUsage("Missing -jaas config file path argument");
647661
System.exit(-1);
648662
}
663+
jaasConfigFile = getServerCfgFile(jaasConfigFileStr);
664+
if (!jaasConfigFile.isFile()) {
665+
displayUsage(
666+
"JAAS config file (-jaas <configfile>) does not exist or is not file: " +
667+
jaasConfigFile.getAbsolutePath());
668+
System.exit(-1);
669+
}
649670
}
650671
else if (s.equals("-autoProvision")) {
651672
autoProvision = true;
@@ -664,18 +685,6 @@ else if (s.equals("-autoProvision")) {
664685
System.exit(-1);
665686
}
666687

667-
// Initialize application
668-
try {
669-
ApplicationLayout layout = new GhidraServerApplicationLayout();
670-
ApplicationConfiguration configuration = new ApplicationConfiguration();
671-
configuration.setInitializeLogging(false);
672-
Application.initializeApplication(layout, configuration);
673-
}
674-
catch (IOException e) {
675-
System.err.println("Failed to initialize the application!");
676-
System.exit(-1);
677-
}
678-
679688
File serverRoot = new File(rootPath);
680689
if (!serverRoot.isAbsolute()) {
681690
ResourceFile installRoot = Application.getInstallationDirectory();
@@ -686,19 +695,11 @@ else if (s.equals("-autoProvision")) {
686695
serverRoot = new File(installRoot.getFile(false), rootPath);
687696
}
688697

689-
File jaasConfigFile = null;
690698
if (authMode == JAAS_LOGIN) {
691-
if (jaasConfigFileStr == null) {
699+
if (jaasConfigFile == null) {
692700
displayUsage("JAAS config file argument (-jaas <configfile>) not specified");
693701
System.exit(-1);
694702
}
695-
jaasConfigFile = getServerCfgFile(jaasConfigFileStr);
696-
if (!jaasConfigFile.isFile()) {
697-
displayUsage(
698-
"JAAS config file (-jaas <configfile>) does not exist or is not file: " +
699-
jaasConfigFile.getAbsolutePath());
700-
System.exit(-1);
701-
}
702703
}
703704

704705
try {

0 commit comments

Comments
 (0)