aboutsummaryrefslogtreecommitdiffstats
path: root/roots.h
diff options
context:
space:
mode:
authorPat Erley <perley@cyngn.com>2016-01-13 11:37:39 -0800
committerGerrit Code Review <gerrit@cyanogenmod.org>2016-01-28 15:20:24 -0800
commitc7610f2aee2291584d92cad2184a34f4402ea000 (patch)
treecbdb27a06e1a0ec5f5533d379d9d12d9f88e60ab /roots.h
parentacfc03463b7fca50f6b176fb1d10aa735aeb2c9d (diff)
downloadbootable_recovery-c7610f2aee2291584d92cad2184a34f4402ea000.zip
bootable_recovery-c7610f2aee2291584d92cad2184a34f4402ea000.tar.gz
bootable_recovery-c7610f2aee2291584d92cad2184a34f4402ea000.tar.bz2
recovery: Fix recursive rm wipe of data
Android 6 re-introduced MCS/MLS SELinux contexts. Unforunately, this broke our previous SELinux model for walking /data and unlinking everything but media. Fix this by mounting /data with a temporary SELinux context that works with the previous model. Ticket: CYNGNOS-1747 Change-Id: Id87ad3bb357102c3a8bd7c1417183d788ef858a0
Diffstat (limited to 'roots.h')
-rw-r--r--roots.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/roots.h b/roots.h
index addb142..2140363 100644
--- a/roots.h
+++ b/roots.h
@@ -30,6 +30,8 @@ Volume* volume_for_path(const char* path);
// success (volume is mounted).
int ensure_volume_mounted(Volume* v, bool force_rw=false);
int ensure_path_mounted(const char* path, bool force_rw=false);
+// Above, plus override SELinux default context
+int remount_for_wipe(const char* path);
// Similar to ensure_path_mounted, but allows one to specify the mount_point.
int ensure_path_mounted_at(const char* path, const char* mount_point, bool force_rw=false);