Permission Analysis Report


Analysis of: org.eclipse.core.runtime

Detail


Class: org.eclipse.core.runtime.adaptor.LocationManager (Application)
DoPrivileged location: Line# 103 java.net.URL adjustTrailingSlash( java.net.URL, boolean )
   Permission: java.lang.RuntimePermission "getClassLoader"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.lang.RuntimePermission "modifyThread"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.net.NetPermission "specifyStreamHandler"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.net.SocketPermission "???host???", "resolve"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.net.SocketPermission "???host???:???port???", "connect"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.net.SocketPermission "localhost", "resolve"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.net.SocketPermission "localhost:1024-", "resolve"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.net.SocketPermission "localhost:1024-:???port???", "connect"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.net.SocketPermission "localhost:???port???", "connect"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: java.util.PropertyPermission "java.protocol.handler.pkgs", "read"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: org.osgi.framework.ServicePermission "", ""
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: org.osgi.framework.ServicePermission "", "get"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", ""
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "get"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", ""
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )
   Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "get"
      Primordial/void java.net.URL.URL( java.lang.String, java.lang.String, java.lang.String )


CODE
private static URL adjustTrailingSlash(URL url, boolean trailingSlash) throws MalformedURLException { String file = url.getFile(); if (trailingSlash == (file.endsWith("/"))) //$NON-NLS-1$ return url; file = trailingSlash ? file + "/" : file.substring(0, file.length() - 1); //$NON-NLS-1$ return new URL(url.getProtocol(), url.getHost(), file); }
Tainted variable reference trace:

Permission Requirements:

  • 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 "java.protocol.handler.pkgs", "read";
  • 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:


DoPrivileged location: Line# 160 org.eclipse.osgi.service.datalocation.Location buildLocation( java.lang.String, java.net.URL, java.lang.String, boolean ) Permission: java.util.PropertyPermission "*", "read,write" Primordial/java.util.Properties java.lang.System.getProperties( )

CODE
private static Location buildLocation(String property, URL defaultLocation, String userDefaultAppendage, boolean readOnlyDefault) { String location = (String) System.getProperties().remove(property); // the user/product may specify a non-default readOnly setting String userReadOnlySetting = System.getProperty(property + READ_ONLY_AREA_SUFFIX); boolean readOnly = (userReadOnlySetting == null ? readOnlyDefault : Boolean.valueOf(userReadOnlySetting).booleanValue()); // if the instance location is not set, predict where the workspace will be and // put the instance area inside the workspace meta area. if (location == null) return new BasicLocation(property, defaultLocation, readOnly); String trimmedLocation = location.trim(); if (trimmedLocation.equalsIgnoreCase(NONE)) return null; if (trimmedLocation.equalsIgnoreCase(NO_DEFAULT)) return new BasicLocation(property, null, readOnly); if (trimmedLocation.startsWith(USER_HOME)) { String base = substituteVar(location, USER_HOME, PROP_USER_HOME); location = new File(base, userDefaultAppendage).getAbsolutePath(); } else if (trimmedLocation.startsWith(USER_DIR)) { String base = substituteVar(location, USER_DIR, PROP_USER_DIR); location = new File(base, userDefaultAppendage).getAbsolutePath(); } URL url = buildURL(location, true); BasicLocation result = null; if (url != null) { result = new BasicLocation(property, null, readOnly); result.setURL(url, false); } return result; }
Tainted variable reference trace:

Permission Requirements:

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


Conclusion:


DoPrivileged location: Line# 162 org.eclipse.osgi.service.datalocation.Location buildLocation( java.lang.String, java.net.URL, java.lang.String, boolean ) Permission: java.util.PropertyPermission "???key???", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String )

CODE
private static Location buildLocation(String property, URL defaultLocation, String userDefaultAppendage, boolean readOnlyDefault) { String location = (String) System.getProperties().remove(property); // the user/product may specify a non-default readOnly setting String userReadOnlySetting = System.getProperty(property + READ_ONLY_AREA_SUFFIX); boolean readOnly = (userReadOnlySetting == null ? readOnlyDefault : Boolean.valueOf(userReadOnlySetting).booleanValue()); // if the instance location is not set, predict where the workspace will be and // put the instance area inside the workspace meta area. if (location == null) return new BasicLocation(property, defaultLocation, readOnly); String trimmedLocation = location.trim(); if (trimmedLocation.equalsIgnoreCase(NONE)) return null; if (trimmedLocation.equalsIgnoreCase(NO_DEFAULT)) return new BasicLocation(property, null, readOnly); if (trimmedLocation.startsWith(USER_HOME)) { String base = substituteVar(location, USER_HOME, PROP_USER_HOME); location = new File(base, userDefaultAppendage).getAbsolutePath(); } else if (trimmedLocation.startsWith(USER_DIR)) { String base = substituteVar(location, USER_DIR, PROP_USER_DIR); location = new File(base, userDefaultAppendage).getAbsolutePath(); } URL url = buildURL(location, true); BasicLocation result = null; if (url != null) { result = new BasicLocation(property, null, readOnly); result.setURL(url, false); } return result; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "???key???", "read";


Conclusion:


DoPrivileged location: Line# 175 org.eclipse.osgi.service.datalocation.Location buildLocation( java.lang.String, java.net.URL, java.lang.String, boolean ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( )

CODE
private static Location buildLocation(String property, URL defaultLocation, String userDefaultAppendage, boolean readOnlyDefault) { String location = (String) System.getProperties().remove(property); // the user/product may specify a non-default readOnly setting String userReadOnlySetting = System.getProperty(property + READ_ONLY_AREA_SUFFIX); boolean readOnly = (userReadOnlySetting == null ? readOnlyDefault : Boolean.valueOf(userReadOnlySetting).booleanValue()); // if the instance location is not set, predict where the workspace will be and // put the instance area inside the workspace meta area. if (location == null) return new BasicLocation(property, defaultLocation, readOnly); String trimmedLocation = location.trim(); if (trimmedLocation.equalsIgnoreCase(NONE)) return null; if (trimmedLocation.equalsIgnoreCase(NO_DEFAULT)) return new BasicLocation(property, null, readOnly); if (trimmedLocation.startsWith(USER_HOME)) { String base = substituteVar(location, USER_HOME, PROP_USER_HOME); location = new File(base, userDefaultAppendage).getAbsolutePath(); } else if (trimmedLocation.startsWith(USER_DIR)) { String base = substituteVar(location, USER_DIR, PROP_USER_DIR); location = new File(base, userDefaultAppendage).getAbsolutePath(); } URL url = buildURL(location, true); BasicLocation result = null; if (url != null) { result = new BasicLocation(property, null, readOnly); result.setURL(url, false); } return result; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • permission java.util.PropertyPermission "user.dir", "read";


Conclusion:


DoPrivileged location: Line# 178 org.eclipse.osgi.service.datalocation.Location buildLocation( java.lang.String, java.net.URL, java.lang.String, boolean ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( )

CODE
private static Location buildLocation(String property, URL defaultLocation, String userDefaultAppendage, boolean readOnlyDefault) { String location = (String) System.getProperties().remove(property); // the user/product may specify a non-default readOnly setting String userReadOnlySetting = System.getProperty(property + READ_ONLY_AREA_SUFFIX); boolean readOnly = (userReadOnlySetting == null ? readOnlyDefault : Boolean.valueOf(userReadOnlySetting).booleanValue()); // if the instance location is not set, predict where the workspace will be and // put the instance area inside the workspace meta area. if (location == null) return new BasicLocation(property, defaultLocation, readOnly); String trimmedLocation = location.trim(); if (trimmedLocation.equalsIgnoreCase(NONE)) return null; if (trimmedLocation.equalsIgnoreCase(NO_DEFAULT)) return new BasicLocation(property, null, readOnly); if (trimmedLocation.startsWith(USER_HOME)) { String base = substituteVar(location, USER_HOME, PROP_USER_HOME); location = new File(base, userDefaultAppendage).getAbsolutePath(); } else if (trimmedLocation.startsWith(USER_DIR)) { String base = substituteVar(location, USER_DIR, PROP_USER_DIR); location = new File(base, userDefaultAppendage).getAbsolutePath(); } URL url = buildURL(location, true); BasicLocation result = null; if (url != null) { result = new BasicLocation(property, null, readOnly); result.setURL(url, false); } return result; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • permission java.util.PropertyPermission "user.dir", "read";


Conclusion:


DoPrivileged location: Line# 82 java.net.URL buildURL( java.lang.String, boolean ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.lang.RuntimePermission "getClassLoader" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.lang.RuntimePermission "modifyThread" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.NetPermission "specifyStreamHandler" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "???host???", "resolve" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "???host???:???port???", "connect" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "localhost", "resolve" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "localhost:1024-", "resolve" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "localhost:1024-:???port???", "connect" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "localhost:???port???", "connect" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.util.PropertyPermission "java.protocol.handler.pkgs", "read" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "", "" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "", "get" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "get" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "get" Primordial/java.net.URL java.io.File.toURL( )

CODE
/** * Builds a URL with the given specification * @param spec the URL specification * @param trailingSlash flag to indicate a trailing slash on the spec * @return a URL */ public static URL buildURL(String spec, boolean trailingSlash) { if (spec == null) return null; boolean isFile = spec.startsWith("file:"); //$NON-NLS-1$ try { if (isFile) return adjustTrailingSlash(new File(spec.substring(5)).toURL(), trailingSlash); else return new URL(spec); } catch (MalformedURLException e) { // if we failed and it is a file spec, there is nothing more we can do // otherwise, try to make the spec into a file URL. if (isFile) return null; try { return adjustTrailingSlash(new File(spec).toURL(), trailingSlash); } catch (MalformedURLException e1) { return null; } } }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • 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 "java.protocol.handler.pkgs", "read";
  • permission java.util.PropertyPermission "user.dir", "read";
  • 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:


DoPrivileged location: Line# 84 java.net.URL buildURL( java.lang.String, boolean ) 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 "java.protocol.handler.pkgs", "read" 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
/** * Builds a URL with the given specification * @param spec the URL specification * @param trailingSlash flag to indicate a trailing slash on the spec * @return a URL */ public static URL buildURL(String spec, boolean trailingSlash) { if (spec == null) return null; boolean isFile = spec.startsWith("file:"); //$NON-NLS-1$ try { if (isFile) return adjustTrailingSlash(new File(spec.substring(5)).toURL(), trailingSlash); else return new URL(spec); } catch (MalformedURLException e) { // if we failed and it is a file spec, there is nothing more we can do // otherwise, try to make the spec into a file URL. if (isFile) return null; try { return adjustTrailingSlash(new File(spec).toURL(), trailingSlash); } catch (MalformedURLException e1) { return null; } } }
Tainted variable reference trace:

Permission Requirements:

  • 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 "java.protocol.handler.pkgs", "read";
  • 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:


DoPrivileged location: Line# 91 java.net.URL buildURL( java.lang.String, boolean ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.lang.RuntimePermission "getClassLoader" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.lang.RuntimePermission "modifyThread" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.NetPermission "specifyStreamHandler" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "???host???", "resolve" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "???host???:???port???", "connect" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "localhost", "resolve" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "localhost:1024-", "resolve" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "localhost:1024-:???port???", "connect" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.net.SocketPermission "localhost:???port???", "connect" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.util.PropertyPermission "java.protocol.handler.pkgs", "read" Primordial/java.net.URL java.io.File.toURL( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "", "" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "", "get" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "get" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "" Primordial/java.net.URL java.io.File.toURL( ) Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "get" Primordial/java.net.URL java.io.File.toURL( )

CODE
/** * Builds a URL with the given specification * @param spec the URL specification * @param trailingSlash flag to indicate a trailing slash on the spec * @return a URL */ public static URL buildURL(String spec, boolean trailingSlash) { if (spec == null) return null; boolean isFile = spec.startsWith("file:"); //$NON-NLS-1$ try { if (isFile) return adjustTrailingSlash(new File(spec.substring(5)).toURL(), trailingSlash); else return new URL(spec); } catch (MalformedURLException e) { // if we failed and it is a file spec, there is nothing more we can do // otherwise, try to make the spec into a file URL. if (isFile) return null; try { return adjustTrailingSlash(new File(spec).toURL(), trailingSlash); } catch (MalformedURLException e1) { return null; } } }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • 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 "java.protocol.handler.pkgs", "read";
  • permission java.util.PropertyPermission "user.dir", "read";
  • 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:


DoPrivileged location: Line# 251 boolean canWrite( java.io.File ) Permission: java.io.FilePermission "???file???", "write" Primordial/boolean java.io.File.canWrite( )

CODE
private static boolean canWrite(File installDir) { if (installDir.canWrite() == false) return false; if (!installDir.isDirectory()) return false; File fileTest = null; try { fileTest = File.createTempFile("writtableArea", null, installDir); //$NON-NLS-1$ } catch (IOException e) { //If an exception occured while trying to create the file, it means that it is not writtable return false; } finally { if (fileTest != null) fileTest.delete(); } return true; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "write";


Conclusion:


DoPrivileged location: Line# 254 boolean canWrite( java.io.File ) Permission: java.io.FilePermission "???file???", "read" Primordial/boolean java.io.File.isDirectory( )

CODE
private static boolean canWrite(File installDir) { if (installDir.canWrite() == false) return false; if (!installDir.isDirectory()) return false; File fileTest = null; try { fileTest = File.createTempFile("writtableArea", null, installDir); //$NON-NLS-1$ } catch (IOException e) { //If an exception occured while trying to create the file, it means that it is not writtable return false; } finally { if (fileTest != null) fileTest.delete(); } return true; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";


Conclusion:


DoPrivileged location: Line# 259 boolean canWrite( java.io.File ) Permission: java.io.FilePermission "", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "*", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "-1", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "-2", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "-2147483648", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "-3", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "-9223372036854775808", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "..", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".bundledata", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".contributions", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".extraData", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".lazy", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".log", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".mainData", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".manager", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".metadata", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".orphans", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".plugins", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".settings", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".state", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission ".table", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "/", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "0", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "1", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "1.3", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "10", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "13", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "2", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "23", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "3", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "3.0.0", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "4", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "5", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "6", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "7", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "8", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "9", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "???file???", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "Eclipse", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "META-INF/MANIFEST.MF", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "No message available.", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "aix", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "bin", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "bundles", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "carbon", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "charset", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "false", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "file-extensions", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "file-names", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "fragment.xml", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "hpux", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "instance", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "linux", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "macosx", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "manifests", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "motif", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.core.runtime", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.core.runtime/content-types", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.osgi", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/debug", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/impl", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/startup", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "performance.log", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "photon", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "plugin.xml", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "plugin_customization.ini", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "pref_store.ini", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "preferences", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "qnx", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "solaris", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "true", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "unknown", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "win32", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "x86", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File ) Permission: java.io.FilePermission "x86_64", "write" Primordial/java.io.File java.io.File.createTempFile( java.lang.String, java.lang.String, java.io.File )

CODE
private static boolean canWrite(File installDir) { if (installDir.canWrite() == false) return false; if (!installDir.isDirectory()) return false; File fileTest = null; try { fileTest = File.createTempFile("writtableArea", null, installDir); //$NON-NLS-1$ } catch (IOException e) { //If an exception occured while trying to create the file, it means that it is not writtable return false; } finally { if (fileTest != null) fileTest.delete(); } return true; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "", "write";
  • permission java.io.FilePermission "*", "write";
  • permission java.io.FilePermission "-1", "write";
  • permission java.io.FilePermission "-2", "write";
  • permission java.io.FilePermission "-2147483648", "write";
  • permission java.io.FilePermission "-3", "write";
  • permission java.io.FilePermission "-9223372036854775808", "write";
  • permission java.io.FilePermission ".", "write";
  • permission java.io.FilePermission "..", "write";
  • permission java.io.FilePermission ".bundledata", "write";
  • permission java.io.FilePermission ".contributions", "write";
  • permission java.io.FilePermission ".extraData", "write";
  • permission java.io.FilePermission ".lazy", "write";
  • permission java.io.FilePermission ".log", "write";
  • permission java.io.FilePermission ".mainData", "write";
  • permission java.io.FilePermission ".manager", "write";
  • permission java.io.FilePermission ".metadata", "write";
  • permission java.io.FilePermission ".orphans", "write";
  • permission java.io.FilePermission ".plugins", "write";
  • permission java.io.FilePermission ".settings", "write";
  • permission java.io.FilePermission ".state", "write";
  • permission java.io.FilePermission ".table", "write";
  • permission java.io.FilePermission "/", "write";
  • permission java.io.FilePermission "0", "write";
  • permission java.io.FilePermission "1", "write";
  • permission java.io.FilePermission "1.3", "write";
  • permission java.io.FilePermission "10", "write";
  • permission java.io.FilePermission "13", "write";
  • permission java.io.FilePermission "2", "write";
  • permission java.io.FilePermission "23", "write";
  • permission java.io.FilePermission "3", "write";
  • permission java.io.FilePermission "3.0.0", "write";
  • permission java.io.FilePermission "4", "write";
  • permission java.io.FilePermission "5", "write";
  • permission java.io.FilePermission "6", "write";
  • permission java.io.FilePermission "7", "write";
  • permission java.io.FilePermission "8", "write";
  • permission java.io.FilePermission "9", "write";
  • permission java.io.FilePermission "???file???", "write";
  • permission java.io.FilePermission "Eclipse", "write";
  • permission java.io.FilePermission "META-INF/MANIFEST.MF", "write";
  • permission java.io.FilePermission "No message available.", "write";
  • permission java.io.FilePermission "aix", "write";
  • permission java.io.FilePermission "bin", "write";
  • permission java.io.FilePermission "bundles", "write";
  • permission java.io.FilePermission "carbon", "write";
  • permission java.io.FilePermission "charset", "write";
  • permission java.io.FilePermission "false", "write";
  • permission java.io.FilePermission "file-extensions", "write";
  • permission java.io.FilePermission "file-names", "write";
  • permission java.io.FilePermission "fragment.xml", "write";
  • permission java.io.FilePermission "hpux", "write";
  • permission java.io.FilePermission "instance", "write";
  • permission java.io.FilePermission "linux", "write";
  • permission java.io.FilePermission "macosx", "write";
  • permission java.io.FilePermission "manifests", "write";
  • permission java.io.FilePermission "motif", "write";
  • permission java.io.FilePermission "org.eclipse.core.runtime", "write";
  • permission java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "write";
  • permission java.io.FilePermission "org.eclipse.core.runtime/content-types", "write";
  • permission java.io.FilePermission "org.eclipse.osgi", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/debug", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/impl", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/startup", "write";
  • permission java.io.FilePermission "performance.log", "write";
  • permission java.io.FilePermission "photon", "write";
  • permission java.io.FilePermission "plugin.xml", "write";
  • permission java.io.FilePermission "plugin_customization.ini", "write";
  • permission java.io.FilePermission "pref_store.ini", "write";
  • permission java.io.FilePermission "preferences", "write";
  • permission java.io.FilePermission "qnx", "write";
  • permission java.io.FilePermission "solaris", "write";
  • permission java.io.FilePermission "true", "write";
  • permission java.io.FilePermission "unknown", "write";
  • permission java.io.FilePermission "win32", "write";
  • permission java.io.FilePermission "x86", "write";
  • permission java.io.FilePermission "x86_64", "write";


Conclusion:


DoPrivileged location: Line# 265 boolean canWrite( java.io.File ) Permission: java.io.FilePermission "", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "*", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "-1", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "-2", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "-2147483648", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "-3", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "-9223372036854775808", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "..", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".bundledata", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".contributions", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".extraData", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".lazy", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".log", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".mainData", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".manager", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".metadata", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".orphans", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".plugins", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".settings", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".state", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission ".table", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "/", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "0", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "1", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "1.3", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "10", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "13", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "2", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "23", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "3", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "3.0.0", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "4", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "5", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "6", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "7", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "8", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "9", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "???file???", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "Eclipse", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "META-INF/MANIFEST.MF", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "No message available.", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "aix", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "bin", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "bundles", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "carbon", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "charset", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "false", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "file-extensions", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "file-names", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "fragment.xml", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "hpux", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "instance", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "linux", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "macosx", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "manifests", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "motif", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.core.runtime", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.core.runtime/content-types", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.osgi", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/debug", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/impl", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/startup", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "performance.log", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "photon", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "plugin.xml", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "plugin_customization.ini", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "pref_store.ini", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "preferences", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "qnx", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "solaris", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "true", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "unknown", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "win32", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "x86", "delete" Primordial/boolean java.io.File.delete( ) Permission: java.io.FilePermission "x86_64", "delete" Primordial/boolean java.io.File.delete( )

CODE
private static boolean canWrite(File installDir) { if (installDir.canWrite() == false) return false; if (!installDir.isDirectory()) return false; File fileTest = null; try { fileTest = File.createTempFile("writtableArea", null, installDir); //$NON-NLS-1$ } catch (IOException e) { //If an exception occured while trying to create the file, it means that it is not writtable return false; } finally { if (fileTest != null) fileTest.delete(); } return true; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "", "delete";
  • permission java.io.FilePermission "*", "delete";
  • permission java.io.FilePermission "-1", "delete";
  • permission java.io.FilePermission "-2", "delete";
  • permission java.io.FilePermission "-2147483648", "delete";
  • permission java.io.FilePermission "-3", "delete";
  • permission java.io.FilePermission "-9223372036854775808", "delete";
  • permission java.io.FilePermission ".", "delete";
  • permission java.io.FilePermission "..", "delete";
  • permission java.io.FilePermission ".bundledata", "delete";
  • permission java.io.FilePermission ".contributions", "delete";
  • permission java.io.FilePermission ".extraData", "delete";
  • permission java.io.FilePermission ".lazy", "delete";
  • permission java.io.FilePermission ".log", "delete";
  • permission java.io.FilePermission ".mainData", "delete";
  • permission java.io.FilePermission ".manager", "delete";
  • permission java.io.FilePermission ".metadata", "delete";
  • permission java.io.FilePermission ".orphans", "delete";
  • permission java.io.FilePermission ".plugins", "delete";
  • permission java.io.FilePermission ".settings", "delete";
  • permission java.io.FilePermission ".state", "delete";
  • permission java.io.FilePermission ".table", "delete";
  • permission java.io.FilePermission "/", "delete";
  • permission java.io.FilePermission "0", "delete";
  • permission java.io.FilePermission "1", "delete";
  • permission java.io.FilePermission "1.3", "delete";
  • permission java.io.FilePermission "10", "delete";
  • permission java.io.FilePermission "13", "delete";
  • permission java.io.FilePermission "2", "delete";
  • permission java.io.FilePermission "23", "delete";
  • permission java.io.FilePermission "3", "delete";
  • permission java.io.FilePermission "3.0.0", "delete";
  • permission java.io.FilePermission "4", "delete";
  • permission java.io.FilePermission "5", "delete";
  • permission java.io.FilePermission "6", "delete";
  • permission java.io.FilePermission "7", "delete";
  • permission java.io.FilePermission "8", "delete";
  • permission java.io.FilePermission "9", "delete";
  • permission java.io.FilePermission "???file???", "delete";
  • permission java.io.FilePermission "Eclipse", "delete";
  • permission java.io.FilePermission "META-INF/MANIFEST.MF", "delete";
  • permission java.io.FilePermission "No message available.", "delete";
  • permission java.io.FilePermission "aix", "delete";
  • permission java.io.FilePermission "bin", "delete";
  • permission java.io.FilePermission "bundles", "delete";
  • permission java.io.FilePermission "carbon", "delete";
  • permission java.io.FilePermission "charset", "delete";
  • permission java.io.FilePermission "false", "delete";
  • permission java.io.FilePermission "file-extensions", "delete";
  • permission java.io.FilePermission "file-names", "delete";
  • permission java.io.FilePermission "fragment.xml", "delete";
  • permission java.io.FilePermission "hpux", "delete";
  • permission java.io.FilePermission "instance", "delete";
  • permission java.io.FilePermission "linux", "delete";
  • permission java.io.FilePermission "macosx", "delete";
  • permission java.io.FilePermission "manifests", "delete";
  • permission java.io.FilePermission "motif", "delete";
  • permission java.io.FilePermission "org.eclipse.core.runtime", "delete";
  • permission java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "delete";
  • permission java.io.FilePermission "org.eclipse.core.runtime/content-types", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/debug", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/impl", "delete";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/startup", "delete";
  • permission java.io.FilePermission "performance.log", "delete";
  • permission java.io.FilePermission "photon", "delete";
  • permission java.io.FilePermission "plugin.xml", "delete";
  • permission java.io.FilePermission "plugin_customization.ini", "delete";
  • permission java.io.FilePermission "pref_store.ini", "delete";
  • permission java.io.FilePermission "preferences", "delete";
  • permission java.io.FilePermission "qnx", "delete";
  • permission java.io.FilePermission "solaris", "delete";
  • permission java.io.FilePermission "true", "delete";
  • permission java.io.FilePermission "unknown", "delete";
  • permission java.io.FilePermission "win32", "delete";
  • permission java.io.FilePermission "x86", "delete";
  • permission java.io.FilePermission "x86_64", "delete";


Conclusion:


DoPrivileged location: Line# 244 java.lang.String computeDefaultConfigurationLocation( ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( )

CODE
private static String computeDefaultConfigurationLocation() { // 1) We store the config state relative to the 'eclipse' directory if possible // 2) If this directory is read-only // we store the state in /.eclipse/_ where // is unique for each local user, and is the one // defined in .eclipseproduct marker file. If .eclipseproduct does not // exist, use "eclipse" as the application-id. URL installURL = computeInstallConfigurationLocation(); if (installURL != null) { File installDir = new File(installURL.getFile()); if ("file".equals(installURL.getProtocol()) && canWrite(installDir)) //$NON-NLS-1$ return new File(installDir, CONFIG_DIR).getAbsolutePath(); } // We can't write in the eclipse install dir so try for some place in the user's home dir return computeDefaultUserAreaLocation(CONFIG_DIR); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • permission java.util.PropertyPermission "user.dir", "read";


Conclusion:


DoPrivileged location: Line# 275 java.lang.String computeDefaultUserAreaLocation( java.lang.String ) Permission: java.util.PropertyPermission "osgi.install.area", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String )

CODE
private static String computeDefaultUserAreaLocation(String pathAppendage) { // we store the state in /.eclipse/_ where // is unique for each local user, and is the one // defined in .eclipseproduct marker file. If .eclipseproduct does not // exist, use "eclipse" as the application-id. String installProperty = System.getProperty(PROP_INSTALL_AREA); URL installURL = buildURL(installProperty, true); if (installURL == null) return null; File installDir = new File(installURL.getFile()); String appName = "." + ECLIPSE; //$NON-NLS-1$ File eclipseProduct = new File(installDir, PRODUCT_SITE_MARKER); if (eclipseProduct.exists()) { Properties props = new Properties(); try { props.load(new FileInputStream(eclipseProduct)); String appId = props.getProperty(PRODUCT_SITE_ID); if (appId == null || appId.trim().length() == 0) appId = ECLIPSE; String appVersion = props.getProperty(PRODUCT_SITE_VERSION); if (appVersion == null || appVersion.trim().length() == 0) appVersion = ""; //$NON-NLS-1$ appName += File.separator + appId + "_" + appVersion; //$NON-NLS-1$ } catch (IOException e) { // Do nothing if we get an exception. We will default to a standard location // in the user's home dir. } } String userHome = System.getProperty(PROP_USER_HOME); return new File(userHome, appName + "/" + pathAppendage).getAbsolutePath(); //$NON-NLS-1$ }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "osgi.install.area", "read";


Conclusion:


DoPrivileged location: Line# 282 java.lang.String computeDefaultUserAreaLocation( java.lang.String ) Permission: java.io.FilePermission ".eclipseproduct", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "???file???", "read" Primordial/boolean java.io.File.exists( )

CODE
private static String computeDefaultUserAreaLocation(String pathAppendage) { // we store the state in /.eclipse/_ where // is unique for each local user, and is the one // defined in .eclipseproduct marker file. If .eclipseproduct does not // exist, use "eclipse" as the application-id. String installProperty = System.getProperty(PROP_INSTALL_AREA); URL installURL = buildURL(installProperty, true); if (installURL == null) return null; File installDir = new File(installURL.getFile()); String appName = "." + ECLIPSE; //$NON-NLS-1$ File eclipseProduct = new File(installDir, PRODUCT_SITE_MARKER); if (eclipseProduct.exists()) { Properties props = new Properties(); try { props.load(new FileInputStream(eclipseProduct)); String appId = props.getProperty(PRODUCT_SITE_ID); if (appId == null || appId.trim().length() == 0) appId = ECLIPSE; String appVersion = props.getProperty(PRODUCT_SITE_VERSION); if (appVersion == null || appVersion.trim().length() == 0) appVersion = ""; //$NON-NLS-1$ appName += File.separator + appId + "_" + appVersion; //$NON-NLS-1$ } catch (IOException e) { // Do nothing if we get an exception. We will default to a standard location // in the user's home dir. } } String userHome = System.getProperty(PROP_USER_HOME); return new File(userHome, appName + "/" + pathAppendage).getAbsolutePath(); //$NON-NLS-1$ }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission ".eclipseproduct", "read";
  • permission java.io.FilePermission "???file???", "read";


Conclusion:


DoPrivileged location: Line# 285 java.lang.String computeDefaultUserAreaLocation( java.lang.String ) Permission: java.io.FilePermission ".eclipseproduct", "read" Primordial/void java.io.FileInputStream.FileInputStream( java.io.File ) Permission: java.io.FilePermission "???file???", "read" Primordial/void java.io.FileInputStream.FileInputStream( java.io.File ) Permission: java.util.PropertyPermission "java.vendor.url.bug", "read" Primordial/void java.util.Properties.load( java.io.InputStream )

CODE
private static String computeDefaultUserAreaLocation(String pathAppendage) { // we store the state in /.eclipse/_ where // is unique for each local user, and is the one // defined in .eclipseproduct marker file. If .eclipseproduct does not // exist, use "eclipse" as the application-id. String installProperty = System.getProperty(PROP_INSTALL_AREA); URL installURL = buildURL(installProperty, true); if (installURL == null) return null; File installDir = new File(installURL.getFile()); String appName = "." + ECLIPSE; //$NON-NLS-1$ File eclipseProduct = new File(installDir, PRODUCT_SITE_MARKER); if (eclipseProduct.exists()) { Properties props = new Properties(); try { props.load(new FileInputStream(eclipseProduct)); String appId = props.getProperty(PRODUCT_SITE_ID); if (appId == null || appId.trim().length() == 0) appId = ECLIPSE; String appVersion = props.getProperty(PRODUCT_SITE_VERSION); if (appVersion == null || appVersion.trim().length() == 0) appVersion = ""; //$NON-NLS-1$ appName += File.separator + appId + "_" + appVersion; //$NON-NLS-1$ } catch (IOException e) { // Do nothing if we get an exception. We will default to a standard location // in the user's home dir. } } String userHome = System.getProperty(PROP_USER_HOME); return new File(userHome, appName + "/" + pathAppendage).getAbsolutePath(); //$NON-NLS-1$ }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission ".eclipseproduct", "read";
  • permission java.io.FilePermission "???file???", "read";
  • permission java.util.PropertyPermission "java.vendor.url.bug", "read";


Conclusion:


DoPrivileged location: Line# 298 java.lang.String computeDefaultUserAreaLocation( java.lang.String ) Permission: java.util.PropertyPermission "user.home", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String )

CODE
private static String computeDefaultUserAreaLocation(String pathAppendage) { // we store the state in /.eclipse/_ where // is unique for each local user, and is the one // defined in .eclipseproduct marker file. If .eclipseproduct does not // exist, use "eclipse" as the application-id. String installProperty = System.getProperty(PROP_INSTALL_AREA); URL installURL = buildURL(installProperty, true); if (installURL == null) return null; File installDir = new File(installURL.getFile()); String appName = "." + ECLIPSE; //$NON-NLS-1$ File eclipseProduct = new File(installDir, PRODUCT_SITE_MARKER); if (eclipseProduct.exists()) { Properties props = new Properties(); try { props.load(new FileInputStream(eclipseProduct)); String appId = props.getProperty(PRODUCT_SITE_ID); if (appId == null || appId.trim().length() == 0) appId = ECLIPSE; String appVersion = props.getProperty(PRODUCT_SITE_VERSION); if (appVersion == null || appVersion.trim().length() == 0) appVersion = ""; //$NON-NLS-1$ appName += File.separator + appId + "_" + appVersion; //$NON-NLS-1$ } catch (IOException e) { // Do nothing if we get an exception. We will default to a standard location // in the user's home dir. } } String userHome = System.getProperty(PROP_USER_HOME); return new File(userHome, appName + "/" + pathAppendage).getAbsolutePath(); //$NON-NLS-1$ }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "user.home", "read";


Conclusion:


DoPrivileged location: Line# 299 java.lang.String computeDefaultUserAreaLocation( java.lang.String ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( )

CODE
private static String computeDefaultUserAreaLocation(String pathAppendage) { // we store the state in /.eclipse/_ where // is unique for each local user, and is the one // defined in .eclipseproduct marker file. If .eclipseproduct does not // exist, use "eclipse" as the application-id. String installProperty = System.getProperty(PROP_INSTALL_AREA); URL installURL = buildURL(installProperty, true); if (installURL == null) return null; File installDir = new File(installURL.getFile()); String appName = "." + ECLIPSE; //$NON-NLS-1$ File eclipseProduct = new File(installDir, PRODUCT_SITE_MARKER); if (eclipseProduct.exists()) { Properties props = new Properties(); try { props.load(new FileInputStream(eclipseProduct)); String appId = props.getProperty(PRODUCT_SITE_ID); if (appId == null || appId.trim().length() == 0) appId = ECLIPSE; String appVersion = props.getProperty(PRODUCT_SITE_VERSION); if (appVersion == null || appVersion.trim().length() == 0) appVersion = ""; //$NON-NLS-1$ appName += File.separator + appId + "_" + appVersion; //$NON-NLS-1$ } catch (IOException e) { // Do nothing if we get an exception. We will default to a standard location // in the user's home dir. } } String userHome = System.getProperty(PROP_USER_HOME); return new File(userHome, appName + "/" + pathAppendage).getAbsolutePath(); //$NON-NLS-1$ }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • permission java.util.PropertyPermission "user.dir", "read";


Conclusion:


DoPrivileged location: Line# 200 java.net.URL computeInstallConfigurationLocation( ) Permission: java.util.PropertyPermission "osgi.install.area", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String )

CODE
private static URL computeInstallConfigurationLocation() { String property = System.getProperty(PROP_INSTALL_AREA); if (property != null) { try { return new URL(property); } catch (MalformedURLException e) { // do nothing here since it is basically impossible to get a bogus url } } return null; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "osgi.install.area", "read";


Conclusion:


DoPrivileged location: Line# 203 java.net.URL computeInstallConfigurationLocation( ) 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 "java.protocol.handler.pkgs", "read" 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
private static URL computeInstallConfigurationLocation() { String property = System.getProperty(PROP_INSTALL_AREA); if (property != null) { try { return new URL(property); } catch (MalformedURLException e) { // do nothing here since it is basically impossible to get a bogus url } } return null; }
Tainted variable reference trace:

Permission Requirements:

  • 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 "java.protocol.handler.pkgs", "read";
  • 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:


DoPrivileged location: Line# 212 java.net.URL computeSharedConfigurationLocation( ) Permission: java.util.PropertyPermission "osgi.sharedConfiguration.area", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String )

CODE
private static URL computeSharedConfigurationLocation() { String property = System.getProperty(PROP_SHARED_CONFIG_AREA); if (property == null) return null; try { URL sharedConfigurationURL = new URL(property); if (sharedConfigurationURL.getPath().startsWith("/")) //$NON-NLS-1$ // absolute return sharedConfigurationURL; URL installURL = installLocation.getURL(); if (!sharedConfigurationURL.getProtocol().equals(installURL.getProtocol())) // different protocol return sharedConfigurationURL; sharedConfigurationURL = new URL(installURL, sharedConfigurationURL.getPath()); System.getProperties().put(PROP_SHARED_CONFIG_AREA, sharedConfigurationURL.toExternalForm()); } catch (MalformedURLException e) { // do nothing here since it is basically impossible to get a bogus url } return null; }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "osgi.sharedConfiguration.area", "read";


Conclusion:


DoPrivileged location: Line# 216 java.net.URL computeSharedConfigurationLocation( ) 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 "java.protocol.handler.pkgs", "read" 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
private static URL computeSharedConfigurationLocation() { String property = System.getProperty(PROP_SHARED_CONFIG_AREA); if (property == null) return null; try { URL sharedConfigurationURL = new URL(property); if (sharedConfigurationURL.getPath().startsWith("/")) //$NON-NLS-1$ // absolute return sharedConfigurationURL; URL installURL = installLocation.getURL(); if (!sharedConfigurationURL.getProtocol().equals(installURL.getProtocol())) // different protocol return sharedConfigurationURL; sharedConfigurationURL = new URL(installURL, sharedConfigurationURL.getPath()); System.getProperties().put(PROP_SHARED_CONFIG_AREA, sharedConfigurationURL.toExternalForm()); } catch (MalformedURLException e) { // do nothing here since it is basically impossible to get a bogus url } return null; }
Tainted variable reference trace:

Permission Requirements:

  • 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 "java.protocol.handler.pkgs", "read";
  • 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:


DoPrivileged location: Line# 224 java.net.URL computeSharedConfigurationLocation( ) Permission: java.lang.RuntimePermission "getClassLoader" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.lang.RuntimePermission "modifyThread" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.net.NetPermission "specifyStreamHandler" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.net.SocketPermission "???host???", "resolve" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.net.SocketPermission "???host???:???port???", "connect" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.net.SocketPermission "localhost", "resolve" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.net.SocketPermission "localhost:1024-", "resolve" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.net.SocketPermission "localhost:1024-:???port???", "connect" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.net.SocketPermission "localhost:???port???", "connect" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: java.util.PropertyPermission "java.protocol.handler.pkgs", "read" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: org.osgi.framework.ServicePermission "", "" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: org.osgi.framework.ServicePermission "", "get" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: org.osgi.framework.ServicePermission "java.net.ContentHandler", "get" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String ) Permission: org.osgi.framework.ServicePermission "org.osgi.service.url.URLStreamHandlerService", "get" Primordial/void java.net.URL.URL( java.net.URL, java.lang.String )

CODE
private static URL computeSharedConfigurationLocation() { String property = System.getProperty(PROP_SHARED_CONFIG_AREA); if (property == null) return null; try { URL sharedConfigurationURL = new URL(property); if (sharedConfigurationURL.getPath().startsWith("/")) //$NON-NLS-1$ // absolute return sharedConfigurationURL; URL installURL = installLocation.getURL(); if (!sharedConfigurationURL.getProtocol().equals(installURL.getProtocol())) // different protocol return sharedConfigurationURL; sharedConfigurationURL = new URL(installURL, sharedConfigurationURL.getPath()); System.getProperties().put(PROP_SHARED_CONFIG_AREA, sharedConfigurationURL.toExternalForm()); } catch (MalformedURLException e) { // do nothing here since it is basically impossible to get a bogus url } return null; }
Tainted variable reference trace:

Permission Requirements:

  • 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 "java.protocol.handler.pkgs", "read";
  • 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:


DoPrivileged location: Line# 225 java.net.URL computeSharedConfigurationLocation( ) Permission: java.util.PropertyPermission "*", "read,write" Primordial/java.util.Properties java.lang.System.getProperties( )

CODE
private static URL computeSharedConfigurationLocation() { String property = System.getProperty(PROP_SHARED_CONFIG_AREA); if (property == null) return null; try { URL sharedConfigurationURL = new URL(property); if (sharedConfigurationURL.getPath().startsWith("/")) //$NON-NLS-1$ // absolute return sharedConfigurationURL; URL installURL = installLocation.getURL(); if (!sharedConfigurationURL.getProtocol().equals(installURL.getProtocol())) // different protocol return sharedConfigurationURL; sharedConfigurationURL = new URL(installURL, sharedConfigurationURL.getPath()); System.getProperties().put(PROP_SHARED_CONFIG_AREA, sharedConfigurationURL.toExternalForm()); } catch (MalformedURLException e) { // do nothing here since it is basically impossible to get a bogus url } return null; }
Tainted variable reference trace:

Permission Requirements:

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


Conclusion:


DoPrivileged location: Line# 350 java.io.File getConfigurationFile( java.lang.String ) Permission: java.io.FilePermission "", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "*", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "-1", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "-2", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "-2147483648", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "-3", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "-9223372036854775808", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "..", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".bundledata", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".contributions", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".extraData", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".lazy", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".log", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".mainData", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".metadata", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".orphans", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".plugins", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".settings", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".state", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission ".table", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "/", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "0", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "1", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "1.3", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "10", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "13", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "2", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "23", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "3", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "3.0.0", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "4", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "5", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "6", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "7", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "8", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "9", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "???file???", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "Eclipse", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "META-INF/MANIFEST.MF", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "No message available.", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "aix", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "bin", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "bundles", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "carbon", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "charset", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "false", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "file-extensions", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "file-names", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "fragment.xml", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "hpux", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "instance", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "linux", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "macosx", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "manifests", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "motif", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.core.runtime", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.core.runtime/content-types", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.osgi", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/debug", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/impl", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/startup", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "performance.log", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "photon", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "plugin.xml", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "plugin_customization.ini", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "pref_store.ini", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "preferences", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "qnx", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "solaris", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "true", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "unknown", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "win32", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "x86", "read" Primordial/boolean java.io.File.exists( ) Permission: java.io.FilePermission "x86_64", "read" Primordial/boolean java.io.File.exists( )

CODE
/** * Returns a file from the configuration area that can be used by the framework * @param filename the filename * @return a file from the configuration area */ public static File getConfigurationFile(String filename) { File dir = getOSGiConfigurationDir(); if (!dir.exists()) dir.mkdirs(); return new File(dir, filename); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "", "read";
  • permission java.io.FilePermission "*", "read";
  • permission java.io.FilePermission "-1", "read";
  • permission java.io.FilePermission "-2", "read";
  • permission java.io.FilePermission "-2147483648", "read";
  • permission java.io.FilePermission "-3", "read";
  • permission java.io.FilePermission "-9223372036854775808", "read";
  • permission java.io.FilePermission ".", "read";
  • permission java.io.FilePermission "..", "read";
  • permission java.io.FilePermission ".bundledata", "read";
  • permission java.io.FilePermission ".contributions", "read";
  • permission java.io.FilePermission ".extraData", "read";
  • permission java.io.FilePermission ".lazy", "read";
  • permission java.io.FilePermission ".log", "read";
  • permission java.io.FilePermission ".mainData", "read";
  • permission java.io.FilePermission ".metadata", "read";
  • permission java.io.FilePermission ".orphans", "read";
  • permission java.io.FilePermission ".plugins", "read";
  • permission java.io.FilePermission ".settings", "read";
  • permission java.io.FilePermission ".state", "read";
  • permission java.io.FilePermission ".table", "read";
  • permission java.io.FilePermission "/", "read";
  • permission java.io.FilePermission "0", "read";
  • permission java.io.FilePermission "1", "read";
  • permission java.io.FilePermission "1.3", "read";
  • permission java.io.FilePermission "10", "read";
  • permission java.io.FilePermission "13", "read";
  • permission java.io.FilePermission "2", "read";
  • permission java.io.FilePermission "23", "read";
  • permission java.io.FilePermission "3", "read";
  • permission java.io.FilePermission "3.0.0", "read";
  • permission java.io.FilePermission "4", "read";
  • permission java.io.FilePermission "5", "read";
  • permission java.io.FilePermission "6", "read";
  • permission java.io.FilePermission "7", "read";
  • permission java.io.FilePermission "8", "read";
  • permission java.io.FilePermission "9", "read";
  • permission java.io.FilePermission "???file???", "read";
  • permission java.io.FilePermission "Eclipse", "read";
  • permission java.io.FilePermission "META-INF/MANIFEST.MF", "read";
  • permission java.io.FilePermission "No message available.", "read";
  • permission java.io.FilePermission "aix", "read";
  • permission java.io.FilePermission "bin", "read";
  • permission java.io.FilePermission "bundles", "read";
  • permission java.io.FilePermission "carbon", "read";
  • permission java.io.FilePermission "charset", "read";
  • permission java.io.FilePermission "false", "read";
  • permission java.io.FilePermission "file-extensions", "read";
  • permission java.io.FilePermission "file-names", "read";
  • permission java.io.FilePermission "fragment.xml", "read";
  • permission java.io.FilePermission "hpux", "read";
  • permission java.io.FilePermission "instance", "read";
  • permission java.io.FilePermission "linux", "read";
  • permission java.io.FilePermission "macosx", "read";
  • permission java.io.FilePermission "manifests", "read";
  • permission java.io.FilePermission "motif", "read";
  • permission java.io.FilePermission "org.eclipse.core.runtime", "read";
  • permission java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "read";
  • permission java.io.FilePermission "org.eclipse.core.runtime/content-types", "read";
  • permission java.io.FilePermission "org.eclipse.osgi", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/debug", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/impl", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/startup", "read";
  • permission java.io.FilePermission "performance.log", "read";
  • permission java.io.FilePermission "photon", "read";
  • permission java.io.FilePermission "plugin.xml", "read";
  • permission java.io.FilePermission "plugin_customization.ini", "read";
  • permission java.io.FilePermission "pref_store.ini", "read";
  • permission java.io.FilePermission "preferences", "read";
  • permission java.io.FilePermission "qnx", "read";
  • permission java.io.FilePermission "solaris", "read";
  • permission java.io.FilePermission "true", "read";
  • permission java.io.FilePermission "unknown", "read";
  • permission java.io.FilePermission "win32", "read";
  • permission java.io.FilePermission "x86", "read";
  • permission java.io.FilePermission "x86_64", "read";


Conclusion:


DoPrivileged location: Line# 351 java.io.File getConfigurationFile( java.lang.String ) Permission: java.io.FilePermission "", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "*", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "*", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-1", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-1", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-2", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-2", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-2147483648", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-2147483648", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-3", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-3", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-9223372036854775808", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "-9223372036854775808", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "..", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "..", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".bundledata", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".bundledata", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".contributions", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".contributions", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".extraData", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".extraData", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".lazy", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".lazy", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".log", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".log", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".mainData", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".mainData", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".metadata", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".metadata", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".orphans", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".orphans", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".plugins", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".plugins", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".settings", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".settings", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".state", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".state", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".table", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission ".table", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "/", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "/", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "0", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "0", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "1", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "1", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "1.3", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "1.3", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "10", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "10", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "13", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "13", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "2", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "2", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "23", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "23", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "3", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "3", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "3.0.0", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "3.0.0", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "4", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "4", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "5", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "5", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "6", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "6", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "7", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "7", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "8", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "8", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "9", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "9", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "???file???", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "???file???", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "Eclipse", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "Eclipse", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "META-INF/MANIFEST.MF", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "META-INF/MANIFEST.MF", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "No message available.", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "No message available.", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "aix", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "aix", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "bin", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "bin", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "bundles", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "bundles", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "carbon", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "carbon", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "charset", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "charset", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "false", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "false", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "file-extensions", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "file-extensions", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "file-names", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "file-names", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "fragment.xml", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "fragment.xml", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "hpux", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "hpux", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "instance", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "instance", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "linux", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "linux", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "macosx", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "macosx", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "manifests", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "manifests", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "motif", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "motif", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.core.runtime", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.core.runtime", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.core.runtime/content-types", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.core.runtime/content-types", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/debug", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/debug", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/impl", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/impl", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/startup", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "org.eclipse.osgi/profile/startup", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "performance.log", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "performance.log", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "photon", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "photon", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "plugin.xml", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "plugin.xml", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "plugin_customization.ini", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "plugin_customization.ini", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "pref_store.ini", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "pref_store.ini", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "preferences", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "preferences", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "qnx", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "qnx", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "solaris", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "solaris", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "true", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "true", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "unknown", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "unknown", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "win32", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "win32", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "x86", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "x86", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "x86_64", "read" Primordial/boolean java.io.File.mkdirs( ) Permission: java.io.FilePermission "x86_64", "write" Primordial/boolean java.io.File.mkdirs( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/boolean java.io.File.mkdirs( )

CODE
/** * Returns a file from the configuration area that can be used by the framework * @param filename the filename * @return a file from the configuration area */ public static File getConfigurationFile(String filename) { File dir = getOSGiConfigurationDir(); if (!dir.exists()) dir.mkdirs(); return new File(dir, filename); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "", "read";
  • permission java.io.FilePermission "", "write";
  • permission java.io.FilePermission "*", "read";
  • permission java.io.FilePermission "*", "write";
  • permission java.io.FilePermission "-1", "read";
  • permission java.io.FilePermission "-1", "write";
  • permission java.io.FilePermission "-2", "read";
  • permission java.io.FilePermission "-2", "write";
  • permission java.io.FilePermission "-2147483648", "read";
  • permission java.io.FilePermission "-2147483648", "write";
  • permission java.io.FilePermission "-3", "read";
  • permission java.io.FilePermission "-3", "write";
  • permission java.io.FilePermission "-9223372036854775808", "read";
  • permission java.io.FilePermission "-9223372036854775808", "write";
  • permission java.io.FilePermission ".", "read";
  • permission java.io.FilePermission ".", "write";
  • permission java.io.FilePermission "..", "read";
  • permission java.io.FilePermission "..", "write";
  • permission java.io.FilePermission ".bundledata", "read";
  • permission java.io.FilePermission ".bundledata", "write";
  • permission java.io.FilePermission ".contributions", "read";
  • permission java.io.FilePermission ".contributions", "write";
  • permission java.io.FilePermission ".extraData", "read";
  • permission java.io.FilePermission ".extraData", "write";
  • permission java.io.FilePermission ".lazy", "read";
  • permission java.io.FilePermission ".lazy", "write";
  • permission java.io.FilePermission ".log", "read";
  • permission java.io.FilePermission ".log", "write";
  • permission java.io.FilePermission ".mainData", "read";
  • permission java.io.FilePermission ".mainData", "write";
  • permission java.io.FilePermission ".metadata", "read";
  • permission java.io.FilePermission ".metadata", "write";
  • permission java.io.FilePermission ".orphans", "read";
  • permission java.io.FilePermission ".orphans", "write";
  • permission java.io.FilePermission ".plugins", "read";
  • permission java.io.FilePermission ".plugins", "write";
  • permission java.io.FilePermission ".settings", "read";
  • permission java.io.FilePermission ".settings", "write";
  • permission java.io.FilePermission ".state", "read";
  • permission java.io.FilePermission ".state", "write";
  • permission java.io.FilePermission ".table", "read";
  • permission java.io.FilePermission ".table", "write";
  • permission java.io.FilePermission "/", "read";
  • permission java.io.FilePermission "/", "write";
  • permission java.io.FilePermission "0", "read";
  • permission java.io.FilePermission "0", "write";
  • permission java.io.FilePermission "1", "read";
  • permission java.io.FilePermission "1", "write";
  • permission java.io.FilePermission "1.3", "read";
  • permission java.io.FilePermission "1.3", "write";
  • permission java.io.FilePermission "10", "read";
  • permission java.io.FilePermission "10", "write";
  • permission java.io.FilePermission "13", "read";
  • permission java.io.FilePermission "13", "write";
  • permission java.io.FilePermission "2", "read";
  • permission java.io.FilePermission "2", "write";
  • permission java.io.FilePermission "23", "read";
  • permission java.io.FilePermission "23", "write";
  • permission java.io.FilePermission "3", "read";
  • permission java.io.FilePermission "3", "write";
  • permission java.io.FilePermission "3.0.0", "read";
  • permission java.io.FilePermission "3.0.0", "write";
  • permission java.io.FilePermission "4", "read";
  • permission java.io.FilePermission "4", "write";
  • permission java.io.FilePermission "5", "read";
  • permission java.io.FilePermission "5", "write";
  • permission java.io.FilePermission "6", "read";
  • permission java.io.FilePermission "6", "write";
  • permission java.io.FilePermission "7", "read";
  • permission java.io.FilePermission "7", "write";
  • permission java.io.FilePermission "8", "read";
  • permission java.io.FilePermission "8", "write";
  • permission java.io.FilePermission "9", "read";
  • permission java.io.FilePermission "9", "write";
  • permission java.io.FilePermission "???file???", "read";
  • permission java.io.FilePermission "???file???", "write";
  • permission java.io.FilePermission "Eclipse", "read";
  • permission java.io.FilePermission "Eclipse", "write";
  • 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.", "read";
  • permission java.io.FilePermission "No message available.", "write";
  • permission java.io.FilePermission "aix", "read";
  • permission java.io.FilePermission "aix", "write";
  • permission java.io.FilePermission "bin", "read";
  • permission java.io.FilePermission "bin", "write";
  • permission java.io.FilePermission "bundles", "read";
  • permission java.io.FilePermission "bundles", "write";
  • permission java.io.FilePermission "carbon", "read";
  • permission java.io.FilePermission "carbon", "write";
  • permission java.io.FilePermission "charset", "read";
  • permission java.io.FilePermission "charset", "write";
  • permission java.io.FilePermission "false", "read";
  • permission java.io.FilePermission "false", "write";
  • permission java.io.FilePermission "file-extensions", "read";
  • permission java.io.FilePermission "file-extensions", "write";
  • permission java.io.FilePermission "file-names", "read";
  • permission java.io.FilePermission "file-names", "write";
  • permission java.io.FilePermission "fragment.xml", "read";
  • permission java.io.FilePermission "fragment.xml", "write";
  • permission java.io.FilePermission "hpux", "read";
  • permission java.io.FilePermission "hpux", "write";
  • permission java.io.FilePermission "instance", "read";
  • permission java.io.FilePermission "instance", "write";
  • permission java.io.FilePermission "linux", "read";
  • permission java.io.FilePermission "linux", "write";
  • permission java.io.FilePermission "macosx", "read";
  • permission java.io.FilePermission "macosx", "write";
  • permission java.io.FilePermission "manifests", "read";
  • permission java.io.FilePermission "manifests", "write";
  • permission java.io.FilePermission "motif", "read";
  • permission java.io.FilePermission "motif", "write";
  • permission java.io.FilePermission "org.eclipse.core.runtime", "read";
  • permission java.io.FilePermission "org.eclipse.core.runtime", "write";
  • permission java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "read";
  • permission java.io.FilePermission "org.eclipse.core.runtime.adaptor/resolver/timing/value", "write";
  • permission java.io.FilePermission "org.eclipse.core.runtime/content-types", "read";
  • permission java.io.FilePermission "org.eclipse.core.runtime/content-types", "write";
  • permission java.io.FilePermission "org.eclipse.osgi", "read";
  • permission java.io.FilePermission "org.eclipse.osgi", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/buffersize", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logfilename", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/defaultprofile/logsynchronously", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/benchmark", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/debug", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/debug", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/impl", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/impl", "write";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/startup", "read";
  • permission java.io.FilePermission "org.eclipse.osgi/profile/startup", "write";
  • permission java.io.FilePermission "performance.log", "read";
  • permission java.io.FilePermission "performance.log", "write";
  • permission java.io.FilePermission "photon", "read";
  • permission java.io.FilePermission "photon", "write";
  • permission java.io.FilePermission "plugin.xml", "read";
  • permission java.io.FilePermission "plugin.xml", "write";
  • permission java.io.FilePermission "plugin_customization.ini", "read";
  • permission java.io.FilePermission "plugin_customization.ini", "write";
  • permission java.io.FilePermission "pref_store.ini", "read";
  • permission java.io.FilePermission "pref_store.ini", "write";
  • permission java.io.FilePermission "preferences", "read";
  • permission java.io.FilePermission "preferences", "write";
  • permission java.io.FilePermission "qnx", "read";
  • permission java.io.FilePermission "qnx", "write";
  • permission java.io.FilePermission "solaris", "read";
  • permission java.io.FilePermission "solaris", "write";
  • permission java.io.FilePermission "true", "read";
  • permission java.io.FilePermission "true", "write";
  • permission java.io.FilePermission "unknown", "read";
  • permission java.io.FilePermission "unknown", "write";
  • permission java.io.FilePermission "win32", "read";
  • permission java.io.FilePermission "win32", "write";
  • permission java.io.FilePermission "x86", "read";
  • permission java.io.FilePermission "x86", "write";
  • permission java.io.FilePermission "x86_64", "read";
  • permission java.io.FilePermission "x86_64", "write";
  • permission java.util.PropertyPermission "user.dir", "read";


Conclusion:


DoPrivileged location: Line# 195 void initializeDerivedConfigurationLocations( ) Permission: java.util.PropertyPermission "osgi.manifest.cache", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String )

CODE
private static void initializeDerivedConfigurationLocations() { if (System.getProperty(PROP_MANIFEST_CACHE) == null) System.getProperties().put(PROP_MANIFEST_CACHE, getConfigurationFile(MANIFESTS_DIR).getAbsolutePath()); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "osgi.manifest.cache", "read";


Conclusion:


DoPrivileged location: Line# 196 void initializeDerivedConfigurationLocations( ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( ) Permission: java.util.PropertyPermission "*", "read,write" Primordial/java.util.Properties java.lang.System.getProperties( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( )

CODE
private static void initializeDerivedConfigurationLocations() { if (System.getProperty(PROP_MANIFEST_CACHE) == null) System.getProperties().put(PROP_MANIFEST_CACHE, getConfigurationFile(MANIFESTS_DIR).getAbsolutePath()); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • permission java.util.PropertyPermission "*", "read,write";
  • permission java.util.PropertyPermission "user.dir", "read";


Conclusion:


DoPrivileged location: Line# 132 void initializeLocations( ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( ) Permission: java.util.PropertyPermission "user.home", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String )

CODE
/** * Initializes the Location objects for the LocationManager. */ public static void initializeLocations() { // do install location initialization first since others may depend on it // assumes that the property is already set installLocation = buildLocation(PROP_INSTALL_AREA, null, null, true); Location temp = buildLocation(PROP_USER_AREA_DEFAULT, null, "", false); //$NON-NLS-1$ URL defaultLocation = temp == null ? null : temp.getURL(); if (defaultLocation == null) defaultLocation = buildURL(new File(System.getProperty(PROP_USER_HOME), "user").getAbsolutePath(), true); //$NON-NLS-1$ userLocation = buildLocation(PROP_USER_AREA, defaultLocation, "", false); //$NON-NLS-1$ temp = buildLocation(PROP_INSTANCE_AREA_DEFAULT, null, "", false); //$NON-NLS-1$ defaultLocation = temp == null ? null : temp.getURL(); if (defaultLocation == null) defaultLocation = buildURL(new File(System.getProperty(PROP_USER_DIR), "workspace").getAbsolutePath(), true); //$NON-NLS-1$ instanceLocation = buildLocation(PROP_INSTANCE_AREA, defaultLocation, "", false); //$NON-NLS-1$ mungeConfigurationLocation(); // compute a default but it is very unlikely to be used since main will have computed everything temp = buildLocation(PROP_CONFIG_AREA_DEFAULT, null, "", false); //$NON-NLS-1$ defaultLocation = temp == null ? null : temp.getURL(); if (defaultLocation == null) defaultLocation = buildURL(computeDefaultConfigurationLocation(), true); configurationLocation = buildLocation(PROP_CONFIG_AREA, defaultLocation, "", false); //$NON-NLS-1$ // get the parent location based on the system property. This will have been set on the // way in either by the caller/user or by main. There will be no parent location if we are not // cascaded. URL parentLocation = computeSharedConfigurationLocation(); if (parentLocation != null && !parentLocation.equals(configurationLocation.getURL())) { Location parent = new BasicLocation(null, parentLocation, true); ((BasicLocation) configurationLocation).setParent(parent); } initializeDerivedConfigurationLocations(); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • permission java.util.PropertyPermission "user.dir", "read";
  • permission java.util.PropertyPermission "user.home", "read";


Conclusion:


DoPrivileged location: Line# 138 void initializeLocations( ) Permission: java.io.FilePermission "???file???", "read" Primordial/java.lang.String java.io.File.getAbsolutePath( ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String ) Primordial/java.lang.String java.io.File.getAbsolutePath( )

CODE
/** * Initializes the Location objects for the LocationManager. */ public static void initializeLocations() { // do install location initialization first since others may depend on it // assumes that the property is already set installLocation = buildLocation(PROP_INSTALL_AREA, null, null, true); Location temp = buildLocation(PROP_USER_AREA_DEFAULT, null, "", false); //$NON-NLS-1$ URL defaultLocation = temp == null ? null : temp.getURL(); if (defaultLocation == null) defaultLocation = buildURL(new File(System.getProperty(PROP_USER_HOME), "user").getAbsolutePath(), true); //$NON-NLS-1$ userLocation = buildLocation(PROP_USER_AREA, defaultLocation, "", false); //$NON-NLS-1$ temp = buildLocation(PROP_INSTANCE_AREA_DEFAULT, null, "", false); //$NON-NLS-1$ defaultLocation = temp == null ? null : temp.getURL(); if (defaultLocation == null) defaultLocation = buildURL(new File(System.getProperty(PROP_USER_DIR), "workspace").getAbsolutePath(), true); //$NON-NLS-1$ instanceLocation = buildLocation(PROP_INSTANCE_AREA, defaultLocation, "", false); //$NON-NLS-1$ mungeConfigurationLocation(); // compute a default but it is very unlikely to be used since main will have computed everything temp = buildLocation(PROP_CONFIG_AREA_DEFAULT, null, "", false); //$NON-NLS-1$ defaultLocation = temp == null ? null : temp.getURL(); if (defaultLocation == null) defaultLocation = buildURL(computeDefaultConfigurationLocation(), true); configurationLocation = buildLocation(PROP_CONFIG_AREA, defaultLocation, "", false); //$NON-NLS-1$ // get the parent location based on the system property. This will have been set on the // way in either by the caller/user or by main. There will be no parent location if we are not // cascaded. URL parentLocation = computeSharedConfigurationLocation(); if (parentLocation != null && !parentLocation.equals(configurationLocation.getURL())) { Location parent = new BasicLocation(null, parentLocation, true); ((BasicLocation) configurationLocation).setParent(parent); } initializeDerivedConfigurationLocations(); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.io.FilePermission "???file???", "read";
  • permission java.util.PropertyPermission "user.dir", "read";


Conclusion:


DoPrivileged location: Line# 108 void mungeConfigurationLocation( ) Permission: java.util.PropertyPermission "osgi.configuration.area", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String )

CODE
private static void mungeConfigurationLocation() { // if the config property was set, munge it for backwards compatibility. String location = System.getProperty(PROP_CONFIG_AREA); if (location != null) { location = buildURL(location, false).toExternalForm(); if (location.endsWith(".cfg")) { //$NON-NLS-1$ int index = location.lastIndexOf('/'); location = location.substring(0, index + 1); } if (!location.endsWith("/")) //$NON-NLS-1$ location += "/"; //$NON-NLS-1$ System.getProperties().put(PROP_CONFIG_AREA, location); } }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "osgi.configuration.area", "read";


Conclusion:


DoPrivileged location: Line# 117 void mungeConfigurationLocation( ) Permission: java.util.PropertyPermission "*", "read,write" Primordial/java.util.Properties java.lang.System.getProperties( )

CODE
private static void mungeConfigurationLocation() { // if the config property was set, munge it for backwards compatibility. String location = System.getProperty(PROP_CONFIG_AREA); if (location != null) { location = buildURL(location, false).toExternalForm(); if (location.endsWith(".cfg")) { //$NON-NLS-1$ int index = location.lastIndexOf('/'); location = location.substring(0, index + 1); } if (!location.endsWith("/")) //$NON-NLS-1$ location += "/"; //$NON-NLS-1$ System.getProperties().put(PROP_CONFIG_AREA, location); } }
Tainted variable reference trace:

Permission Requirements:

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


Conclusion:


DoPrivileged location: Line# 190 java.lang.String substituteVar( java.lang.String, java.lang.String, java.lang.String ) Permission: java.util.PropertyPermission "user.dir", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String, java.lang.String ) Permission: java.util.PropertyPermission "user.home", "read" Primordial/java.lang.String java.lang.System.getProperty( java.lang.String, java.lang.String )

CODE
private static String substituteVar(String source, String var, String prop) { String value = System.getProperty(prop, ""); //$NON-NLS-1$ return value + source.substring(var.length()); }
Tainted variable reference trace:

Permission Requirements:

  • permission java.util.PropertyPermission "user.dir", "read";
  • permission java.util.PropertyPermission "user.home", "read";


Conclusion: