Additional operation check when enabling read logs. am: 605a44fe93

Change-Id: I6b91438709189302d4afe64d3d5dfe28fadd513d
This commit is contained in:
Alex Buynytskyy 2020-04-04 04:08:31 +00:00 committed by Automerger Merge Worker
commit 5cbdc3153c
2 changed files with 5 additions and 9 deletions

View file

@ -53,7 +53,6 @@ namespace vold {
namespace {
constexpr const char* kDump = "android.permission.DUMP";
constexpr const char* kDataUsageStats = "android.permission.LOADER_USAGE_STATS";
static binder::Status error(const std::string& msg) {
PLOG(ERROR) << msg;
@ -920,11 +919,9 @@ binder::Status VoldNativeService::unmountIncFs(const std::string& dir) {
binder::Status VoldNativeService::setIncFsMountOptions(
const ::android::os::incremental::IncrementalFileSystemControlParcel& control,
bool enableReadLogs) {
auto status = CheckPermission(kDataUsageStats);
if (!status.isOk()) {
return status;
}
ENFORCE_SYSTEM_OR_ROOT;
auto status = Ok();
auto incfsControl = IncFs_CreateControl(dup(control.cmd.get()), dup(control.pendingReads.get()),
dup(control.log.get()));
if (auto error = IncFs_SetOptions(

View file

@ -39,11 +39,10 @@ binder::Status Exception(uint32_t code, const std::string& msg) {
}
binder::Status CheckPermission(const char* permission) {
pid_t pid;
uid_t uid;
int32_t pid;
int32_t uid;
if (checkCallingPermission(String16(permission), reinterpret_cast<int32_t*>(&pid),
reinterpret_cast<int32_t*>(&uid))) {
if (checkCallingPermission(String16(permission), &pid, &uid)) {
return Ok();
} else {
return Exception(binder::Status::EX_SECURITY,