Reference vulnerability info on sysfs
Signed-off-by: Munjoo Kim <munjoo.kim@samsung.com>
Change-Id: I336b818b5d8061294457a723fe982453fc29002b
diff --git a/hostsidetests/security/src/android/security/cts/KernelConfigTest.java b/hostsidetests/security/src/android/security/cts/KernelConfigTest.java
index 0bb15eb..2f38889 100644
--- a/hostsidetests/security/src/android/security/cts/KernelConfigTest.java
+++ b/hostsidetests/security/src/android/security/cts/KernelConfigTest.java
@@ -181,6 +181,13 @@
private String getHardware() throws Exception {
String hardware = "DEFAULT";
String[] pathList = new String[]{"/proc/cpuinfo", "/sys/devices/soc0/soc_id"};
+ String mitigationInfoMeltdown = mDevice.pullFileContents("/sys/devices/system/cpu/vulnerabilities/meltdown");
+ String mitigationInfoSpectreV2 = mDevice.pullFileContents("/sys/devices/system/cpu/vulnerabilities/spectre_v2");
+
+ if (mitigationInfoMeltdown.length() > 0 && mitigationInfoSpectreV2.length() > 0 &&
+ !mitigationInfoMeltdown.contains("Vulnerable") &&
+ !mitigationInfoSpectreV2.contains("Vulnerable"))
+ return "VULN_SAFE";
for (String nodeInfo : pathList) {
if (!mDevice.doesFileExist(nodeInfo))
@@ -215,6 +222,7 @@
private Map<String, String[]> hardwareMitigations = new HashMap<String, String[]>() {
{
+ put("VULN_SAFE", null);
put("EXYNOS990", null);
put("EXYNOS980", null);
put("EXYNOS850", null);