Merge "Control use of dex2oat64 by device property"
diff --git a/private/bootstat.te b/private/bootstat.te
index da3179b..016292e 100644
--- a/private/bootstat.te
+++ b/private/bootstat.te
@@ -15,6 +15,7 @@
   -bootanim
   -bootstat
   -dumpstate
+  userdebug_or_eng(`-incidentd')
   -init
   -recovery
   -shell
diff --git a/private/file_contexts b/private/file_contexts
index 75e9585..218bb51 100644
--- a/private/file_contexts
+++ b/private/file_contexts
@@ -515,7 +515,7 @@
 # Misc data
 /data/misc/adb(/.*)?            u:object_r:adb_keys_file:s0
 /data/misc/apexdata(/.*)?       u:object_r:apex_module_data_file:s0
-/data/misc/apexdata/com.android.permission(/.*)?    u:object_r:apex_permission_data_file:s0
+/data/misc/apexdata/com\.android\.permission(/.*)?    u:object_r:apex_permission_data_file:s0
 /data/misc/apexdata/com\.android\.wifi(/.*)?    u:object_r:apex_wifi_data_file:s0
 /data/misc/apexrollback(/.*)?   u:object_r:apex_rollback_data_file:s0
 /data/misc/apns(/.*)?           u:object_r:radio_data_file:s0
@@ -608,8 +608,8 @@
 # Apex data directories
 /data/misc_de/[0-9]+/apexdata(/.*)?       u:object_r:apex_module_data_file:s0
 /data/misc_ce/[0-9]+/apexdata(/.*)?       u:object_r:apex_module_data_file:s0
-/data/misc_de/[0-9]+/apexdata/com.android.permission(/.*)?  u:object_r:apex_permission_data_file:s0
-/data/misc_ce/[0-9]+/apexdata/com.android.permission(/.*)?  u:object_r:apex_permission_data_file:s0
+/data/misc_de/[0-9]+/apexdata/com\.android\.permission(/.*)?  u:object_r:apex_permission_data_file:s0
+/data/misc_ce/[0-9]+/apexdata/com\.android\.permission(/.*)?  u:object_r:apex_permission_data_file:s0
 /data/misc_de/[0-9]+/apexdata/com\.android\.wifi(/.*)?  u:object_r:apex_wifi_data_file:s0
 /data/misc_ce/[0-9]+/apexdata/com\.android\.wifi(/.*)?  u:object_r:apex_wifi_data_file:s0
 
diff --git a/private/incidentd.te b/private/incidentd.te
index c379fa2..405684a 100644
--- a/private/incidentd.te
+++ b/private/incidentd.te
@@ -168,6 +168,14 @@
   get_prop(incidentd, serialno_prop)
 ')
 
+# Read ro.boot.bootreason, persist.sys.boot.bootreason
+# This is used to track reports from lab testing devices
+userdebug_or_eng(`
+  get_prop(incidentd, bootloader_boot_reason_prop);
+  get_prop(incidentd, system_boot_reason_prop);
+  get_prop(incidentd, last_boot_reason_prop);
+')
+
 ###
 ### neverallow rules
 ###