From 6d3822d4fe56e720cb558d6669a28faa91ecdee7 Mon Sep 17 00:00:00 2001 From: Bowgo Tsai <bowgotsai@google.com> Date: Wed, 29 Nov 2017 16:15:55 +0800 Subject: [PATCH] Add /odm/etc/selinux/odm_property_contexts Bug: 64240127 Test: normal boot and recovery boot a device Change-Id: Ibd71219f60644e57370c0293decf11d82f1cb35c Merged-In: Ibd71219f60644e57370c0293decf11d82f1cb35c (cherry picked from commit 1f717b1001c358ceae7d04c6a0d828f57595fdea) --- Android.mk | 45 ++++++++++++++++++++++++++++++++++++++++++- private/file_contexts | 1 + 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/Android.mk b/Android.mk index db527a3dd..24176e84d 100644 --- a/Android.mk +++ b/Android.mk @@ -255,7 +255,8 @@ ifdef BOARD_ODM_SEPOLICY_DIRS LOCAL_REQUIRED_MODULES += \ odm_sepolicy.cil \ odm_file_contexts \ - odm_seapp_contexts + odm_seapp_contexts \ + odm_property_contexts endif include $(BUILD_PHONY_PACKAGE) @@ -1175,6 +1176,34 @@ built_vendor_pc := $(LOCAL_BUILT_MODULE) vendor_pcfiles := vendor_property_contexts.tmp := +################################## +include $(CLEAR_VARS) +LOCAL_MODULE := odm_property_contexts +LOCAL_MODULE_CLASS := ETC +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_PATH := $(TARGET_OUT_ODM)/etc/selinux + +include $(BUILD_SYSTEM)/base_rules.mk + +odm_pcfiles := $(call build_policy, property_contexts, $(BOARD_ODM_SEPOLICY_DIRS)) + +odm_property_contexts.tmp := $(intermediates)/odm_property_contexts.tmp +$(odm_property_contexts.tmp): PRIVATE_PC_FILES := $(odm_pcfiles) +$(odm_property_contexts.tmp): PRIVATE_ADDITIONAL_M4DEFS := $(LOCAL_ADDITIONAL_M4DEFS) +$(odm_property_contexts.tmp): $(odm_pcfiles) + @mkdir -p $(dir $@) + $(hide) m4 -s $(PRIVATE_ADDITIONAL_M4DEFS) $(PRIVATE_PC_FILES) > $@ + + +$(LOCAL_BUILT_MODULE): $(odm_property_contexts.tmp) $(HOST_OUT_EXECUTABLES)/property_info_checker + @mkdir -p $(dir $@) + $(hide) cp -f $< $@ + $(hide) $(HOST_OUT_EXECUTABLES)/property_info_checker $@ + +built_odm_pc := $(LOCAL_BUILT_MODULE) +odm_pcfiles := +odm_property_contexts.tmp := + ################################## include $(CLEAR_VARS) @@ -1202,6 +1231,19 @@ include $(BUILD_SYSTEM)/base_rules.mk $(LOCAL_BUILT_MODULE): $(built_vendor_pc) $(hide) cp -f $< $@ +################################## +include $(CLEAR_VARS) +LOCAL_MODULE := odm_property_contexts.recovery +LOCAL_MODULE_STEM := odm_property_contexts +LOCAL_MODULE_CLASS := ETC +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT) + +include $(BUILD_SYSTEM)/base_rules.mk + +$(LOCAL_BUILT_MODULE): $(built_odm_pc) + $(hide) cp -f $< $@ + ################################## include $(CLEAR_VARS) @@ -1526,6 +1568,7 @@ built_vendor_cil := built_vendor_pc := built_vendor_sc := built_odm_cil := +built_odm_pc := built_odm_sc := built_plat_sc := built_precompiled_sepolicy := diff --git a/private/file_contexts b/private/file_contexts index 2671ccaf6..52761bc3e 100644 --- a/private/file_contexts +++ b/private/file_contexts @@ -340,6 +340,7 @@ /(odm|vendor/odm)/etc/selinux/odm_sepolicy.cil u:object_r:sepolicy_file:s0 /(odm|vendor/odm)/etc/selinux/odm_file_contexts u:object_r:file_contexts_file:s0 /(odm|vendor/odm)/etc/selinux/odm_seapp_contexts u:object_r:seapp_contexts_file:s0 +/(odm|vendor/odm)/etc/selinux/odm_property_contexts u:object_r:property_contexts_file:s0 ############################# # Product files -- GitLab