Permission Analysis Report


Analysis of: org.eclipse.osgi

Detail


Class: org.eclipse.osgi.framework.internal.core.FrameworkCommandProvider (Application)
DoPrivileged location: Line# 1081 void _close( org.eclipse.osgi.framework.console.CommandInterpreter )
   Permission: java.lang.RuntimePermission "exitVM"
      Primordial/void java.lang.System.exit( int )


CODE
/** * Handle the close command. Shutdown and exit. * * @param intp A CommandInterpreter object containing the command and it's arguments. */ public void _close(CommandInterpreter intp) throws Exception { intp.println(); osgi.close(); System.exit(0); }
Tainted variable reference trace:

Permission Requirements:



Conclusion:


DoPrivileged location: Line# 1152 void _exec( org.eclipse.osgi.framework.console.CommandInterpreter ) Permission: java.io.FilePermission "<>", "execute" Primordial/java.lang.Process java.lang.Runtime.exec( java.lang.String ) Permission: java.io.FilePermission "???file???", "execute" Primordial/java.lang.Process java.lang.Runtime.exec( java.lang.String )

CODE
/** * Executes the given system command in a separate system process * and waits for it to finish. * * @param intp A CommandInterpreter object containing the command and it's arguments. */ public void _exec(CommandInterpreter intp) throws Exception { String command = intp.nextArgument(); if (command == null) { intp.println(ConsoleMsg.CONSOLE_NO_COMMAND_SPECIFIED_ERROR); return; } Process p = Runtime.getRuntime().exec(command); intp.println(NLS.bind(ConsoleMsg.CONSOLE_STARTED_IN_MESSAGE, command, String.valueOf(p))); int result = p.waitFor(); intp.println(NLS.bind(ConsoleMsg.CONSOLE_EXECUTED_RESULT_CODE_MESSAGE, command, String.valueOf(result))); }
Tainted variable reference trace:

Permission Requirements:



Conclusion:


DoPrivileged location: Line# 189 void _exit( org.eclipse.osgi.framework.console.CommandInterpreter ) Permission: java.lang.RuntimePermission "exitVM" Primordial/void java.lang.System.exit( int )

CODE
/** * Handle the exit command. Exit immediately (System.exit) * * @param intp A CommandInterpreter object containing the command and it's arguments. */ public void _exit(CommandInterpreter intp) throws Exception { intp.println(); System.exit(0); }
Tainted variable reference trace:

Permission Requirements:



Conclusion:


DoPrivileged location: Line# 1171 void _fork( org.eclipse.osgi.framework.console.CommandInterpreter ) Permission: java.io.FilePermission "<>", "execute" Primordial/java.lang.Process java.lang.Runtime.exec( java.lang.String ) Permission: java.io.FilePermission "???file???", "execute" Primordial/java.lang.Process java.lang.Runtime.exec( java.lang.String )

CODE
/** * Executes the given system command in a separate system process. It does * not wait for a result. * * @param intp A CommandInterpreter object containing the command and it's arguments. */ public void _fork(CommandInterpreter intp) throws Exception { String command = intp.nextArgument(); if (command == null) { intp.println(ConsoleMsg.CONSOLE_NO_COMMAND_SPECIFIED_ERROR); return; } Process p = Runtime.getRuntime().exec(command); intp.println(NLS.bind(ConsoleMsg.CONSOLE_STARTED_IN_MESSAGE, command, String.valueOf(p))); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "<>", "execute";
  • permission java.io.FilePermission "???file???", "execute";


Conclusion:


DoPrivileged location: Line# 1217 void _props( org.eclipse.osgi.framework.console.CommandInterpreter ) Permission: java.util.PropertyPermission "*", "read,write" Primordial/java.util.Properties java.lang.System.getProperties( )

CODE
/** * Handles the _props command. Prints the system properties sorted. * * @param intp A CommandInterpreter object containing the command and it's arguments. */ public void _props(CommandInterpreter intp) throws Exception { intp.printDictionary(System.getProperties(), ConsoleMsg.CONSOLE_SYSTEM_PROPERTIES_TITLE); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "*", "read,write";


Conclusion:


DoPrivileged location: Line# 1241 void _setprop( org.eclipse.osgi.framework.console.CommandInterpreter ) Permission: java.util.PropertyPermission "*", "read,write" Primordial/java.util.Properties java.lang.System.getProperties( )

CODE
/** * Handles the setprop command. Sets the CDS property in the given argument. * * @param intp A CommandInterpreter object containing the command and it's arguments. */ public void _setprop(CommandInterpreter intp) throws Exception { String argument = intp.nextArgument(); if (argument == null) { intp.println(ConsoleMsg.CONSOLE_NO_PARAMETERS_SPECIFIED_TITLE); _props(intp); } else { InputStream in = new ByteArrayInputStream(argument.getBytes()); try { Properties sysprops = System.getProperties(); Properties newprops = new Properties(); newprops.load(in); intp.println(ConsoleMsg.CONSOLE_SETTING_PROPERTIES_TITLE); Enumeration keys = newprops.propertyNames(); while (keys.hasMoreElements()) { String key = (String) keys.nextElement(); String value = (String) newprops.get(key); sysprops.put(key, value); intp.println(tab + key + " = " + value); //$NON-NLS-1$ } } catch (IOException e) { // ignore } finally { try { in.close(); } catch (IOException e) { // ignore } } } }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "*", "read,write";


Conclusion:


DoPrivileged location: Line# 1243 void _setprop( org.eclipse.osgi.framework.console.CommandInterpreter ) Permission: java.util.PropertyPermission "java.vendor.url.bug", "read" Primordial/void java.util.Properties.load( java.io.InputStream ) Permission: java.util.PropertyPermission "os.name", "read" Primordial/void java.util.Properties.load( java.io.InputStream )

CODE
/** * Handles the setprop command. Sets the CDS property in the given argument. * * @param intp A CommandInterpreter object containing the command and it's arguments. */ public void _setprop(CommandInterpreter intp) throws Exception { String argument = intp.nextArgument(); if (argument == null) { intp.println(ConsoleMsg.CONSOLE_NO_PARAMETERS_SPECIFIED_TITLE); _props(intp); } else { InputStream in = new ByteArrayInputStream(argument.getBytes()); try { Properties sysprops = System.getProperties(); Properties newprops = new Properties(); newprops.load(in); intp.println(ConsoleMsg.CONSOLE_SETTING_PROPERTIES_TITLE); Enumeration keys = newprops.propertyNames(); while (keys.hasMoreElements()) { String key = (String) keys.nextElement(); String value = (String) newprops.get(key); sysprops.put(key, value); intp.println(tab + key + " = " + value); //$NON-NLS-1$ } } catch (IOException e) { // ignore } finally { try { in.close(); } catch (IOException e) { // ignore } } } }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "java.vendor.url.bug", "read";
  • permission java.util.PropertyPermission "os.name", "read";


Conclusion:


DoPrivileged location: Line# 348 void _update( org.eclipse.osgi.framework.console.CommandInterpreter ) Permission: java.io.FilePermission "", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "*", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "*", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "*", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-1", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-1", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-1", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-2", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-2", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-2", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-2147483648", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-2147483648", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-2147483648", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-3", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-3", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-3", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-9223372036854775808", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-9223372036854775808", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "-9223372036854775808", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".bundledata", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".default", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".fileTable", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".fileTableLock", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".fileTableLock", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".fileTableLock", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".manager", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".manager", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".manager", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".metadata/.lock", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".metadata/.lock", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission ".metadata/.lock", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "0", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "0", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "0", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "1", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "1", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "1", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "1.3", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "1.3", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "1.3", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "10", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "10", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "10", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "13", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "13", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "13", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "2", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "2", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "2", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "23", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "23", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "23", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "3", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "3", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "3", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "3.0.0", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "3.0.0", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "3.0.0", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "4", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "4", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "4", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "5", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "5", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "5", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "6", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "6", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "6", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "7", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "7", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "7", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "8", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "8", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "8", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "9", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "9", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "9", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "???file???", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "???file???", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "???file???", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "Eclipse", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "Eclipse", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "Eclipse", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "META-INF/MANIFEST.MF", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "META-INF/MANIFEST.MF", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "META-INF/MANIFEST.MF", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "No message available.", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "No message available.", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "No message available.", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "aix", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "aix", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "aix", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "bin", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "bin", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "bin", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "bundles", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "bundles", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "bundles", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "carbon", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "carbon", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "carbon", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "false", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "false", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "false", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "fragment.xml", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "fragment.xml", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "fragment.xml", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "hpux", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "hpux", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "hpux", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "linux", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "linux", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "linux", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "macosx", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "macosx", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "macosx", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "manifests", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "manifests", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "manifests", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "motif", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "motif", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "motif", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "org.eclipse.osgi", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "org.eclipse.osgi", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "org.eclipse.osgi", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "permdata", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "permdata", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "permdata", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "photon", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "photon", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "photon", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "plugin.xml", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "plugin.xml", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "plugin.xml", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "qnx", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "qnx", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "qnx", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "solaris", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "solaris", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "solaris", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "true", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "true", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "true", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "unknown", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "unknown", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "unknown", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "win32", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "win32", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "win32", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "x86", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "x86", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "x86", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "x86_64", "delete" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "x86_64", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.io.FilePermission "x86_64", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.lang.RuntimePermission "exitVM" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.lang.RuntimePermission "getClassLoader" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.lang.RuntimePermission "modifyThread" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.net.NetPermission "specifyStreamHandler" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.net.SocketPermission "???host???", "resolve" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.net.SocketPermission "???host???:???port???", "connect" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.net.SocketPermission "localhost", "resolve" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.net.SocketPermission "localhost:1024-", "resolve" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.net.SocketPermission "localhost:1024-:???port???", "connect" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.net.SocketPermission "localhost:???port???", "connect" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "*", "read,write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "eclipse.buildId", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "eclipse.consoleLog", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "eclipse.log.backup.max", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "eclipse.log.size.max", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "eclipse.startTime", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "java.fullversion", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "java.protocol.handler.pkgs", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "java.vendor", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "java.vendor.url.bug", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "java.version", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "launch.startMillis", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "os.arch", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "os.name", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.arch", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.debug", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.defaultprofile.buffersize", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.defaultprofile.logfilename", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.defaultprofile.logsynchronously", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.logfile", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.nl", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.os", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "osgi.ws", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/void java.net.URL.URL( java.lang.String ) Permission: java.util.PropertyPermission "user.language", "write" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "class" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "execute" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "extensionLifecycle" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "lifecycle" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "listener" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "metadata" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "resolve" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "resource" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.AdminPermission "", "startlevel" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.ServicePermission "", "" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.ServicePermission "", "get" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "get" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "" Primordial/void java.net.URL.URL( java.lang.String ) Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "get" Primordial/void java.net.URL.URL( java.lang.String )

CODE
/** * Handle the update command. Update the specified bundle(s). * * @param intp A CommandInterpreter object containing the command and it's arguments. */ public void _update(CommandInterpreter intp) throws Exception { String token = intp.nextArgument(); if (token == null) { intp.println(ConsoleMsg.CONSOLE_NO_BUNDLE_SPECIFIED_ERROR); } while (token != null) { if ("*".equals(token)) { //$NON-NLS-1$ AbstractBundle[] bundles = (AbstractBundle[]) context.getBundles(); int size = bundles.length; if (size > 0) { for (int i = 0; i < size; i++) { AbstractBundle bundle = bundles[i]; if (bundle.getBundleId() != 0) { try { bundle.update(); } catch (BundleException e) { intp.printStackTrace(e); } } } } else { intp.println(ConsoleMsg.CONSOLE_NO_INSTALLED_BUNDLES_ERROR); } } else { AbstractBundle bundle = getBundleFromToken(intp, token, true); if (bundle != null) { String source = intp.nextArgument(); try { if (source != null) { bundle.update(new URL(source).openStream()); } else { bundle.update(); } } catch (BundleException e) { intp.printStackTrace(e); } } } token = intp.nextArgument(); } }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "", "delete";
  • permission java.io.FilePermission "", "read";
  • permission java.io.FilePermission "", "write";
  • permission java.io.FilePermission "*", "delete";
  • permission java.io.FilePermission "*", "read";
  • permission java.io.FilePermission "*", "write";
  • permission java.io.FilePermission "-1", "delete";
  • permission java.io.FilePermission "-1", "read";
  • permission java.io.FilePermission "-1", "write";
  • permission java.io.FilePermission "-2", "delete";
  • permission java.io.FilePermission "-2", "read";
  • permission java.io.FilePermission "-2", "write";
  • permission java.io.FilePermission "-2147483648", "delete";
  • permission java.io.FilePermission "-2147483648", "read";
  • permission java.io.FilePermission "-2147483648", "write";
  • permission java.io.FilePermission "-3", "delete";
  • permission java.io.FilePermission "-3", "read";
  • permission java.io.FilePermission "-3", "write";
  • permission java.io.FilePermission "-9223372036854775808", "delete";
  • permission java.io.FilePermission "-9223372036854775808", "read";
  • permission java.io.FilePermission "-9223372036854775808", "write";
  • permission java.io.FilePermission ".", "delete";
  • permission java.io.FilePermission ".", "read";
  • permission java.io.FilePermission ".", "write";
  • permission java.io.FilePermission ".bundledata", "read";
  • permission java.io.FilePermission ".default", "read";
  • permission java.io.FilePermission ".fileTable", "read";
  • permission java.io.FilePermission ".fileTableLock", "delete";
  • permission java.io.FilePermission ".fileTableLock", "read";
  • permission java.io.FilePermission ".fileTableLock", "write";
  • permission java.io.FilePermission ".manager", "delete";
  • permission java.io.FilePermission ".manager", "read";
  • permission java.io.FilePermission ".manager", "write";
  • permission java.io.FilePermission ".metadata/.lock", "delete";
  • permission java.io.FilePermission ".metadata/.lock", "read";
  • permission java.io.FilePermission ".metadata/.lock", "write";
  • permission java.io.FilePermission "0", "delete";
  • permission java.io.FilePermission "0", "read";
  • permission java.io.FilePermission "0", "write";
  • permission java.io.FilePermission "1", "delete";
  • permission java.io.FilePermission "1", "read";
  • permission java.io.FilePermission "1", "write";
  • permission java.io.FilePermission "1.3", "delete";
  • permission java.io.FilePermission "1.3", "read";
  • permission java.io.FilePermission "1.3", "write";
  • permission java.io.FilePermission "10", "delete";
  • permission java.io.FilePermission "10", "read";
  • permission java.io.FilePermission "10", "write";
  • permission java.io.FilePermission "13", "delete";
  • permission java.io.FilePermission "13", "read";
  • permission java.io.FilePermission "13", "write";
  • permission java.io.FilePermission "2", "delete";
  • permission java.io.FilePermission "2", "read";
  • permission java.io.FilePermission "2", "write";
  • permission java.io.FilePermission "23", "delete";
  • permission java.io.FilePermission "23", "read";
  • permission java.io.FilePermission "23", "write";
  • permission java.io.FilePermission "3", "delete";
  • permission java.io.FilePermission "3", "read";
  • permission java.io.FilePermission "3", "write";
  • permission java.io.FilePermission "3.0.0", "delete";
  • permission java.io.FilePermission "3.0.0", "read";
  • permission java.io.FilePermission "3.0.0", "write";
  • permission java.io.FilePermission "4", "delete";
  • permission java.io.FilePermission "4", "read";
  • permission java.io.FilePermission "4", "write";
  • permission java.io.FilePermission "5", "delete";
  • permission java.io.FilePermission "5", "read";
  • permission java.io.FilePermission "5", "write";
  • permission java.io.FilePermission "6", "delete";
  • permission java.io.FilePermission "6", "read";
  • permission java.io.FilePermission "6", "write";
  • permission java.io.FilePermission "7", "delete";
  • permission java.io.FilePermission "7", "read";
  • permission java.io.FilePermission "7", "write";
  • permission java.io.FilePermission "8", "delete";
  • permission java.io.FilePermission "8", "read";
  • permission java.io.FilePermission "8", "write";
  • permission java.io.FilePermission "9", "delete";
  • permission java.io.FilePermission "9", "read";
  • permission java.io.FilePermission "9", "write";
  • permission java.io.FilePermission "???file???", "delete";
  • permission java.io.FilePermission "???file???", "read";
  • permission java.io.FilePermission "???file???", "write";
  • permission java.io.FilePermission "Eclipse", "delete";
  • permission java.io.FilePermission "Eclipse", "read";
  • permission java.io.FilePermission "Eclipse", "write";
  • permission java.io.FilePermission "META-INF/MANIFEST.MF", "delete";
  • permission java.io.FilePermission "META-INF/MANIFEST.MF", "read";
  • permission java.io.FilePermission "META-INF/MANIFEST.MF", "write";
  • permission java.io.FilePermission "No message available.", "delete";
  • permission java.io.FilePermission "No message available.", "read";
  • permission java.io.FilePermission "No message available.", "write";
  • permission java.io.FilePermission "aix", "delete";
  • permission java.io.FilePermission "aix", "read";
  • permission java.io.FilePermission "aix", "write";
  • permission java.io.FilePermission "bin", "delete";
  • permission java.io.FilePermission "bin", "read";
  • permission java.io.FilePermission "bin", "write";
  • permission java.io.FilePermission "bundles", "delete";
  • permission java.io.FilePermission "bundles", "read";
  • permission java.io.FilePermission "bundles", "write";
  • permission java.io.FilePermission "carbon", "delete";
  • permission java.io.FilePermission "carbon", "read";
  • permission java.io.FilePermission "carbon", "write";
  • permission java.io.FilePermission "false", "delete";
  • permission java.io.FilePermission "false", "read";
  • permission java.io.FilePermission "false", "write";
  • permission java.io.FilePermission "fragment.xml", "delete";
  • permission java.io.FilePermission "fragment.xml", "read";
  • permission java.io.FilePermission "fragment.xml", "write";
  • permission java.io.FilePermission "hpux", "delete";
  • permission java.io.FilePermission "hpux", "read";
  • permission java.io.FilePermission "hpux", "write";
  • permission java.io.FilePermission "linux", "delete";
  • permission java.io.FilePermission "linux", "read";
  • permission java.io.FilePermission "linux", "write";
  • permission java.io.FilePermission "macosx", "delete";
  • permission java.io.FilePermission "macosx", "read";
  • permission java.io.FilePermission "macosx", "write";
  • permission java.io.FilePermission "manifests", "delete";
  • permission java.io.FilePermission "manifests", "read";
  • permission java.io.FilePermission "manifests", "write";
  • permission java.io.FilePermission "motif", "delete";
  • permission java.io.FilePermission "motif", "read";
  • permission java.io.FilePermission "motif", "write";
  • permission java.io.FilePermission "org.eclipse.osgi", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi", "read";
  • permission java.io.FilePermission "org.eclipse.osgi", "write";
  • permission java.io.FilePermission "permdata", "delete";
  • permission java.io.FilePermission "permdata", "read";
  • permission java.io.FilePermission "permdata", "write";
  • permission java.io.FilePermission "photon", "delete";
  • permission java.io.FilePermission "photon", "read";
  • permission java.io.FilePermission "photon", "write";
  • permission java.io.FilePermission "plugin.xml", "delete";
  • permission java.io.FilePermission "plugin.xml", "read";
  • permission java.io.FilePermission "plugin.xml", "write";
  • permission java.io.FilePermission "qnx", "delete";
  • permission java.io.FilePermission "qnx", "read";
  • permission java.io.FilePermission "qnx", "write";
  • permission java.io.FilePermission "solaris", "delete";
  • permission java.io.FilePermission "solaris", "read";
  • permission java.io.FilePermission "solaris", "write";
  • permission java.io.FilePermission "true", "delete";
  • permission java.io.FilePermission "true", "read";
  • permission java.io.FilePermission "true", "write";
  • permission java.io.FilePermission "unknown", "delete";
  • permission java.io.FilePermission "unknown", "read";
  • permission java.io.FilePermission "unknown", "write";
  • permission java.io.FilePermission "win32", "delete";
  • permission java.io.FilePermission "win32", "read";
  • permission java.io.FilePermission "win32", "write";
  • permission java.io.FilePermission "x86", "delete";
  • permission java.io.FilePermission "x86", "read";
  • permission java.io.FilePermission "x86", "write";
  • permission java.io.FilePermission "x86_64", "delete";
  • permission java.io.FilePermission "x86_64", "read";
  • permission java.io.FilePermission "x86_64", "write";
  • permission java.lang.RuntimePermission "exitVM";
  • permission java.lang.RuntimePermission "getClassLoader";
  • permission java.lang.RuntimePermission "modifyThread";
  • permission java.net.NetPermission "specifyStreamHandler";
  • permission java.net.SocketPermission "???host???", "resolve";
  • permission java.net.SocketPermission "???host???:???port???", "connect";
  • permission java.net.SocketPermission "localhost", "resolve";
  • permission java.net.SocketPermission "localhost:1024-", "resolve";
  • permission java.net.SocketPermission "localhost:1024-:???port???", "connect";
  • permission java.net.SocketPermission "localhost:???port???", "connect";
  • permission java.util.PropertyPermission "*", "read,write";
  • permission java.util.PropertyPermission "eclipse.buildId", "read";
  • permission java.util.PropertyPermission "eclipse.consoleLog", "read";
  • permission java.util.PropertyPermission "eclipse.log.backup.max", "read";
  • permission java.util.PropertyPermission "eclipse.log.size.max", "read";
  • permission java.util.PropertyPermission "eclipse.startTime", "read";
  • permission java.util.PropertyPermission "java.fullversion", "read";
  • permission java.util.PropertyPermission "java.protocol.handler.pkgs", "read";
  • permission java.util.PropertyPermission "java.vendor", "read";
  • permission java.util.PropertyPermission "java.vendor.url.bug", "read";
  • permission java.util.PropertyPermission "java.version", "read";
  • permission java.util.PropertyPermission "launch.startMillis", "read";
  • permission java.util.PropertyPermission "os.arch", "read";
  • permission java.util.PropertyPermission "os.name", "read";
  • permission java.util.PropertyPermission "osgi.arch", "read";
  • permission java.util.PropertyPermission "osgi.debug", "read";
  • permission java.util.PropertyPermission "osgi.defaultprofile.buffersize", "read";
  • permission java.util.PropertyPermission "osgi.defaultprofile.logfilename", "read";
  • permission java.util.PropertyPermission "osgi.defaultprofile.logsynchronously", "read";
  • permission java.util.PropertyPermission "osgi.logfile", "read";
  • permission java.util.PropertyPermission "osgi.nl", "read";
  • permission java.util.PropertyPermission "osgi.os", "read";
  • permission java.util.PropertyPermission "osgi.ws", "read";
  • permission java.util.PropertyPermission "user.dir", "read";
  • permission java.util.PropertyPermission "user.language", "write";
  • permission org.osgi.framework.AdminPermission "", "";
  • permission org.osgi.framework.AdminPermission "", "class";
  • permission org.osgi.framework.AdminPermission "", "execute";
  • permission org.osgi.framework.AdminPermission "", "extensionLifecycle";
  • permission org.osgi.framework.AdminPermission "", "lifecycle";
  • permission org.osgi.framework.AdminPermission "", "listener";
  • permission org.osgi.framework.AdminPermission "", "metadata";
  • permission org.osgi.framework.AdminPermission "", "resolve";
  • permission org.osgi.framework.AdminPermission "", "resource";
  • permission org.osgi.framework.AdminPermission "", "startlevel";
  • permission org.osgi.framework.ServicePermission "", "";
  • permission org.osgi.framework.ServicePermission "", "get";
  • permission org.osgi.framework.ServicePermission "java.net.ContentHandler", "";
  • permission org.osgi.framework.ServicePermission "java.net.ContentHandler", "get";
  • permission org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "";
  • permission org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "get";


Conclusion: