Simplify permitted-path construction

The white list of permitted directories is applied for every
classloader namespace by libnativeloader. LoadedApk no longer
needs to do that.

Add mDataDir to permitted paths in the case if for any reason
it is outside of the whitelisted dirs.

Bug: http://b/28639227
Change-Id: I5b61ac64e281ecee3e3e9b1fe56cf04dc6ee7b25
This commit is contained in:
Dimitry Ivanov
2016-05-10 10:51:40 -07:00
parent 046f2c80ae
commit eb96b00382

View File

@@ -466,11 +466,7 @@ public final class LoadedApk {
final boolean isBundledApp = mApplicationInfo.isSystemApp()
&& !mApplicationInfo.isUpdatedSystemApp();
// Apps are allowed to open any native library under /data
// TODO (dimitry):This is something which could be limited to apps own directory
// later on but currently there are number of apps relying on this.
// (see http://b/27588281 and http://b/26954419 for examples)
String libraryPermittedPath = "/data";
String libraryPermittedPath = mDataDir;
if (isBundledApp) {
// This is necessary to grant bundled apps access to
// libraries located in subdirectories of /system/lib