--- old/test/lib/jdk/test/lib/OSVersion.java 2018-08-31 11:36:26.000000000 -0700 +++ new/test/lib/jdk/test/lib/OSVersion.java 2018-08-31 11:36:25.000000000 -0700 @@ -30,6 +30,9 @@ import java.io.FileReader; import java.util.regex.Pattern; import java.util.stream.Collectors; +import java.security.AccessController; +import java.security.PrivilegedActionException; +import java.security.PrivilegedExceptionAction; public final class OSVersion implements Comparable { public static final OSVersion WINDOWS_95 = new OSVersion(4, 0); @@ -69,9 +72,11 @@ } // Try to get Solaris version from /etc/release - try (BufferedReader in = - new BufferedReader(new FileReader("/etc/release"))) { + try (BufferedReader in = new BufferedReader(AccessController.doPrivileged( + (PrivilegedExceptionAction) () -> new FileReader("/etc/release")))) { return in.readLine().trim().split(" ")[2]; + } catch (PrivilegedActionException e) { + System.out.println("Second attempt failed with: " + e.getException().getMessage()); } catch (Exception e) { System.out.println("Second attempt failed with: " + e.getMessage()); }