# ==============================================
# Policy File of /system/bin/mtkrild Executable File

# ==============================================
# Common SEPolicy Rule
# ==============================================

typeattribute mtkrild mtkimsapdomain;
set_prop(mtkrild, vendor_mtk_logmuch_prop)

# For sim property
set_prop(mtkrild, vendor_mtk_cdma_prop)

# Date : WK18.16
# Operation: P migration
# Purpose: Allow mtkrild to get/set vendor_mtk_vsim_prop
set_prop(mtkrild, vendor_mtk_vsim_prop)

# Date : WK18.25
# Operation: P migration
# Purpose: Allow mtkrild to get/set vendor_mtk_ims_prop
set_prop(mtkrild, vendor_mtk_ims_prop)
