From a2ef115c0f0528fd1d2a1c4834394d4e18f1ccb1 Mon Sep 17 00:00:00 2001 From: Songchun Fan Date: Tue, 10 Mar 2020 09:53:07 -0700 Subject: [PATCH] add permission requirement for java writeData method Write data to an installation file requires INSTALL_PACKAGES permission. Test: builds BUG: 149299379 Change-Id: I8e6d6681cc26b748375cc1a0569033a18c3bb670 --- api/system-current.txt | 2 +- core/java/android/service/dataloader/DataLoaderService.java | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/api/system-current.txt b/api/system-current.txt index d9029490e4d13..9448fb136b8c2 100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -9977,7 +9977,7 @@ package android.service.dataloader { } public static final class DataLoaderService.FileSystemConnector { - method public void writeData(@NonNull String, long, long, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; + method @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void writeData(@NonNull String, long, long, @NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; } } diff --git a/core/java/android/service/dataloader/DataLoaderService.java b/core/java/android/service/dataloader/DataLoaderService.java index 0b9a8aff26e89..d4db79eda7625 100644 --- a/core/java/android/service/dataloader/DataLoaderService.java +++ b/core/java/android/service/dataloader/DataLoaderService.java @@ -18,6 +18,7 @@ package android.service.dataloader; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.RequiresPermission; import android.annotation.SystemApi; import android.app.Service; import android.content.Intent; @@ -206,6 +207,7 @@ public abstract class DataLoaderService extends Service { * @throws IOException if trouble opening the file for writing, such as lack of disk space * or unavailable media. */ + @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES) public void writeData(@NonNull String name, long offsetBytes, long lengthBytes, @NonNull ParcelFileDescriptor incomingFd) throws IOException { try {