Permission Analysis Report


Analysis of: org.eclipse.osgi

Detail


Class: org.eclipse.osgi.framework.launcher.Launcher (Application)
DoPrivileged location: Line# 341 void doConsole( org.eclipse.osgi.framework.internal.core.OSGi, java.lang.String[] )
   Permission: java.lang.RuntimePermission "modifyThread"
      Primordial/void java.lang.Thread.Thread( java.lang.Runnable, java.lang.String )


CODE
/** * Invokes the OSGi Console on another thread * * @param osgi The current OSGi instance for the console to attach to * @param consoleArgs An String array containing commands from the command line * for the console to execute */ private void doConsole(OSGi osgi, String[] consoleArgs) { Constructor consoleConstructor; Object osgiconsole; Class[] parameterTypes; Object[] parameters; try { Class osgiconsoleClass = Class.forName(osgiConsoleClazz); if (consolePort.length() == 0) { parameterTypes = new Class[] {OSGi.class, String[].class}; parameters = new Object[] {osgi, consoleArgs}; } else { parameterTypes = new Class[] {OSGi.class, int.class, String[].class}; parameters = new Object[] {osgi, new Integer(consolePort), consoleArgs}; } consoleConstructor = osgiconsoleClass.getConstructor(parameterTypes); osgiconsole = consoleConstructor.newInstance(parameters); Thread t = new Thread(((Runnable) osgiconsole), OSGI_CONSOLE_COMPONENT_NAME); t.start(); } catch (NumberFormatException nfe) { System.err.println(NLS.bind(Msg.LAUNCHER_INVALID_PORT, consolePort)); //$NON-NLS-1$ } catch (Exception ex) { informAboutMissingComponent(OSGI_CONSOLE_COMPONENT_NAME, OSGI_CONSOLE_COMPONENT); } }
Tainted variable reference trace:

Permission Requirements:



Conclusion: