blob: eb8034adf216a8922f40dee35be46cf6819411ab [file] [log] [blame]
# ==============================================
# Policy File of /vendor/bin/nvram_daemon Executable File
# ==============================================
# Type Declaration
# ==============================================
type nvram_daemon_exec, exec_type, file_type, vendor_file_type;
type nvram_daemon, domain;
# ==============================================
# Common SEPolicy Rule
# ==============================================
init_daemon_domain(nvram_daemon)
# Date : WK14.31
# Operation : Migration
# Purpose : the device is used to store Nvram backup data that can not be lost.
allow nvram_daemon nvram_device:blk_file rw_file_perms;
allow nvram_daemon nvdata_device:blk_file rw_file_perms;
# Date : WK14.35
# Operation : chown folder and file permission
# Purpose : ensure nvram user can access nvram file normally when upgrade from KK/KK.AOSP to L.
allow nvram_daemon nvram_data_file:dir create_dir_perms;
allow nvram_daemon nvram_data_file:file create_file_perms;
allow nvram_daemon nvram_data_file:lnk_file { r_file_perms unlink };
allow nvram_daemon nvdata_file:lnk_file r_file_perms;
allow nvram_daemon nvdata_file:dir create_dir_perms;
allow nvram_daemon nvdata_file:file create_file_perms;
allow nvram_daemon als_ps_device:chr_file r_file_perms;
allow nvram_daemon mtk-adc-cali_device:chr_file rw_file_perms;
allow nvram_daemon gsensor_device:chr_file r_file_perms;
allow nvram_daemon gyroscope_device:chr_file r_file_perms;
# Purpose: for property set
allow nvram_daemon self:capability { fowner chown fsetid };
# Purpose: for backup
allow nvram_daemon nvram_device:chr_file rw_file_perms;
allow nvram_daemon pro_info_device:chr_file rw_file_perms;
allow nvram_daemon block_device:dir search;
# Purpose: for nand project
allow nvram_daemon mtd_device:dir search;
allow nvram_daemon mtd_device:chr_file rw_file_perms;
# Purpose: for fstab parser
allow nvram_daemon kmsg_device:chr_file w_file_perms;
allow nvram_daemon proc_lk_env:file rw_file_perms;
# Purpose: property set
set_prop(nvram_daemon, vendor_mtk_service_nvram_init_prop)
# Purpose: copy /fstab*
allow nvram_daemon rootfs:dir r_dir_perms;
allow nvram_daemon rootfs:file r_file_perms;
# Date : WK18.16
# Operation: P migration
# Purpose: Allow nvram_daemon to get vendor_mtk_tel_switch_prop
get_prop(nvram_daemon, vendor_mtk_tel_switch_prop)
get_prop(nvram_daemon, vendor_mtk_rat_config_prop)
# Date : WK18.21
# Operation: P migration
# Purpose: Allow nvram_daemon to search /mnt/vendor/nvdata for fstab
allow nvram_daemon mnt_vendor_file:dir search;
allow nvram_daemon sysfs_boot_mode:file r_file_perms;
# Allow ReadDefaultFstab().
read_fstab(nvram_daemon)
# Purpose: Wifi NVRAM ConnFem Kernel node access
allow nvram_daemon connfem_device:chr_file rw_file_perms;
# Purpose: Allow nvram_daemon to search /mnt/vendor/nvdata for fstab
allow nvram_daemon mnt_vendor_file:dir search;
allow nvram_daemon self:capability { fowner chown fsetid };
allow nvram_daemon sysfs_boot_mode:file r_file_perms;
allow nvram_daemon proc_cmdline:file r_file_perms;
allow nvram_daemon sysfs_dt_firmware_android:dir r_dir_perms;
allow nvram_daemon sysfs_dt_firmware_android:file r_file_perms;
# Purpose: Allow to search metadata files
allow nvram_daemon metadata_file:dir search;
# Allow nvram_daemon to search gsi_metadata
allow nvram_daemon gsi_metadata_file:dir search;