From 728600d4e30d3af2b74cc524af32b2800bcad07b Mon Sep 17 00:00:00 2001 From: Mandy Chung <mchung@openjdk.org> Date: Tue, 1 May 2012 19:45:34 -0700 Subject: [PATCH] 7164376: Replace use of sun.security.action.LoadLibraryAction with System.loadLibrary Reviewed-by: alanb, mullan, prr --- .../apple/launcher/JavaAppLauncher.java | 9 ++- .../classes/apple/security/KeychainStore.java | 8 ++- .../apple/concurrent/LibDispatchNative.java | 28 +++++--- .../classes/com/apple/eawt/Application.java | 9 ++- .../classes/com/apple/eio/FileManager.java | 8 ++- .../classes/com/apple/laf/AquaFileView.java | 9 ++- .../com/apple/laf/AquaLookAndFeel.java | 12 +++- .../com/apple/laf/AquaNativeResources.java | 9 ++- .../classes/com/apple/laf/ScreenMenu.java | 9 ++- .../com/apple/laf/ScreenPopupFactory.java | 10 ++- .../util/prefs/MacOSXPreferencesFile.java | 8 ++- .../classes/sun/awt/CGraphicsEnvironment.java | 12 +++- .../sun/lwawt/macosx/CAccessibility.java | 9 ++- .../imageio/plugins/jpeg/JPEGImageReader.java | 7 +- .../imageio/plugins/jpeg/JPEGImageWriter.java | 7 +- .../sun/java/util/jar/pack/NativeUnpack.java | 7 +- .../share/classes/java/awt/SplashScreen.java | 7 +- jdk/src/share/classes/java/awt/Toolkit.java | 7 +- .../java/awt/event/NativeLibLoader.java | 7 +- .../classes/java/awt/image/ColorModel.java | 7 +- .../net/AbstractPlainDatagramSocketImpl.java | 7 +- .../java/net/AbstractPlainSocketImpl.java | 7 +- .../classes/java/net/DatagramPacket.java | 7 +- .../share/classes/java/net/InetAddress.java | 8 ++- .../classes/java/net/NetworkInterface.java | 9 ++- .../classes/sun/awt/NativeLibLoader.java | 7 +- .../sun/awt/image/JPEGImageDecoder.java | 7 +- .../sun/awt/image/NativeLibLoader.java | 9 ++- .../share/classes/sun/java2d/Disposer.java | 7 +- .../management/ManagementFactoryHelper.java | 9 ++- .../share/classes/sun/net/sdp/SdpSupport.java | 7 +- .../sun/net/spi/DefaultProxySelector.java | 7 +- jdk/src/share/classes/sun/nio/ch/Util.java | 13 ++-- .../security/action/LoadLibraryAction.java | 70 ------------------- .../security/krb5/SCDynamicStoreConfig.java | 8 ++- .../sun/security/smartcardio/PCSC.java | 2 - .../share/classes/sun/tracing/dtrace/JVM.java | 9 ++- .../sun/management/FileSystemImpl.java | 9 ++- .../net/dns/ResolverConfigurationImpl.java | 7 +- .../sun/nio/ch/sctp/SctpChannelImpl.java | 7 +- .../sun/nio/ch/sctp/SctpMultiChannelImpl.java | 7 +- .../nio/ch/sctp/SctpServerChannelImpl.java | 7 +- .../classes/sun/print/CUPSPrinter.java | 7 +- .../awt/shell/Win32ShellFolderManager2.java | 10 ++- .../classes/sun/awt/windows/WToolkit.java | 7 +- .../sun/management/FileSystemImpl.java | 9 ++- .../net/dns/ResolverConfigurationImpl.java | 7 +- .../sun/print/Win32PrintServiceLookup.java | 7 +- .../security/smartcardio/PlatformPCSC.java | 10 ++- 49 files changed, 323 insertions(+), 153 deletions(-) delete mode 100644 jdk/src/share/classes/sun/security/action/LoadLibraryAction.java diff --git a/jdk/src/macosx/classes/apple/launcher/JavaAppLauncher.java b/jdk/src/macosx/classes/apple/launcher/JavaAppLauncher.java index 599a575f311..486a46266bf 100644 --- a/jdk/src/macosx/classes/apple/launcher/JavaAppLauncher.java +++ b/jdk/src/macosx/classes/apple/launcher/JavaAppLauncher.java @@ -27,7 +27,6 @@ package apple.launcher; import java.io.*; import java.lang.reflect.*; -import java.security.PrivilegedAction; import java.text.MessageFormat; import java.util.*; import java.util.jar.*; @@ -36,7 +35,13 @@ import javax.swing.*; class JavaAppLauncher implements Runnable { static { - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("osx")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osx"); + return null; + } + }); } private static native <T> T nativeConvertAndRelease(final long ptr); diff --git a/jdk/src/macosx/classes/apple/security/KeychainStore.java b/jdk/src/macosx/classes/apple/security/KeychainStore.java index 62919436a57..e8eb55315d3 100644 --- a/jdk/src/macosx/classes/apple/security/KeychainStore.java +++ b/jdk/src/macosx/classes/apple/security/KeychainStore.java @@ -103,7 +103,13 @@ public final class KeychainStore extends KeyStoreSpi { private static final int SALT_LEN = 20; static { - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("osx")); + AccessController.doPrivileged( + new PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osx"); + return null; + } + }); try { PKCS8ShroudedKeyBag_OID = new ObjectIdentifier(keyBag); pbeWithSHAAnd3KeyTripleDESCBC_OID = new ObjectIdentifier(pbeWithSHAAnd3KeyTripleDESCBC); diff --git a/jdk/src/macosx/classes/com/apple/concurrent/LibDispatchNative.java b/jdk/src/macosx/classes/com/apple/concurrent/LibDispatchNative.java index 470027fc69e..7e190b3cc01 100644 --- a/jdk/src/macosx/classes/com/apple/concurrent/LibDispatchNative.java +++ b/jdk/src/macosx/classes/com/apple/concurrent/LibDispatchNative.java @@ -26,17 +26,23 @@ package com.apple.concurrent; final class LibDispatchNative { - static { - java.security.AccessController.doPrivileged((java.security.PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("osx")); - } + static { + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osx"); + return null; + } + }); + } - static native boolean nativeIsDispatchSupported(); - static native long nativeGetMainQueue(); - static native long nativeCreateConcurrentQueue(int priority); - static native long nativeCreateSerialQueue(String name); - static native void nativeReleaseQueue(long nativeQueue); - static native void nativeExecuteAsync(long nativeQueue, Runnable task); - static native void nativeExecuteSync(long nativeQueue, Runnable task); + static native boolean nativeIsDispatchSupported(); + static native long nativeGetMainQueue(); + static native long nativeCreateConcurrentQueue(int priority); + static native long nativeCreateSerialQueue(String name); + static native void nativeReleaseQueue(long nativeQueue); + static native void nativeExecuteAsync(long nativeQueue, Runnable task); + static native void nativeExecuteSync(long nativeQueue, Runnable task); - private LibDispatchNative() { } + private LibDispatchNative() { } } diff --git a/jdk/src/macosx/classes/com/apple/eawt/Application.java b/jdk/src/macosx/classes/com/apple/eawt/Application.java index f4657d622f2..e761a5ad0aa 100644 --- a/jdk/src/macosx/classes/com/apple/eawt/Application.java +++ b/jdk/src/macosx/classes/com/apple/eawt/Application.java @@ -28,7 +28,6 @@ package com.apple.eawt; import java.awt.*; import java.awt.peer.*; import java.beans.Beans; -import java.security.PrivilegedAction; import javax.swing.JMenuBar; @@ -59,7 +58,13 @@ public class Application { static Application sApplication = null; static { - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("awt")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); checkSecurity(); if (!Beans.isDesignTime()) { diff --git a/jdk/src/macosx/classes/com/apple/eio/FileManager.java b/jdk/src/macosx/classes/com/apple/eio/FileManager.java index 12eb47a2a5b..1c421832600 100644 --- a/jdk/src/macosx/classes/com/apple/eio/FileManager.java +++ b/jdk/src/macosx/classes/com/apple/eio/FileManager.java @@ -55,7 +55,13 @@ import java.io.*; */ public class FileManager { static { - java.security.AccessController.doPrivileged((java.security.PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("osx")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osx"); + return null; + } + }); } /** diff --git a/jdk/src/macosx/classes/com/apple/laf/AquaFileView.java b/jdk/src/macosx/classes/com/apple/laf/AquaFileView.java index 258b10baf6d..6f09963ce0f 100644 --- a/jdk/src/macosx/classes/com/apple/laf/AquaFileView.java +++ b/jdk/src/macosx/classes/com/apple/laf/AquaFileView.java @@ -26,7 +26,6 @@ package com.apple.laf; import java.io.*; -import java.security.PrivilegedAction; import java.util.*; import java.util.Map.Entry; @@ -57,7 +56,13 @@ class AquaFileView extends FileView { static final int kLSItemInfoExtensionIsHidden = 0x00100000; /* Item has a hidden extension*/ static { - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("osxui")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osxui"); + return null; + } + }); } // TODO: Un-comment this out when the native version exists diff --git a/jdk/src/macosx/classes/com/apple/laf/AquaLookAndFeel.java b/jdk/src/macosx/classes/com/apple/laf/AquaLookAndFeel.java index f95de47fd15..c7d970c13fd 100644 --- a/jdk/src/macosx/classes/com/apple/laf/AquaLookAndFeel.java +++ b/jdk/src/macosx/classes/com/apple/laf/AquaLookAndFeel.java @@ -134,10 +134,16 @@ public class AquaLookAndFeel extends BasicLookAndFeel { * @see UIManager#setLookAndFeel */ public void initialize() { - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("osxui")); - java.security.AccessController.doPrivileged(new PrivilegedAction<Object>(){ + java.security.AccessController.doPrivileged(new PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osxui"); + return null; + } + }); + + java.security.AccessController.doPrivileged(new PrivilegedAction<Void>(){ @Override - public Object run() { + public Void run() { JRSUIControl.initJRSUI(); return null; } diff --git a/jdk/src/macosx/classes/com/apple/laf/AquaNativeResources.java b/jdk/src/macosx/classes/com/apple/laf/AquaNativeResources.java index 5a227d9f31e..8923a03a29c 100644 --- a/jdk/src/macosx/classes/com/apple/laf/AquaNativeResources.java +++ b/jdk/src/macosx/classes/com/apple/laf/AquaNativeResources.java @@ -27,7 +27,6 @@ package com.apple.laf; import java.awt.*; import java.awt.image.BufferedImage; -import java.security.PrivilegedAction; import javax.swing.plaf.UIResource; @@ -35,7 +34,13 @@ import com.apple.laf.AquaUtils.RecyclableSingleton; public class AquaNativeResources { static { - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("osxui")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osxui"); + return null; + } + }); } // TODO: removing CColorPaint for now diff --git a/jdk/src/macosx/classes/com/apple/laf/ScreenMenu.java b/jdk/src/macosx/classes/com/apple/laf/ScreenMenu.java index ec4c3f7ee6e..23c55c8d2a1 100644 --- a/jdk/src/macosx/classes/com/apple/laf/ScreenMenu.java +++ b/jdk/src/macosx/classes/com/apple/laf/ScreenMenu.java @@ -28,7 +28,6 @@ package com.apple.laf; import java.awt.*; import java.awt.event.*; import java.awt.peer.MenuComponentPeer; -import java.security.PrivilegedAction; import java.util.Hashtable; import javax.swing.*; @@ -38,7 +37,13 @@ import sun.lwawt.macosx.*; class ScreenMenu extends Menu implements ContainerListener, ComponentListener, ScreenMenuPropertyHandler { static { - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("awt")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); } // screen menu stuff diff --git a/jdk/src/macosx/classes/com/apple/laf/ScreenPopupFactory.java b/jdk/src/macosx/classes/com/apple/laf/ScreenPopupFactory.java index 6993d4f17b9..c3a09f03a62 100644 --- a/jdk/src/macosx/classes/com/apple/laf/ScreenPopupFactory.java +++ b/jdk/src/macosx/classes/com/apple/laf/ScreenPopupFactory.java @@ -26,15 +26,19 @@ package com.apple.laf; import java.awt.*; -import java.security.PrivilegedAction; - import javax.swing.*; import sun.lwawt.macosx.CPlatformWindow; class ScreenPopupFactory extends PopupFactory { static { - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("osxui")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osxui"); + return null; + } + }); } static final Float TRANSLUCENT = new Float(248f/255f); diff --git a/jdk/src/macosx/classes/java/util/prefs/MacOSXPreferencesFile.java b/jdk/src/macosx/classes/java/util/prefs/MacOSXPreferencesFile.java index 7cfb899ddf4..992ae620338 100644 --- a/jdk/src/macosx/classes/java/util/prefs/MacOSXPreferencesFile.java +++ b/jdk/src/macosx/classes/java/util/prefs/MacOSXPreferencesFile.java @@ -79,7 +79,13 @@ import java.lang.ref.WeakReference; class MacOSXPreferencesFile { static { - java.security.AccessController.doPrivileged(new sun.security.action.LoadLibraryAction("osx")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osx"); + return null; + } + }); } private class FlushTask extends TimerTask { diff --git a/jdk/src/macosx/classes/sun/awt/CGraphicsEnvironment.java b/jdk/src/macosx/classes/sun/awt/CGraphicsEnvironment.java index b8c244b4260..8a647d1de36 100644 --- a/jdk/src/macosx/classes/sun/awt/CGraphicsEnvironment.java +++ b/jdk/src/macosx/classes/sun/awt/CGraphicsEnvironment.java @@ -58,9 +58,15 @@ public class CGraphicsEnvironment extends SunGraphicsEnvironment { public static void init() { } static { - java.security.AccessController.doPrivileged(new sun.security.action.LoadLibraryAction("awt")); - java.security.AccessController.doPrivileged(new java.security.PrivilegedAction<Object>() { - public Object run() { + java.security.AccessController.doPrivileged(new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); + + java.security.AccessController.doPrivileged(new java.security.PrivilegedAction<Void>() { + public Void run() { if (isHeadless()) return null; initCocoa(); return null; diff --git a/jdk/src/macosx/classes/sun/lwawt/macosx/CAccessibility.java b/jdk/src/macosx/classes/sun/lwawt/macosx/CAccessibility.java index a1d535ec818..97c5ef9e2c6 100644 --- a/jdk/src/macosx/classes/sun/lwawt/macosx/CAccessibility.java +++ b/jdk/src/macosx/classes/sun/lwawt/macosx/CAccessibility.java @@ -29,7 +29,6 @@ import java.awt.*; import java.beans.*; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; -import java.security.PrivilegedAction; import java.util.*; import java.util.concurrent.Callable; @@ -41,7 +40,13 @@ class CAccessibility implements PropertyChangeListener { static { // Need to load the native library for this code. - java.security.AccessController.doPrivileged((PrivilegedAction<?>)new sun.security.action.LoadLibraryAction("awt")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); } static CAccessibility sAccessibility; diff --git a/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java b/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java index 3df7048ab32..efff47adcbd 100644 --- a/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java +++ b/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java @@ -87,7 +87,12 @@ public class JPEGImageReader extends ImageReader { static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("jpeg")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("jpeg"); + return null; + } + }); initReaderIDs(ImageInputStream.class, JPEGQTable.class, JPEGHuffmanTable.class); diff --git a/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java b/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java index 58e3192ec78..15e6d815b18 100644 --- a/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java +++ b/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java @@ -177,7 +177,12 @@ public class JPEGImageWriter extends ImageWriter { static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("jpeg")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("jpeg"); + return null; + } + }); initWriterIDs(ImageOutputStream.class, JPEGQTable.class, JPEGHuffmanTable.class); diff --git a/jdk/src/share/classes/com/sun/java/util/jar/pack/NativeUnpack.java b/jdk/src/share/classes/com/sun/java/util/jar/pack/NativeUnpack.java index c097f9eb846..7e525729034 100644 --- a/jdk/src/share/classes/com/sun/java/util/jar/pack/NativeUnpack.java +++ b/jdk/src/share/classes/com/sun/java/util/jar/pack/NativeUnpack.java @@ -87,7 +87,12 @@ class NativeUnpack { // If loading from stand alone build uncomment this. // System.loadLibrary("unpack"); java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("unpack")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("unpack"); + return null; + } + }); initIDs(); } diff --git a/jdk/src/share/classes/java/awt/SplashScreen.java b/jdk/src/share/classes/java/awt/SplashScreen.java index 867ecb330c5..f9d3af15e13 100644 --- a/jdk/src/share/classes/java/awt/SplashScreen.java +++ b/jdk/src/share/classes/java/awt/SplashScreen.java @@ -119,7 +119,12 @@ public final class SplashScreen { // SplashScreen class is now a singleton if (!wasClosed && theInstance == null) { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("splashscreen")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("splashscreen"); + return null; + } + }); long ptr = _getInstance(); if (ptr != 0 && _isVisible(ptr)) { theInstance = new SplashScreen(ptr); diff --git a/jdk/src/share/classes/java/awt/Toolkit.java b/jdk/src/share/classes/java/awt/Toolkit.java index d9f8cf07efb..8509534734c 100644 --- a/jdk/src/share/classes/java/awt/Toolkit.java +++ b/jdk/src/share/classes/java/awt/Toolkit.java @@ -1646,7 +1646,12 @@ public abstract class Toolkit { static void loadLibraries() { if (!loaded) { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("awt")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); loaded = true; } } diff --git a/jdk/src/share/classes/java/awt/event/NativeLibLoader.java b/jdk/src/share/classes/java/awt/event/NativeLibLoader.java index 1d702287a27..4336669312d 100644 --- a/jdk/src/share/classes/java/awt/event/NativeLibLoader.java +++ b/jdk/src/share/classes/java/awt/event/NativeLibLoader.java @@ -54,6 +54,11 @@ class NativeLibLoader { */ static void loadLibraries() { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("awt")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); } } diff --git a/jdk/src/share/classes/java/awt/image/ColorModel.java b/jdk/src/share/classes/java/awt/image/ColorModel.java index 010fc53829a..5ce313e1bf3 100644 --- a/jdk/src/share/classes/java/awt/image/ColorModel.java +++ b/jdk/src/share/classes/java/awt/image/ColorModel.java @@ -204,7 +204,12 @@ public abstract class ColorModel implements Transparency{ static void loadLibraries() { if (!loaded) { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("awt")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); loaded = true; } } diff --git a/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java b/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java index 3b9f531c08d..32d1e709475 100644 --- a/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java +++ b/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java @@ -67,7 +67,12 @@ abstract class AbstractPlainDatagramSocketImpl extends DatagramSocketImpl */ static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("net")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); } /** diff --git a/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java b/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java index c510c6179fd..e3373e821b0 100644 --- a/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java +++ b/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java @@ -78,7 +78,12 @@ abstract class AbstractPlainSocketImpl extends SocketImpl */ static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("net")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); } /** diff --git a/jdk/src/share/classes/java/net/DatagramPacket.java b/jdk/src/share/classes/java/net/DatagramPacket.java index 195ee8603fc..910fed66cbf 100644 --- a/jdk/src/share/classes/java/net/DatagramPacket.java +++ b/jdk/src/share/classes/java/net/DatagramPacket.java @@ -47,7 +47,12 @@ class DatagramPacket { */ static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("net")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); init(); } diff --git a/jdk/src/share/classes/java/net/InetAddress.java b/jdk/src/share/classes/java/net/InetAddress.java index d927d160a68..cfeac4a4e19 100644 --- a/jdk/src/share/classes/java/net/InetAddress.java +++ b/jdk/src/share/classes/java/net/InetAddress.java @@ -234,7 +234,13 @@ class InetAddress implements java.io.Serializable { static { preferIPv6Address = java.security.AccessController.doPrivileged( new GetBooleanAction("java.net.preferIPv6Addresses")).booleanValue(); - AccessController.doPrivileged(new LoadLibraryAction("net")); + AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); init(); } diff --git a/jdk/src/share/classes/java/net/NetworkInterface.java b/jdk/src/share/classes/java/net/NetworkInterface.java index 6314d15c18f..b6cd711bb1b 100644 --- a/jdk/src/share/classes/java/net/NetworkInterface.java +++ b/jdk/src/share/classes/java/net/NetworkInterface.java @@ -53,7 +53,14 @@ public final class NetworkInterface { private static final int defaultIndex; /* index of defaultInterface */ static { - AccessController.doPrivileged(new LoadLibraryAction("net")); + AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); + init(); defaultInterface = DefaultInterface.getDefault(); if (defaultInterface != null) { diff --git a/jdk/src/share/classes/sun/awt/NativeLibLoader.java b/jdk/src/share/classes/sun/awt/NativeLibLoader.java index ee9f695b6eb..32a31b9cb49 100644 --- a/jdk/src/share/classes/sun/awt/NativeLibLoader.java +++ b/jdk/src/share/classes/sun/awt/NativeLibLoader.java @@ -54,6 +54,11 @@ class NativeLibLoader { */ static void loadLibraries() { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("awt")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); } } diff --git a/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java b/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java index 72ac1d06a70..c971b414ae1 100644 --- a/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java +++ b/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java @@ -54,7 +54,12 @@ public class JPEGImageDecoder extends ImageDecoder { static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("jpeg")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("jpeg"); + return null; + } + }); initIDs(InputStreamClass); RGBcolormodel = new DirectColorModel(24, 0xff0000, 0xff00, 0xff); ARGBcolormodel = ColorModel.getRGBdefault(); diff --git a/jdk/src/share/classes/sun/awt/image/NativeLibLoader.java b/jdk/src/share/classes/sun/awt/image/NativeLibLoader.java index 5c6a765c414..d713d79b5c0 100644 --- a/jdk/src/share/classes/sun/awt/image/NativeLibLoader.java +++ b/jdk/src/share/classes/sun/awt/image/NativeLibLoader.java @@ -53,7 +53,12 @@ class NativeLibLoader { * that the name of the library is "awt". -br. */ static void loadLibraries() { - java.security.AccessController.doPrivileged - (new sun.security.action.LoadLibraryAction("awt")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); } } diff --git a/jdk/src/share/classes/sun/java2d/Disposer.java b/jdk/src/share/classes/sun/java2d/Disposer.java index 83951023fbb..dcedfe3846e 100644 --- a/jdk/src/share/classes/sun/java2d/Disposer.java +++ b/jdk/src/share/classes/sun/java2d/Disposer.java @@ -57,7 +57,12 @@ public class Disposer implements Runnable { static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("awt")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); initIDs(); String type = (String) java.security.AccessController.doPrivileged( new sun.security.action.GetPropertyAction("sun.java2d.reftype")); diff --git a/jdk/src/share/classes/sun/management/ManagementFactoryHelper.java b/jdk/src/share/classes/sun/management/ManagementFactoryHelper.java index 025b7a26d64..bd1cd2581e7 100644 --- a/jdk/src/share/classes/sun/management/ManagementFactoryHelper.java +++ b/jdk/src/share/classes/sun/management/ManagementFactoryHelper.java @@ -37,7 +37,6 @@ import javax.management.RuntimeOperationsException; import java.security.AccessController; import java.security.PrivilegedActionException; import java.security.PrivilegedExceptionAction; -import sun.security.action.LoadLibraryAction; import sun.util.logging.LoggingSupport; @@ -422,7 +421,13 @@ public class ManagementFactoryHelper { } static { - AccessController.doPrivileged(new LoadLibraryAction("management")); + AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("management"); + return null; + } + }); jvm = new VMManagementImpl(); } diff --git a/jdk/src/share/classes/sun/net/sdp/SdpSupport.java b/jdk/src/share/classes/sun/net/sdp/SdpSupport.java index 5baca6e4925..b70a729cc56 100644 --- a/jdk/src/share/classes/sun/net/sdp/SdpSupport.java +++ b/jdk/src/share/classes/sun/net/sdp/SdpSupport.java @@ -76,6 +76,11 @@ public final class SdpSupport { static { AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("net")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); } } diff --git a/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java b/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java index d7aa358d596..23c1338e8f1 100644 --- a/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java +++ b/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java @@ -95,7 +95,12 @@ public class DefaultProxySelector extends ProxySelector { }}); if (b != null && b.booleanValue()) { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("net")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); hasSystemProxies = init(); } } diff --git a/jdk/src/share/classes/sun/nio/ch/Util.java b/jdk/src/share/classes/sun/nio/ch/Util.java index 56aa1f65e39..985f7ffefe5 100644 --- a/jdk/src/share/classes/sun/nio/ch/Util.java +++ b/jdk/src/share/classes/sun/nio/ch/Util.java @@ -472,10 +472,15 @@ public class Util { if (loaded) return; loaded = true; - java.security.AccessController - .doPrivileged(new sun.security.action.LoadLibraryAction("net")); - java.security.AccessController - .doPrivileged(new sun.security.action.LoadLibraryAction("nio")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + System.loadLibrary("nio"); + return null; + } + }); + // IOUtil must be initialized; Its native methods are called from // other places in native nio code so they must be set up. IOUtil.initIDs(); diff --git a/jdk/src/share/classes/sun/security/action/LoadLibraryAction.java b/jdk/src/share/classes/sun/security/action/LoadLibraryAction.java deleted file mode 100644 index c3510151438..00000000000 --- a/jdk/src/share/classes/sun/security/action/LoadLibraryAction.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Oracle designates this - * particular file as subject to the "Classpath" exception as provided - * by Oracle in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - */ - -package sun.security.action; - -/** - * A convenience class for loading a system library as a privileged action. - * - * <p>An instance of this class can be used as the argument of - * <code>AccessController.doPrivileged</code>. - * - * <p>The following code attempts to load the system library named - * <code>"lib"</code> as a privileged action: <p> - * - * <pre> - * java.security.AccessController.doPrivileged(new LoadLibraryAction("lib")); - * </pre> - * - * @author Roland Schemers - * @see java.security.PrivilegedAction - * @see java.security.AccessController - * @since 1.2 - */ - -public class LoadLibraryAction implements java.security.PrivilegedAction<Void> { - private String theLib; - - /** - * Constructor that takes the name of the system library that needs to be - * loaded. - * - * <p>The manner in which a library name is mapped to the - * actual system library is system dependent. - * - * @param theLib the name of the library. - */ - public LoadLibraryAction(String theLib) { - this.theLib = theLib; - } - - /** - * Loads the system library whose name was specified in the constructor. - */ - public Void run() { - System.loadLibrary(theLib); - return null; - } -} diff --git a/jdk/src/share/classes/sun/security/krb5/SCDynamicStoreConfig.java b/jdk/src/share/classes/sun/security/krb5/SCDynamicStoreConfig.java index d4b51f88ad9..c6e5e70a94b 100644 --- a/jdk/src/share/classes/sun/security/krb5/SCDynamicStoreConfig.java +++ b/jdk/src/share/classes/sun/security/krb5/SCDynamicStoreConfig.java @@ -36,7 +36,13 @@ public class SCDynamicStoreConfig { private static native Hashtable<String, Object> getKerberosConfig(); static { - java.security.AccessController.doPrivileged(new sun.security.action.LoadLibraryAction("osx")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("osx"); + return null; + } + }); installNotificationCallback(); } diff --git a/jdk/src/share/classes/sun/security/smartcardio/PCSC.java b/jdk/src/share/classes/sun/security/smartcardio/PCSC.java index e9e98d9f659..c1ebe4c7b3e 100644 --- a/jdk/src/share/classes/sun/security/smartcardio/PCSC.java +++ b/jdk/src/share/classes/sun/security/smartcardio/PCSC.java @@ -27,8 +27,6 @@ package sun.security.smartcardio; import java.security.AccessController; -import sun.security.action.LoadLibraryAction; - /** * Access to native PC/SC functions and definition of PC/SC constants. * Initialization and platform specific PC/SC constants are handled in diff --git a/jdk/src/share/classes/sun/tracing/dtrace/JVM.java b/jdk/src/share/classes/sun/tracing/dtrace/JVM.java index 2bea9740c09..c59ce68cb3c 100644 --- a/jdk/src/share/classes/sun/tracing/dtrace/JVM.java +++ b/jdk/src/share/classes/sun/tracing/dtrace/JVM.java @@ -35,8 +35,13 @@ import java.lang.reflect.Method; class JVM { static { - java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("jsdt")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("jsdt"); + return null; + } + }); } static long activate(String moduleName, DTraceProvider[] providers) { diff --git a/jdk/src/solaris/classes/sun/management/FileSystemImpl.java b/jdk/src/solaris/classes/sun/management/FileSystemImpl.java index 2961eca36af..67445c58d4e 100644 --- a/jdk/src/solaris/classes/sun/management/FileSystemImpl.java +++ b/jdk/src/solaris/classes/sun/management/FileSystemImpl.java @@ -48,7 +48,12 @@ public class FileSystemImpl extends FileSystem { // Initialization static { - java.security.AccessController - .doPrivileged(new sun.security.action.LoadLibraryAction("management")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("management"); + return null; + } + }); } } diff --git a/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java b/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java index 66430d40495..670a675d95c 100644 --- a/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java +++ b/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java @@ -251,7 +251,12 @@ public class ResolverConfigurationImpl static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("net")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); } } diff --git a/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpChannelImpl.java b/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpChannelImpl.java index 25afcff2695..92f17cb3e8b 100644 --- a/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpChannelImpl.java +++ b/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpChannelImpl.java @@ -1100,7 +1100,12 @@ public class SctpChannelImpl extends SctpChannel static { Util.load(); /* loads nio & net native libraries */ java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("sctp")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("sctp"); + return null; + } + }); initIDs(); } } diff --git a/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpMultiChannelImpl.java b/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpMultiChannelImpl.java index e00247f3970..fa44072f4dc 100644 --- a/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpMultiChannelImpl.java +++ b/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpMultiChannelImpl.java @@ -989,6 +989,11 @@ public class SctpMultiChannelImpl extends SctpMultiChannel static { Util.load(); /* loads nio & net native libraries */ java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("sctp")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("sctp"); + return null; + } + }); } } diff --git a/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpServerChannelImpl.java b/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpServerChannelImpl.java index 15d281bd309..e5d5a892bd7 100644 --- a/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpServerChannelImpl.java +++ b/jdk/src/solaris/classes/sun/nio/ch/sctp/SctpServerChannelImpl.java @@ -428,7 +428,12 @@ public class SctpServerChannelImpl extends SctpServerChannel static { Util.load(); // loads nio & net native libraries java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("sctp")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("sctp"); + return null; + } + }); initIDs(); } } diff --git a/jdk/src/solaris/classes/sun/print/CUPSPrinter.java b/jdk/src/solaris/classes/sun/print/CUPSPrinter.java index 9648488b166..c64ea8b1122 100644 --- a/jdk/src/solaris/classes/sun/print/CUPSPrinter.java +++ b/jdk/src/solaris/classes/sun/print/CUPSPrinter.java @@ -77,7 +77,12 @@ public class CUPSPrinter { static { // load awt library to access native code java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("awt")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); libFound = initIDs(); if (libFound) { cupsServer = getCupsServer(); diff --git a/jdk/src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java b/jdk/src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java index 5d34d4fffe6..7e23874e0dd 100644 --- a/jdk/src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java +++ b/jdk/src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java @@ -37,8 +37,6 @@ import java.util.*; import java.util.List; import java.util.concurrent.*; -import sun.security.action.LoadLibraryAction; - import static sun.awt.shell.Win32ShellFolder2.*; import sun.awt.OSInfo; @@ -56,7 +54,13 @@ public class Win32ShellFolderManager2 extends ShellFolderManager { static { // Load library here - AccessController.doPrivileged(new LoadLibraryAction("awt")); + AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); } public ShellFolder createShellFolder(File file) throws FileNotFoundException { diff --git a/jdk/src/windows/classes/sun/awt/windows/WToolkit.java b/jdk/src/windows/classes/sun/awt/windows/WToolkit.java index 0c0cdd47aa7..515a8230bf3 100644 --- a/jdk/src/windows/classes/sun/awt/windows/WToolkit.java +++ b/jdk/src/windows/classes/sun/awt/windows/WToolkit.java @@ -94,7 +94,12 @@ public class WToolkit extends SunToolkit implements Runnable { public static void loadLibraries() { if (!loaded) { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("awt")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); loaded = true; } } diff --git a/jdk/src/windows/classes/sun/management/FileSystemImpl.java b/jdk/src/windows/classes/sun/management/FileSystemImpl.java index 71fdaf2d297..789b7ee64ee 100644 --- a/jdk/src/windows/classes/sun/management/FileSystemImpl.java +++ b/jdk/src/windows/classes/sun/management/FileSystemImpl.java @@ -56,8 +56,13 @@ public class FileSystemImpl extends FileSystem { // Initialization static { - java.security.AccessController - .doPrivileged(new sun.security.action.LoadLibraryAction("management")); + java.security.AccessController.doPrivileged( + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("management"); + return null; + } + }); init0(); } } diff --git a/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java b/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java index eb7405de9d3..b896fbf6344 100644 --- a/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java +++ b/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java @@ -161,7 +161,12 @@ public class ResolverConfigurationImpl static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("net")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("net"); + return null; + } + }); init0(); // start the address listener thread diff --git a/jdk/src/windows/classes/sun/print/Win32PrintServiceLookup.java b/jdk/src/windows/classes/sun/print/Win32PrintServiceLookup.java index 899ef23e461..dc9e9ee1b27 100644 --- a/jdk/src/windows/classes/sun/print/Win32PrintServiceLookup.java +++ b/jdk/src/windows/classes/sun/print/Win32PrintServiceLookup.java @@ -56,7 +56,12 @@ public class Win32PrintServiceLookup extends PrintServiceLookup { static { java.security.AccessController.doPrivileged( - new sun.security.action.LoadLibraryAction("awt")); + new java.security.PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("awt"); + return null; + } + }); } /* The singleton win32 print lookup service. diff --git a/jdk/src/windows/classes/sun/security/smartcardio/PlatformPCSC.java b/jdk/src/windows/classes/sun/security/smartcardio/PlatformPCSC.java index ea6e2fcd72b..0af23c0ddde 100644 --- a/jdk/src/windows/classes/sun/security/smartcardio/PlatformPCSC.java +++ b/jdk/src/windows/classes/sun/security/smartcardio/PlatformPCSC.java @@ -26,8 +26,7 @@ package sun.security.smartcardio; import java.security.AccessController; - -import sun.security.action.LoadLibraryAction; +import java.security.PrivilegedAction; // Platform specific code and constants class PlatformPCSC { @@ -44,7 +43,12 @@ class PlatformPCSC { private static Throwable loadLibrary() { try { - AccessController.doPrivileged(new LoadLibraryAction("j2pcsc")); + AccessController.doPrivileged(new PrivilegedAction<Void>() { + public Void run() { + System.loadLibrary("j2pcsc"); + return null; + } + }); return null; } catch (Throwable e) { return e;