1c3d898d87
Android R launching devices and newer must not ship with debugfs mounted. For Android S launching devices and newer, debugfs must only be mounted in userdebug/eng builds by init(for boot time initializations) and dumpstate(for grabbing debug information from debugfs). This patch adds a neverallow statement that prevents processes other than init from being provided access to mount debugfs in non-user builds when the flag PRODUCT_SET_DEBUGFS_RESTRICTIONS is set to true. Test: make with/without PRODUCT_SET_DEBUGFS_RESTRICTIONS Bug: 184381659 Change-Id: I289f2d25662a78678929e29f83cb31cebd8ca737
39 lines
1.6 KiB
Makefile
39 lines
1.6 KiB
Makefile
# Command to turn collection of policy files into a policy.conf file to be
|
|
# processed by checkpolicy
|
|
define transform-policy-to-conf
|
|
@mkdir -p $(dir $@)
|
|
$(hide) $(M4) --fatal-warnings $(PRIVATE_ADDITIONAL_M4DEFS) \
|
|
-D mls_num_sens=$(PRIVATE_MLS_SENS) -D mls_num_cats=$(PRIVATE_MLS_CATS) \
|
|
-D target_build_variant=$(PRIVATE_TARGET_BUILD_VARIANT) \
|
|
-D target_with_dexpreopt=$(WITH_DEXPREOPT) \
|
|
-D target_arch=$(PRIVATE_TGT_ARCH) \
|
|
-D target_with_asan=$(PRIVATE_TGT_WITH_ASAN) \
|
|
-D target_with_native_coverage=$(PRIVATE_TGT_WITH_NATIVE_COVERAGE) \
|
|
-D target_full_treble=$(PRIVATE_SEPOLICY_SPLIT) \
|
|
-D target_compatible_property=$(PRIVATE_COMPATIBLE_PROPERTY) \
|
|
-D target_treble_sysprop_neverallow=$(PRIVATE_TREBLE_SYSPROP_NEVERALLOW) \
|
|
-D target_enforce_sysprop_owner=$(PRIVATE_ENFORCE_SYSPROP_OWNER) \
|
|
-D target_exclude_build_test=$(PRIVATE_EXCLUDE_BUILD_TEST) \
|
|
-D target_requires_insecure_execmem_for_swiftshader=$(PRODUCT_REQUIRES_INSECURE_EXECMEM_FOR_SWIFTSHADER) \
|
|
-D target_enforce_debugfs_restriction=$(PRIVATE_ENFORCE_DEBUGFS_RESTRICTION) \
|
|
$(PRIVATE_TGT_RECOVERY) \
|
|
-s $(PRIVATE_POLICY_FILES) > $@
|
|
endef
|
|
.KATI_READONLY := transform-policy-to-conf
|
|
|
|
###########################################################
|
|
## Collect file_contexts files into a single tmp file with m4
|
|
##
|
|
## $(1): list of file_contexts files
|
|
## $(2): filename into which file_contexts files are merged
|
|
###########################################################
|
|
|
|
define _merge-fc-files
|
|
$(2): $(1) $(M4)
|
|
$(hide) mkdir -p $$(dir $$@)
|
|
$(hide) $(M4) --fatal-warnings -s $(1) > $$@
|
|
endef
|
|
|
|
define merge-fc-files
|
|
$(eval $(call _merge-fc-files,$(1),$(2)))
|
|
endef
|