When attempting to run the SsoConfig utilities on the DX NetOps Portal server, the application fails to initialize and exits unexpectedly with a Java InvocationTargetException.
ERROR MESSAGE: "This Application has Unexpectedly Quit: Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)"
SYMPTOMS:
SsoConfig fails during the "Initializing application..." phase after language selection.
Stack trace reveals: "java.lang.UnsatisfiedLinkError: /tmp/bc-fips-jni_[ID]/libbc-probe.so: failed to map segment from shared object".
The utility attempts to load JNI libraries from /tmp even if IATEMPDIR is set to a different location.
Long-running Portal services honor the custom temp directory, but CLI utilities default to /tmp.
CONTEXT: This occurs on hardened systems where the /tmp directory is mounted with the noexec option or is otherwise unsuitable for executable mappings.
IMPACT: Administrators cannot change LDAP or SSO settings via the command-line utilities.
Environment:
Configuration: Systems with non-default IATEMPDIR or noexec /tmp partitions
ROOT CAUSE: Bouncy Castle FIPS extracts JNI libraries to the directory specified by the java.io.tmpdir JVM property. SsoConfig does not automatically pass the IATEMPDIR variable or service-level temp configurations to the Java process, causing them to default to /tmp. If /tmp is hardened (noexec), the library load fails.
RELATED RESOURCES:
Defect ID: DE184278
KNOWN LIMITATIONS:
Manual modification of the launcher scripts may be overwritten during product upgrades until a permanent fix is integrated.
PREREQUISITES:
Access to the Performance Center installation directory.
Administrative privileges to modify shell scripts.
STEPS:
IDENTIFY SECURE TEMP DIRECTORY Determine the path used by other DX NetOps services (e.g., /ca/media/tmp).
MODIFY LAUNCHER SCRIPTS Navigate to the sso/bin directory. Path: /opt/CA/PerformanceCenter/sso/bin
Edit the SsoConfig script to the export JAVA_TOOL_OPTIONS entry including the corrected temp directory.
Command Example FROM: export JAVA_TOOL_OPTIONS=-Djdk.util.zip.disableZip64ExtraFieldValidation=true
Command Example TO: export JAVA_TOOL_OPTIONS="-Djdk.util.zip.disableZip64ExtraFieldValidation=true -Djava.io.tmpdir=/path/to/custom/tmp"
EXECUTE UTILITY Run the SsoConfig utility again.
EXPECTED: The application initializes successfully and allows configuration changes.
VERIFY SUCCESS:
SsoConfig proceeds past the "Initializing application..." stage.
No UnsatisfiedLinkError appears in the terminal output.
LDAP/SSO settings can be modified and saved.