summaryrefslogtreecommitdiff
path: root/core/jni/fd_utils.cpp
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2019-01-24 06:54:57 -0800
committerandroid-build-merger <android-build-merger@google.com>2019-01-24 06:54:57 -0800
commitb5a3c59d3a38b362e674623feb5af6bd1dce14c3 (patch)
tree78f99b83c7d4784f24127e9657b9fa32937c25e3 /core/jni/fd_utils.cpp
parent34269e4b7428eea535a548c3cdcb05060ccca4f9 (diff)
parent4d3a2f95c639af11b35e65cc7b342ec9b5413d7a (diff)
Merge "Add jar files from the runtime APEX in the whitelist."
am: 4d3a2f95c6 Change-Id: I78c60b3a378298531a7ef219ae0930965ddfb64d
Diffstat (limited to 'core/jni/fd_utils.cpp')
-rw-r--r--core/jni/fd_utils.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/core/jni/fd_utils.cpp b/core/jni/fd_utils.cpp
index 0ed8c0c97738..2aaf2f0a2bbe 100644
--- a/core/jni/fd_utils.cpp
+++ b/core/jni/fd_utils.cpp
@@ -71,6 +71,7 @@ bool FileDescriptorWhitelist::IsAllowed(const std::string& path) const {
return true;
}
+ // Framework jars are allowed.
static const char* kFrameworksPrefix = "/system/framework/";
static const char* kJarSuffix = ".jar";
if (android::base::StartsWith(path, kFrameworksPrefix)
@@ -78,6 +79,13 @@ bool FileDescriptorWhitelist::IsAllowed(const std::string& path) const {
return true;
}
+ // Jars from the runtime apex are allowed.
+ static const char* kRuntimeApexPrefix = "/apex/com.android.runtime/javalib/";
+ if (android::base::StartsWith(path, kRuntimeApexPrefix)
+ && android::base::EndsWith(path, kJarSuffix)) {
+ return true;
+ }
+
// Whitelist files needed for Runtime Resource Overlay, like these:
// /system/vendor/overlay/framework-res.apk
// /system/vendor/overlay-subdir/pg/framework-res.apk