Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8fa420c2 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Stop invoking secdiscard when deleting password data" into pi-dev

parents 9015d243 841fd433
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -185,7 +185,6 @@ interface IStorageManager {
    long getCacheSizeBytes(String volumeUuid, int uid) = 76;
    long getAllocatableBytes(String volumeUuid, int flags, String callingPackage) = 77;
    void allocateBytes(String volumeUuid, long bytes, int flags, String callingPackage) = 78;
    void secdiscard(in String path) = 79;
    void runIdleMaintenance() = 80;
    void abortIdleMaintenance() = 81;
    void runIdleMaintenance() = 79;
    void abortIdleMaintenance() = 80;
}
+0 −10
Original line number Diff line number Diff line
@@ -50,7 +50,6 @@ import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.ServiceManager.ServiceNotFoundException;
import android.os.SystemProperties;
import android.os.UserHandle;
import android.provider.Settings;
import android.system.ErrnoException;
import android.system.Os;
@@ -1322,15 +1321,6 @@ public class StorageManager {
        }
    }

    /** {@hide} */
    public void secdiscard(String path) {
        try {
            mStorageManager.secdiscard(path);
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
    }

    /** {@hide} */
    public static boolean isUserKeyUnlocked(int userId) {
        if (sStorageManager == null) {
+0 −11
Original line number Diff line number Diff line
@@ -2583,17 +2583,6 @@ class StorageManagerService extends IStorageManager.Stub
        }
    }

    @Override
    public void secdiscard(String path) {
        enforcePermission(android.Manifest.permission.STORAGE_INTERNAL);

        try {
            mVold.secdiscard(path);
        } catch (Exception e) {
            Slog.wtf(TAG, e);
        }
    }

    class AppFuseMountScope extends AppFuseBridge.MountScope {
        boolean opened = false;

+4 −3
Original line number Diff line number Diff line
@@ -495,10 +495,11 @@ class LockSettingsStorage {
        String path = getSynthenticPasswordStateFilePathForUser(userId, handle, name);
        File file = new File(path);
        if (file.exists()) {
            try {
                mContext.getSystemService(StorageManager.class).secdiscard(file.getAbsolutePath());
            try (RandomAccessFile raf = new RandomAccessFile(path, "rws")) {
                final int fileSize = (int) raf.length();
                raf.write(new byte[fileSize]);
            } catch (Exception e) {
                Slog.w(TAG, "Failed to secdiscard " + path, e);
                Slog.w(TAG, "Failed to zeroize " + path, e);
            } finally {
                file.delete();
            }