diff options
-rw-r--r-- | fs_mgr/Android.mk | 4 | ||||
-rw-r--r-- | fs_mgr/fs_mgr.c | 10 |
2 files changed, 12 insertions, 2 deletions
diff --git a/fs_mgr/Android.mk b/fs_mgr/Android.mk index 7c66f6ab0..48b11b690 100644 --- a/fs_mgr/Android.mk +++ b/fs_mgr/Android.mk @@ -3,6 +3,10 @@ LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) +ifeq ($(HAVE_SELINUX),true) +LOCAL_CFLAGS += -DHAVE_SELINUX +endif + LOCAL_SRC_FILES:= fs_mgr.c LOCAL_C_INCLUDES := $(LOCAL_PATH)/include diff --git a/fs_mgr/fs_mgr.c b/fs_mgr/fs_mgr.c index 99adb81d9..361cf5ca6 100644 --- a/fs_mgr/fs_mgr.c +++ b/fs_mgr/fs_mgr.c @@ -147,8 +147,14 @@ static int parse_flags(char *flags, struct flag_list *fl, char **key_loc, /* It's not a known flag, so it must be a filesystem specific * option. Add it to fs_options if it was passed in. */ - strlcat(fs_options, p, fs_options_len); - strlcat(fs_options, ",", fs_options_len); +#ifndef HAVE_SELINUX + /* Drop context option from non-selinux builds */ + if (strncmp(p,"context=",8)) +#endif + { + strlcat(fs_options, p, fs_options_len); + strlcat(fs_options, ",", fs_options_len); + } } else { /* fs_options was not passed in, so if the flag is unknown * it's an error. |