Author: alesj
Date: 2009-11-19 18:12:27 -0500 (Thu, 19 Nov 2009)
New Revision: 96603
Modified:
projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiServiceState.java
Log:
Check permission for getCL.
Modified:
projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiServiceState.java
===================================================================
---
projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiServiceState.java 2009-11-19
23:08:37 UTC (rev 96602)
+++
projects/jboss-osgi/trunk/reactor/framework/src/main/java/org/jboss/osgi/framework/bundle/OSGiServiceState.java 2009-11-19
23:12:27 UTC (rev 96603)
@@ -67,6 +67,9 @@
/** The log */
private static final Logger log = Logger.getLogger(OSGiServiceState.class);
+ /** The get classloader permission */
+ private static final RuntimePermission GET_CLASSLOADER_PERMISSION = new
RuntimePermission("getClassLoader");
+
/** Used to generate a unique id */
private static final AtomicLong serviceIDGenerator = new AtomicLong();
@@ -216,6 +219,10 @@
public ClassLoader getClassLoader() throws Throwable
{
+ SecurityManager sm = System.getSecurityManager();
+ if (sm != null)
+ sm.checkPermission(GET_CLASSLOADER_PERMISSION);
+
return BundleClassLoader.createClassLoader(getBundle());
}