[21, 22, 23, master] d/p/reproducible-properties-timestamp.diff: Use PrivilegedAction to avoid SecurityManager exception.
After 4a3d2d7c we have reintroduced https://bugs.openjdk.org/browse/JDK-8272157.
java/util/logging/LogManager/Configuration/updateConfiguration/SimpleUpdateConfigWithInputStreamTest.java fails on all platforms with:
java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "getenv.SOURCE_DATE_EPOCH")
at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:488)
at java.base/java.security.AccessController.checkPermission(AccessController.java:1085)
at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:411)
at java.base/java.lang.System.getenv(System.java:1159)
at java.base/java.util.Properties.getFormattedTimestamp(Properties.java:1611)
at java.base/java.util.Properties.writeDateComment(Properties.java:958)
at java.base/java.util.Properties.store0(Properties.java:919)
at java.base/java.util.Properties.store(Properties.java:908)
at SimpleUpdateConfigWithInputStreamTest$Configure.updateConfigurationWith(SimpleUpdateConfigWithInputStreamTest.java:496)
at SimpleUpdateConfigWithInputStreamTest.testUpdateConfiguration(SimpleUpdateConfigWithInputStreamTest.java:167)
at SimpleUpdateConfigWithInputStreamTest$Configure.doPrivileged(SimpleUpdateConfigWithInputStreamTest.java:507)
at SimpleUpdateConfigWithInputStreamTest$TestCase.execute(SimpleUpdateConfigWithInputStreamTest.java:75)
at SimpleUpdateConfigWithInputStreamTest.main(SimpleUpdateConfigWithInputStreamTest.java:459)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
at java.base/java.lang.Thread.run(Thread.java:1570)
https://bugs.openjdk.org/browse/JDK-8274149 made properties naturally-ordered.
Hence we only need to ensure that we access system property from the PrivilegedAction.
Testing:
==============================
Test summary
==============================
TEST TOTAL PASS FAIL ERROR
jtreg:test/jdk/java/util/logging/LogManager/Configuration/updateConfiguration/SimpleUpdateConfigWithInputStreamTest.java
1 1 0 0
==============================
TEST SUCCESS