aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--contrib/android/perms.c9
-rw-r--r--contrib/android/perms.h2
2 files changed, 10 insertions, 1 deletions
diff --git a/contrib/android/perms.c b/contrib/android/perms.c
index 9a7a93f5..9ae8e586 100644
--- a/contrib/android/perms.c
+++ b/contrib/android/perms.c
@@ -297,6 +297,7 @@ errcode_t android_configure_fs(ext2_filsys fs, char *src_dir, char *target_out,
struct selabel_handle *sehnd = NULL;
/* Retrieve file contexts */
+#if !defined(__ANDROID__)
if (nopt > 0) {
sehnd = selabel_open(SELABEL_CTX_FILE, seopts, nopt);
if (!sehnd) {
@@ -306,6 +307,14 @@ errcode_t android_configure_fs(ext2_filsys fs, char *src_dir, char *target_out,
return -EINVAL;
}
}
+#else
+ sehnd = selinux_android_file_context_handle();
+ if (!sehnd) {
+ com_err(__func__, -EINVAL,
+ _("while opening android file_contexts"));
+ return -EINVAL;
+ }
+#endif
/* Load the FS config */
if (fs_config_file) {
diff --git a/contrib/android/perms.h b/contrib/android/perms.h
index 9955bb56..c404cb90 100644
--- a/contrib/android/perms.h
+++ b/contrib/android/perms.h
@@ -25,7 +25,7 @@ static inline errcode_t android_configure_fs(ext2_filsys fs,
# else
# include <selinux/selinux.h>
# include <selinux/label.h>
-# if !defined(HOST)
+# if defined(__ANDROID__)
# include <selinux/android.h>
# endif
# include <private/android_filesystem_config.h>