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

Commit 1414c61d authored by Luke Huang's avatar Luke Huang
Browse files

Add new configuration loading path for apex module

Add some additional loading paths which is used for libs permission
xml providing from apex module.

Bug: 145474221
Bug: 139397529
Test: build
Test: manual test with Cronet
Change-Id: I02541eb2d4808d69ab8cb2d6a48cf8aaa39c86dc
parent 41b92037
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import android.content.pm.FeatureInfo;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Environment;
import android.os.FileUtils;
import android.os.Process;
import android.os.SystemProperties;
import android.os.Trace;
@@ -498,6 +499,19 @@ public class SystemConfig {
                Environment.getSystemExtDirectory(), "etc", "sysconfig"), ALLOW_ALL);
        readPermissions(Environment.buildPath(
                Environment.getSystemExtDirectory(), "etc", "permissions"), ALLOW_ALL);

        // Skip loading configuration from apex if it is not a system process.
        if (!isSystemProcess()) {
            return;
        }
        // Read configuration of libs from apex module.
        // TODO: Use a solid way to filter apex module folders?
        for (File f: FileUtils.listFilesOrEmpty(Environment.getApexDirectory())) {
            if (f.isFile() || f.getPath().contains("@")) {
                continue;
            }
            readPermissions(Environment.buildPath(f, "etc", "permissions"), ALLOW_LIBS);
        }
    }

    @VisibleForTesting