1 |
diff --git openjdk/src/java.base/share/classes/java/security/Security.java openjdk/src/java.base/share/classes/java/security/Security.java |
2 |
index f1633afb627..ce32c939253 100644 |
3 |
--- openjdk/src/java.base/share/classes/java/security/Security.java |
4 |
+++ openjdk/src/java.base/share/classes/java/security/Security.java |
5 |
@@ -32,6 +32,7 @@ import java.net.URL; |
6 |
|
7 |
import jdk.internal.event.EventHelper; |
8 |
import jdk.internal.event.SecurityPropertyModificationEvent; |
9 |
+import jdk.internal.access.JavaSecuritySystemConfiguratorAccess; |
10 |
import jdk.internal.access.SharedSecrets; |
11 |
import jdk.internal.util.StaticProperty; |
12 |
import sun.security.util.Debug; |
13 |
@@ -74,6 +75,15 @@ public final class Security { |
14 |
} |
15 |
|
16 |
static { |
17 |
+ // Initialise here as used by code with system properties disabled |
18 |
+ SharedSecrets.setJavaSecuritySystemConfiguratorAccess( |
19 |
+ new JavaSecuritySystemConfiguratorAccess() { |
20 |
+ @Override |
21 |
+ public boolean isSystemFipsEnabled() { |
22 |
+ return SystemConfigurator.isSystemFipsEnabled(); |
23 |
+ } |
24 |
+ }); |
25 |
+ |
26 |
// doPrivileged here because there are multiple |
27 |
// things in initialize that might require privs. |
28 |
// (the FileInputStream call and the File.exists call, |
29 |
@@ -194,9 +204,8 @@ public final class Security { |
30 |
} |
31 |
|
32 |
String disableSystemProps = System.getProperty("java.security.disableSystemPropertiesFile"); |
33 |
- if (disableSystemProps == null && |
34 |
- "true".equalsIgnoreCase(props.getProperty |
35 |
- ("security.useSystemPropertiesFile"))) { |
36 |
+ if ((disableSystemProps == null || "false".equalsIgnoreCase(disableSystemProps)) && |
37 |
+ "true".equalsIgnoreCase(props.getProperty("security.useSystemPropertiesFile"))) { |
38 |
if (SystemConfigurator.configure(props)) { |
39 |
loadedProps = true; |
40 |
} |
41 |
diff --git openjdk/src/java.base/share/classes/java/security/SystemConfigurator.java openjdk/src/java.base/share/classes/java/security/SystemConfigurator.java |
42 |
index 60fa75cab45..10b54aa4ce4 100644 |
43 |
--- openjdk/src/java.base/share/classes/java/security/SystemConfigurator.java |
44 |
+++ openjdk/src/java.base/share/classes/java/security/SystemConfigurator.java |
45 |
@@ -38,8 +38,6 @@ import java.util.Map.Entry; |
46 |
import java.util.Properties; |
47 |
import java.util.regex.Pattern; |
48 |
|
49 |
-import jdk.internal.access.JavaSecuritySystemConfiguratorAccess; |
50 |
-import jdk.internal.access.SharedSecrets; |
51 |
import sun.security.util.Debug; |
52 |
|
53 |
/** |
54 |
@@ -65,16 +63,6 @@ final class SystemConfigurator { |
55 |
|
56 |
private static boolean systemFipsEnabled = false; |
57 |
|
58 |
- static { |
59 |
- SharedSecrets.setJavaSecuritySystemConfiguratorAccess( |
60 |
- new JavaSecuritySystemConfiguratorAccess() { |
61 |
- @Override |
62 |
- public boolean isSystemFipsEnabled() { |
63 |
- return SystemConfigurator.isSystemFipsEnabled(); |
64 |
- } |
65 |
- }); |
66 |
- } |
67 |
- |
68 |
/* |
69 |
* Invoked when java.security.Security class is initialized, if |
70 |
* java.security.disableSystemPropertiesFile property is not set and |