Merge "Add conscrypt updatable certificates."

This commit is contained in:
Miguel Aranda
2022-12-21 23:20:38 +00:00
committed by Gerrit Code Review

View File

@@ -18,6 +18,7 @@ package android.security.net.config;
import android.os.Environment; import android.os.Environment;
import android.os.UserHandle; import android.os.UserHandle;
import java.io.File; import java.io.File;
/** /**
@@ -32,11 +33,20 @@ public final class SystemCertificateSource extends DirectoryCertificateSource {
private final File mUserRemovedCaDir; private final File mUserRemovedCaDir;
private SystemCertificateSource() { private SystemCertificateSource() {
super(new File(System.getenv("ANDROID_ROOT") + "/etc/security/cacerts")); super(getDirectory());
File configDir = Environment.getUserConfigDirectory(UserHandle.myUserId()); File configDir = Environment.getUserConfigDirectory(UserHandle.myUserId());
mUserRemovedCaDir = new File(configDir, "cacerts-removed"); mUserRemovedCaDir = new File(configDir, "cacerts-removed");
} }
private static File getDirectory() {
// TODO(miguelaranda): figure out correct code path.
File updatable_dir = new File("/apex/com.android.conscrypt/cacerts");
if (updatable_dir.exists()) {
return updatable_dir;
}
return new File(System.getenv("ANDROID_ROOT") + "/etc/security/cacerts");
}
public static SystemCertificateSource getInstance() { public static SystemCertificateSource getInstance() {
return NoPreloadHolder.INSTANCE; return NoPreloadHolder.INSTANCE;
} }