GP-693: Additional improvements

This commit is contained in:
Ryan Kurtz 2021-02-24 14:14:04 -05:00
parent df114d13a6
commit 2a8afd5296
6 changed files with 11 additions and 12 deletions

View file

@ -80,14 +80,13 @@ public class ServerAdmin implements GhidraLaunchable {
* @param args command line arguments * @param args command line arguments
*/ */
public void execute(String[] args) { public void execute(String[] args) {
File serverDir = null;
int ix = 0; int ix = 0;
String configFilePath = args.length != 0 && !args[0].startsWith("-") ? args[ix++] String configFilePath = args.length != 0 && !args[0].startsWith("-") ? args[ix++]
: System.getProperty(CONFIG_FILE_PROPERTY); : System.getProperty(CONFIG_FILE_PROPERTY);
serverDir = getServerDirFromConfig(configFilePath); File serverDir = getServerDirFromConfig(configFilePath);
if (serverDir == null || (args.length - ix) == 0) { if (serverDir == null || (args.length - ix) == 0) {
displayUsage(""); displayUsage("");
System.exit(-1); System.exit(-1);
@ -102,9 +101,7 @@ public class ServerAdmin implements GhidraLaunchable {
System.exit(-1); System.exit(-1);
} }
if (propertyUsed) { System.out.println("Using server directory: " + serverDir);
System.out.println("Using server directory: " + serverDir);
}
File userFile = new File(serverDir, UserManager.USER_PASSWORD_FILE); File userFile = new File(serverDir, UserManager.USER_PASSWORD_FILE);
if (!serverDir.isDirectory() || !userFile.isFile()) { if (!serverDir.isDirectory() || !userFile.isFile()) {
@ -421,6 +418,8 @@ public class ServerAdmin implements GhidraLaunchable {
} }
private File getServerDirFromConfig(String configFilePath) { private File getServerDirFromConfig(String configFilePath) {
System.out.println("Using config file: " + configFilePath);
if (configFilePath == null) { if (configFilePath == null) {
return null; return null;
} }
@ -453,6 +452,7 @@ public class ServerAdmin implements GhidraLaunchable {
String p = config.getProperty(SERVER_DIR_CONFIG_PROPERTY); String p = config.getProperty(SERVER_DIR_CONFIG_PROPERTY);
if (p == null) { if (p == null) {
System.out.println("Failed to find property: " + SERVER_DIR_CONFIG_PROPERTY);
return null; return null;
} }
File dir = new File(p); File dir = new File(p);
@ -478,8 +478,8 @@ public class ServerAdmin implements GhidraLaunchable {
} }
String invocationName = System.getProperty(INVOCATION_NAME_PROPERTY); String invocationName = System.getProperty(INVOCATION_NAME_PROPERTY);
System.err.println("Usage: " + System.err.println("Usage: " +
(invocationName != null ? invocationName : "java " + UserAdmin.class.getName()) + (invocationName != null ? invocationName : "java " + ServerAdmin.class.getName()) +
(propertyUsed ? "" : " <serverPath>") + " [<command>] [<command>] ..."); (invocationName != null ? "" : " <configPath>") + " [<command>] [<command>] ...");
System.err.println("\nSupported commands:"); System.err.println("\nSupported commands:");
System.err.println(" -add <sid> [--p]"); System.err.println(" -add <sid> [--p]");
System.err.println( System.err.println(

View file

@ -45,7 +45,7 @@ fi
OWNER="$(grep '^wrapper.app.account=' "${CONFIG}" | sed -e 's/^.*=\(.*\)\s*.*$/\1/')" OWNER="$(grep '^wrapper.app.account=' "${CONFIG}" | sed -e 's/^.*=\(.*\)\s*.*$/\1/')"
if [ -z "${OWNER}" -o "${OWNER}" = "$(whoami)" ]; then if [ -z "${OWNER}" -o "${OWNER}" = "$(whoami)" ]; then
VMARGS="-DUserAdmin.invocation=$(basename "${SCRIPT_FILE}") " VMARGS="-DUserAdmin.invocation=$(basename "${SCRIPT_FILE}")"
"${SCRIPT_DIR}"/../support/launch.sh fg svrAdmin "${MAXMEM}" "$VMARGS" ghidra.server.ServerAdmin "${CONFIG}" "$@" "${SCRIPT_DIR}"/../support/launch.sh fg svrAdmin "${MAXMEM}" "$VMARGS" ghidra.server.ServerAdmin "${CONFIG}" "$@"
else else
echo "Running svrAdmin with $SUDO as ${OWNER} ..." echo "Running svrAdmin with $SUDO as ${OWNER} ..."

View file

@ -25,7 +25,7 @@ if [ ! -d "${GHIDRA_ROOT_DIR}" ]; then
fi fi
# Set required VMARGS for jar builder application # Set required VMARGS for jar builder application
APP_VMARGS="-DGhidraJarBuilder.Name=$(basename "${SCRIPT_FILE}") " APP_VMARGS="-DGhidraJarBuilder.Name=$(basename "${SCRIPT_FILE}")"
# Launch jar builder # Launch jar builder
"${SCRIPT_DIR}"/launch.sh "${LAUNCH_MODE}" Ghidra "${MAXMEM}" "${APP_VMARGS}" ghidra.util.GhidraJarBuilder -main ghidra.JarRun "$@" "${SCRIPT_DIR}"/launch.sh "${LAUNCH_MODE}" Ghidra "${MAXMEM}" "${APP_VMARGS}" ghidra.util.GhidraJarBuilder -main ghidra.JarRun "$@"

View file

@ -104,7 +104,6 @@ set ERROR=ERROR: JAVA_HOME is not set and no 'java' command could be found in yo
goto reportError goto reportError
:findJavaFromJavaHome :findJavaFromJavaHome
set "JAVA_HOME=%JAVA_HOME:"=%"
set "JAVA=%JAVA_HOME%\bin\java.exe" set "JAVA=%JAVA_HOME%\bin\java.exe"
if exist "%JAVA%" goto lab2 if exist "%JAVA%" goto lab2

View file

@ -43,6 +43,6 @@ set "CONFIG=%SCRIPT_DIR%..\..\Common\server\server.conf"
:continue :continue
set VMARGS=-DUserAdmin.invocation="%0" set VMARGS=-DUserAdmin.invocation=%~n0
call "%~dp0\..\support\launch.bat" fg svrAdmin "%MAXMEM%" "%VMARGS%" ghidra.server.ServerAdmin "%CONFIG%" %* call "%~dp0\..\support\launch.bat" fg svrAdmin "%MAXMEM%" "%VMARGS%" ghidra.server.ServerAdmin "%CONFIG%" %*

View file

@ -18,6 +18,6 @@ exit /B 1
:continue :continue
set APP_VMARGS=-DGhidraJarBuilder.Name=%0 set APP_VMARGS=-DGhidraJarBuilder.Name=%~n0
call "%~dp0launch.bat" %LAUNCH_MODE% Ghidra "" "%APP_VMARGS%" ghidra.util.GhidraJarBuilder -main ghidra.JarRun %* call "%~dp0launch.bat" %LAUNCH_MODE% Ghidra "" "%APP_VMARGS%" ghidra.util.GhidraJarBuilder -main ghidra.JarRun %*