29 lines
1.2 KiB
Diff
29 lines
1.2 KiB
Diff
|
commit 8a8452b9ae862755210a9a2f4e34b1aa3ec7343d
|
||
|
Author: Andrew Hughes <gnu.andrew@redhat.com>
|
||
|
Date: Tue Jan 18 02:00:55 2022 +0000
|
||
|
|
||
|
RH2021263: Make sure java.security.Security is initialised when retrieving JavaSecuritySystemConfiguratorAccess instance
|
||
|
|
||
|
diff --git openjdk.orig/src/java.base/share/classes/jdk/internal/misc/SharedSecrets.java openjdk/src/java.base/share/classes/jdk/internal/misc/SharedSecrets.java
|
||
|
index 2ec51d57806..8489b940c43 100644
|
||
|
--- openjdk.orig/src/java.base/share/classes/jdk/internal/misc/SharedSecrets.java
|
||
|
+++ openjdk/src/java.base/share/classes/jdk/internal/misc/SharedSecrets.java
|
||
|
@@ -36,6 +36,7 @@ import java.io.FilePermission;
|
||
|
import java.io.ObjectInputStream;
|
||
|
import java.io.RandomAccessFile;
|
||
|
import java.security.ProtectionDomain;
|
||
|
+import java.security.Security;
|
||
|
import java.security.Signature;
|
||
|
|
||
|
/** A repository of "shared secrets", which are a mechanism for
|
||
|
@@ -368,6 +369,9 @@ public class SharedSecrets {
|
||
|
}
|
||
|
|
||
|
public static JavaSecuritySystemConfiguratorAccess getJavaSecuritySystemConfiguratorAccess() {
|
||
|
+ if (javaSecuritySystemConfiguratorAccess == null) {
|
||
|
+ unsafe.ensureClassInitialized(Security.class);
|
||
|
+ }
|
||
|
return javaSecuritySystemConfiguratorAccess;
|
||
|
}
|
||
|
}
|