universal7885: Inital port to A20/A20e

Addtitionally, Add device-specific trees as well

Change-Id: Icbbc31c063b18bce3702d0b208a0aee78148a7c0
Signed-off-by: roynatech2544 <whiteshell2544@naver.com>
This commit is contained in:
roynatech2544 2021-10-21 22:38:36 +09:00
commit f8eb3e1258
No known key found for this signature in database
GPG key ID: 9675C32163D88D30
169 changed files with 2440 additions and 62 deletions

View file

@ -0,0 +1,7 @@
type abox, domain, mlstrustedsubject;
type abox_exec, exec_type, file_type, vendor_file_type;
init_daemon_domain(abox)
allow abox sysfs_abox_writable:file rw_file_perms;
allow abox self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl;

View file

@ -0,0 +1 @@
allow adbd proc_last_kmsg:file r_file_perms;

View file

@ -0,0 +1 @@
allow apexd sysfs_virtual:file rw_file_perms;

View file

@ -0,0 +1 @@
get_prop(appdomain, exported_camera_prop);

View file

@ -0,0 +1 @@
get_prop(bootanim, userspace_reboot_exported_prop)

View file

@ -0,0 +1,2 @@
allow cbd factoryprop_efs_file:file r_file_perms;
allow cbd sysfs_info:file r_file_perms;

View file

@ -0,0 +1,4 @@
get_prop(crash_dump, hwservicemanager_prop)
get_prop(crash_dump, exported_camera_prop)
allow crash_dump app_data_file:file read;

View file

@ -0,0 +1,8 @@
# /dev/m2m1shot_scaler0
type m2m1shot_device, dev_type;
# gps
type gps_device, dev_type;
# /dev/goodix_fp
type goodix_device, dev_type;

View file

@ -0,0 +1,16 @@
# domain.te
# /sys/kernel/debug/mali
allow domain debugfs_mali:dir search;
# /sys/kernel/debug/mali/mem
allow domain debugfs_mali_mem:dir search;
# /sys/kernel/debug/dma_buf
allow domain debugfs_ion_dma:dir search;
# /sys/kernel/debug/ion
allow domain debugfs_ion:dir search;
# /sys/kernel/debug/tracing/trace_marker
allow domain debugfs_trace_marker:file getattr;

View file

@ -0,0 +1,52 @@
### efs types
type radio_factoryapp_efs_file, file_type;
type factoryprop_efs_file, file_type;
type sensor_factoryapp_efs_file, file_type;
type factorymode_factoryapp_efs_file, file_type;
type baro_delta_factoryapp_efs_file, file_type;
# gps
type gps_socket, file_type;
# debugfs types
type debugfs_mali, fs_type, debugfs_type;
type debugfs_mali_mem, fs_type, debugfs_type;
type debugfs_ion, fs_type, debugfs_type;
type debugfs_ion_dma, fs_type, debugfs_type;
# proc
type proc_extra, fs_type, proc_type;
type proc_reset_reason, fs_type, proc_type;
type proc_swapiness, fs_type, proc_type;
# data types
type display_vendor_data_file, file_type, data_file_type;
type fingerprintd_vendor_data_file, data_file_type, file_type;
type mediadrm_data_file, file_type, data_file_type;
type nfc_vendor_data_file, file_type, data_file_type;
# sysfs types
type sysfs_abox_writable, sysfs_type, rw_fs_type, fs_type;
type sysfs_batteryinfo_charger_writable, sysfs_type, rw_fs_type, fs_type;
type sysfs_camera_writable, sysfs_type, rw_fs_type, fs_type;
type sysfs_decon, sysfs_type, r_fs_type, fs_type;
type sysfs_gpu, sysfs_type, r_fs_type, fs_type;
type sysfs_socinfo, sysfs_type, r_fs_type, fs_type;
type sysfs_v4l, sysfs_type, r_fs_type, fs_type;
type sysfs_v4l_mfc, sysfs_type, r_fs_type, fs_type;
type sysfs_v4l_smfc, sysfs_type, r_fs_type, fs_type;
type sysfs_v4l_fimc, sysfs_type, r_fs_type, fs_type;
type sysfs_graphics, fs_type, sysfs_type;
type sysfs_multipdp, fs_type, sysfs_type, mlstrustedobject;
type sysfs_sec, fs_type, sysfs_type, mlstrustedobject;
type sysfs_gps, fs_type, sysfs_type, mlstrustedobject;
type sysfs_brightness, fs_type, sysfs_type, mlstrustedobject;
type sysfs_virtual, fs_type, sysfs_type, mlstrustedobject;
type sysfs_charger, fs_type, sysfs_type, mlstrustedobject;
type sysfs_modem, fs_type, sysfs_type, mlstrustedobject;
type sysfs_camera, fs_type, sysfs_type, mlstrustedobject;
type sysfs_mmc_host_writable, sysfs_type, rw_fs_type, fs_type;
type sysfs_ss_writable, sysfs_type, rw_fs_type, fs_type;
type sysfs_usb_writable, sysfs_type, rw_fs_type, fs_type;
type sysfs_gpu_writable, sysfs_type, rw_fs_type, fs_type;
type sysfs_info, sysfs_type, r_fs_type, fs_type;

View file

@ -0,0 +1,117 @@
####################################
# Devices
/dev/mali[0-9]* u:object_r:gpu_device:s0
/dev/umts_ipc0 u:object_r:radio_device:s0
/dev/fimg2d u:object_r:video_device:s0
/dev/sec-nfc u:object_r:nfc_device:s0
/dev/goodix_fp u:object_r:goodix_device:s0
/dev/cpuset(/.*)? u:object_r:cgroup:s0
# camera
/dev/m2m1shot_scaler0 u:object_r:m2m1shot_device:s0
# usb
/dev/android_ssusbcon(/.*)? u:object_r:usb_device:s0
/dev/mtp_usb* u:object_r:mtp_device:s0
/dev/usb(/.*)? u:object_r:usb_device:s0
# adbroot and storaged
/dev/stune(/.*)? u:object_r:cgroup:s0
# blocks
/dev/block/zram0 u:object_r:swap_block_device:s0
/dev/block/platform/.+/by-name/(omr|OMR)? u:object_r:omr_block_device:s0
/dev/block/platform/.+/by-name/(misc|MISC)? u:object_r:misc_block_device:s0
/dev/block/platform/.+/by-name/(cpefs|CPEFS)? u:object_r:efs_block_device:s0
/dev/block/platform/.+/by-name/(efs|EFS)? u:object_r:efs_block_device:s0
/dev/block/platform/.+/by-name/(radio|RADIO)? u:object_r:radio_block_device:s0
/dev/block/platform/.+/by-name/(cache|CACHE)? u:object_r:cache_block_device:s0
/dev/block/platform/.+/by-name/(system|SYSTEM)? u:object_r:system_block_device:s0
/dev/block/platform/.+/by-name/(userdata|USERDATA)? u:object_r:userdata_block_device:s0
/dev/block/platform/.+/by-name/(keyrefuge|KEYREFUGE)? u:object_r:keyrefuge_block_device:s0
/dev/block/platform/.+/by-name/(persistent|PERSISTENT)? u:object_r:frp_block_device:s0
/dev/block/platform/.+/by-name/(boot|BOOT)? u:object_r:boot_block_device:s0
/dev/block/platform/.+/by-name/(recovery|RECOVERY)? u:object_r:recovery_block_device:s0
####################################
# efs
/mnt/vendor/cpefs(/.*)? u:object_r:efs_file:s0
####################################
# data files
/data/vendor/nfc(/.*)? u:object_r:nfc_vendor_data_file:s0
/data/misc/radio(/.*)? u:object_r:radio_data_file:s0
# drm
/data/vendor/mediadrm(/.*)? u:object_r:mediadrm_data_file:s0
# camera
/data/camera(/.*)? u:object_r:camera_data_file:s0
####################################
# sysfs files
# charger
/sys/devices/battery/power_supply(/.*) u:object_r:sysfs_charger:s0
/sys/devices/platform/13840000\.i2c/i2c-10/10-003d/s2mu004-charger/power_supply/s2mu004-charger(/.*) u:object_r:sysfs_charger:s0
/sys/devices/platform/13840000\.i2c/i2c-10/10-003d/s2mu004-charger/power_supply/otg(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13840000\.i2c/i2c-10/10-003d/s2mu004-charger/power_supply/s2mu004-charger(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13830000\.i2c/i2c-9/9-003b/power_supply/s2mu004-fuelgauge(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13840000\.i2c/i2c-10/10-003d/s2mu004-muic/power_supply/muic-manager(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13830000\.i2c/i2c-8/8-003b/power_supply/s2mu106-fuelgauge(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13830000\.i2c/i2c-8/8-003c/power_supply/s2mu106-usbpd(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13840000\.i2c/i2c-9/9-003d/s2mu106-powermeter/power_supply/s2mu106_pmeter(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13840000\.i2c/i2c-9/9-003d/s2mu106-muic/power_supply/muic-manager(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13840000\.i2c/i2c-9/9-003d/s2mu106-charger/power_supply/otg(/.*)? u:object_r:sysfs_charger:s0
/sys/devices/platform/13840000\.i2c/i2c-9/9-003d/s2mu106-charger/power_supply/s2mu106-charger(/.*)? u:object_r:sysfs_charger:s0
# virtual
/sys/devices/virtual(/.*)? u:object_r:sysfs_virtual:s0
# iio
/sys/bus/iio/devices(/.*)? u:object_r:sysfs_iio:s0
# Backlight/Notification LED control
/sys/class/backlight/panel/brightness u:object_r:sysfs_graphics:s0
/sys/class/backlight/panel/max_brightness u:object_r:sysfs_graphics:s0
# rild
/sys/devices/virtual/misc/multipdp(/.*) u:object_r:sysfs_multipdp:s0
# input
/sys/devices/platform/gpio_keys/input/input12(/.*)? u:object_r:sysfs_input:s0
# modem
/sys/module/modem_ctrl_ss310ap/parameters/ds_detect u:object_r:sysfs_modem:s0
# gps
/sys/devices/soc0/machine u:object_r:sysfs_sec_gps:s0
/sys/devices/soc0/revision u:object_r:sysfs_sec_gps:s0
/dev/gnss_ipc u:object_r:gps_device:s0
# bt
/dev/scsc_h4_0 u:object_r:bt_device:s0
# ZRAM
/sys/devices/virtual/block/zram0/mm_stat u:object_r:sysfs_zram:s0
### VENDOR
/(vendor|system/vendor)/lib(64)?/hw/gralloc\.[a-z0-9]*\.so u:object_r:same_process_hal_file:s0
/(vendor|system/vendor)/lib(64)?/libion_exynos\.so u:object_r:same_process_hal_file:s0
/(vendor|system/vendor)/bin/main_abox u:object_r:abox_exec:s0
/(vendor|system/vendor)/bin/wlbtd u:object_r:wlbtd_exec:s0
/(vendor|system/vendor)/bin/hw/gpsd u:object_r:gpsd_exec:s0
/(vendor|system/vendor)/bin/hw/macloader u:object_r:macloader_exec:s0
/(vendor|system/vendor)/bin/mcDriverDaemon u:object_r:tee_exec:s0
/(vendor|system/vendor)/bin/hw/android\.hardware\.power@[0-9]\.[0-9]-service\.universal7884B u:object_r:hal_power_default_exec:s0
/(vendor|system/vendor)/bin/hw/android\.hardware\.vibrator@[0-9]\.[0-9]-service\.samsung u:object_r:hal_vibrator_default_exec:s0
/(vendor|system/vendor)/bin/hw/android\.hardware\.drm@[0-9]\.[0-9]-service\.clearkey u:object_r:hal_drm_clearkey_exec:s0
/(vendor|system/vendor)/bin/hw/android\.hardware\.drm@[0-9]\.[0-9]-service\.widevine u:object_r:hal_drm_widevine_exec:s0
/(vendor|system/vendor)/bin/hw/android\.hardware\.keymaster@[0-9]\.[0-9]-service\.samsung u:object_r:hal_keymaster_default_exec:s0
/(vendor|system/vendor)/bin/hw/android\.hardware\.nfc@[0-9]\.[0-9]-service\.samsung u:object_r:hal_nfc_default_exec:s0
/(vendor|system/vendor)/bin/hw/vendor\.samsung\.hardware\.gnss@[0-9]\.[0-9]-service u:object_r:hal_gnss_default_exec:s0

View file

@ -0,0 +1,4 @@
allow fsck cache_file:dir getattr;
allow fsck sysfs_battery:dir search;
allow fsck tmpfs:blk_file getattr;
allow fsck efs_block_device:blk_file rw_file_perms;

View file

@ -0,0 +1,58 @@
# DEBUGFS
genfscon debugfs /mali/ u:object_r:debugfs_mali:s0
genfscon debugfs /mali/mem/ u:object_r:debugfs_mali_mem:s0
# ion debugfs
genfscon debugfs /ion/ u:object_r:debugfs_ion:s0
genfscon debugfs /dma_buf u:object_r:debugfs_ion_dma:s0
# PROC
genfscon proc /extra u:object_r:proc_extra:s0
genfscon proc /reset_reason u:object_r:proc_reset_reason:s0
genfscon proc /sys/vm/swappiness u:object_r:proc_swapiness:s0
# SYSFS
# class
genfscon sysfs /class/video4linux u:object_r:sysfs_v4l:s0
genfscon sysfs /class/input/input1 u:object_r:sysfs_input:s0
# devices
genfscon sysfs /devices/platform/10000.mif_pdata/sim/ds_detect u:object_r:sysfs_sim_writable:s0
genfscon sysfs /module/scsc_bt/parameters/bluetooth_address u:object_r:sysfs_bt_writable:s0
genfscon sysfs /devices/platform/11ce0000.speedy/i2c-7/7-0000/s2mpu08-rtc/rtc u:object_r:sysfs_rtc:s0
genfscon sysfs /devices/platform/11ce0000.speedy/i2c-6/6-0000/s2mpu08-rtc/rtc u:object_r:sysfs_rtc:s0
genfscon sysfs /devices/platform/11ce0000.speedy/i2c-7/7-0003/input/input11 u:object_r:sysfs_touchscreen_writable:s0
genfscon sysfs /devices/platform/13930000.hsi2c/i2c-5/5-0048/input/ u:object_r:sysfs_touchscreen_writable:s0
genfscon sysfs /devices/platform/14870000.dsim/backlight/panel u:object_r:sysfs_graphics:s0
genfscon sysfs /devices/platform/14a50000.abox/service u:object_r:sysfs_abox_writable:s0
genfscon sysfs /devices/platform/14860000.decon_f u:object_r:sysfs_decon:s0
genfscon sysfs /devices/platform/14410000.fimc_is_sensor/video4linux u:object_r:sysfs_v4l_fimc:s0
genfscon sysfs /devices/platform/14430000.fimc_is_sensor/video4linux u:object_r:sysfs_v4l_fimc:s0
genfscon sysfs /devices/platform/14400000.fimc_is_sensor/video4linux u:object_r:sysfs_v4l_fimc:s0
genfscon sysfs /devices/platform/14440000.fimc_is/video4linux u:object_r:sysfs_v4l_fimc:s0
genfscon sysfs /devices/platform/12c30000.mfc0/video4linux u:object_r:sysfs_v4l_mfc:s0
genfscon sysfs /devices/platform/12c00000.smfc/video4linux u:object_r:sysfs_v4l_smfc:s0
genfscon sysfs /devices/platform/battery/power_supply/battery u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/platform/battery/power_supply/battery/batt_capacity_max u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/platform/battery/power_supply/battery/status u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/platform/battery/power_supply/battery/type u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/platform/battery/power_supply/ac/type u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/platform/battery/power_supply/wireless/type u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/platform/battery/power_supply/ps/type u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/platform/battery/power_supply/ps/status u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/soc0/soc_id u:object_r:sysfs_socinfo:s0
genfscon sysfs /devices/system/chip-id/revision u:object_r:sysfs_ss_writable:s0
genfscon sysfs /devices/virtual/android_usb/android0 u:object_r:sysfs_android_usb:s0
genfscon sysfs /devices/virtual/camera u:object_r:sysfs_camera:s0
genfscon sysfs /devices/virtual/camera/rear/fw_update u:object_r:sysfs_camera_writable:s0
genfscon sysfs /devices/virtual/camera/rear/ssrm_camera_info u:object_r:sysfs_camera_writable:s0
genfscon sysfs /devices/virtual/camera/flash/rear_flash u:object_r:sysfs_camera_writable:s0
genfscon sysfs /firmware/devicetree/base/model_info-system_rev u:object_r:sysfs_info:s0
genfscon sysfs /kernel/gpu/ u:object_r:sysfs_gpu:s0
genfscon sysfs /kernel/gpu/gpu_max_clock u:object_r:sysfs_gpu_writable:s0
genfscon sysfs /kernel/gpu/gpu_min_clock u:object_r:sysfs_gpu_writable:s0

View file

@ -0,0 +1,12 @@
r_dir_file(gpsd, sysfs_sec_gps);
allow gpsd sysfs_gps_writable:file rw_file_perms;
allow gpsd sysfs_wake_lock:file rw_file_perms;
allow gpsd self:capability net_raw;
allow gpsd self:capability2 block_suspend;
allow gpsd bt_device:chr_file rw_file_perms;
allow gpsd gps_device:chr_file rw_file_perms;
allow gpsd gpsd_exec:file execute_no_trans;

View file

@ -0,0 +1 @@
get_prop(gpuservice, graphics_config_prop)

View file

@ -0,0 +1,14 @@
allow hal_audio_default property_socket:sock_file write;
allow hal_audio_default rild:unix_stream_socket connectto;
allow hal_audio_default system_suspend_hwservice:hwservice_manager find;
# /efs/maxim/rdc_cal
allow hal_audio_default efs_file:file r_file_perms;
allow hal_audio_default efs_file:dir search;
allow hal_audio_default imei_efs_file:dir search;
allow hal_audio_default imei_efs_file:file r_file_perms;
get_prop(hal_audio_default, vendor_radio_prop)
allow hal_audio_default init:unix_stream_socket connectto;

View file

@ -0,0 +1 @@
allow hal_bluetooth_default vendor_firmware_file:dir r_dir_perms;

View file

@ -0,0 +1,14 @@
vndbinder_use(hal_camera_default)
allow hal_camera_default vndbinder_device:chr_file r_file_perms;
allow hal_camera_default hal_graphics_mapper_hwservice:hwservice_manager find;
allow hal_camera_default hal_graphics_composer_default:fd use;
allow hal_camera_default sysfs_virtual:dir search;
allow hal_camera_default sysfs_virtual:file rw_file_perms;
allow hal_camera_default sysfs_camera:dir search;
allow hal_camera_default sysfs_camera:file rw_file_perms;
get_prop(hal_camera_default, exported_camera_prop)
binder_call(hal_camera_default, system_server)
binder_call(system_server, hal_camera_default)

View file

@ -0,0 +1,14 @@
# policy for /vendor/bin/hw/android.hardware.drm clearkey service
type hal_drm_clearkey, domain;
type hal_drm_clearkey_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_drm_clearkey)
hal_server_domain(hal_drm_clearkey, hal_drm)
vndbinder_use(hal_drm_clearkey)
allow hal_drm_clearkey { appdomain -isolated_app }:fd use;
allow hal_drm_clearkey mediadrm_data_file:dir create_dir_perms;
allow hal_drm_clearkey mediadrm_data_file:file create_file_perms;

View file

@ -0,0 +1,21 @@
type hal_drm_widevine, domain;
type hal_drm_widevine_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_drm_widevine)
hal_server_domain(hal_drm_widevine, hal_drm)
vndbinder_use(hal_drm_widevine)
allow hal_drm_widevine mediacodec:fd use;
allow hal_drm_widevine { appdomain -isolated_app }:fd use;
allow hal_drm_widevine hal_allocator_server:fd use;
allow hal_drm_widevine mediadrm_data_file:dir create_dir_perms;
allow hal_drm_widevine mediadrm_data_file:file create_file_perms;
allow hal_drm_widevine vendor_data_file:dir create_dir_perms;
allow hal_drm_widevine vendor_data_file:file create_file_perms;
allow hal_drm_widevine cpk_efs_file:file r_file_perms;
allow hal_drm_widevine efs_file:dir search;

View file

@ -0,0 +1,7 @@
typeattribute hal_fingerprint_default data_between_core_and_vendor_violators;
allow hal_fingerprint_default fingerprintd_data_file:dir write;
allow hal_fingerprint_default sysfs_virtual:dir search;
allow hal_fingerprint_default sysfs_virtual:file r_file_perms;
allow hal_fingerprint_default goodix_device:chr_file rw_file_perms;

View file

@ -0,0 +1,3 @@
allow hal_gatekeeper_default efs_file:dir search;
allow hal_gatekeeper_default efs_file:file rw_file_perms;
allow hal_gatekeeper_default mnt_vendor_file:dir search;

View file

@ -0,0 +1,19 @@
# cgroups tasks
allow hal_gnss_default cgroup:file getattr;
# /data/vendor/gps
allow hal_gnss_default gps_vendor_data_file:dir rw_dir_perms;
allow hal_gnss_default gps_vendor_data_file:file create_file_perms;
allow hal_gnss_default gps_vendor_data_file:fifo_file create_file_perms;
# /mnt/vendor
allow hal_gnss_default mnt_vendor_file:dir search;
# vndbinder
allow hal_gnss_default vndbinder_device:chr_file rw_file_perms;
# Connect to socket
allow hal_gnss_default gpsd:unix_stream_socket connectto;
add_hwservice(hal_gnss_default, hal_gnss_hwservice)
allow hal_gnss_default fwk_sensor_hwservice:hwservice_manager find;

View file

@ -0,0 +1,7 @@
allow hal_graphics_allocator_default cgroup:file rw_file_perms;
vndbinder_use(hal_graphics_allocator_default)
# /sys/kernel/debug/dma_buf/footprint/[0-9]+
allow hal_graphics_allocator_default debugfs_ion_dma:dir r_dir_perms;
allow hal_graphics_allocator_default debugfs_ion_dma:file r_file_perms;

View file

@ -0,0 +1,40 @@
hal_client_domain(hal_graphics_composer_default, hal_graphics_allocator);
vndbinder_use(hal_graphics_composer_default)
allow hal_graphics_composer_default self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl;
allow hal_graphics_composer_default vendor_surfaceflinger_vndservice:service_manager { add find };
# cgroup tasks
allow hal_graphics_composer_default cgroup:file getattr;
# /data/vendor/log/hwc
allow hal_graphics_composer_default log_vendor_data_file:dir rw_dir_perms;
allow hal_graphics_composer_default log_vendor_data_file:file create_file_perms;
# /dev/g2d
allow hal_graphics_composer_default graphics_device:chr_file rw_file_perms;
# /dev/video50
allow hal_graphics_composer_default video_device:chr_file rw_file_perms;
# /sys/devices/soc0/revision
allow hal_graphics_composer_default sysfs_socinfo:dir r_dir_perms;
allow hal_graphics_composer_default sysfs_socinfo:file r_file_perms;
# /sys/kernel/debug/dma_buf/footprint/[0-9]+
allow hal_graphics_composer_default debugfs_ion_dma:dir r_dir_perms;
allow hal_graphics_composer_default debugfs_ion_dma:file r_file_perms;
allow hal_graphics_composer_default sysfs_decon:dir r_dir_perms;
allow hal_graphics_composer_default sysfs_decon:file r_file_perms;
allow hal_graphics_composer_default sysfs_ss_writable:dir r_dir_perms;
allow hal_graphics_composer_default sysfs_ss_writable:file r_file_perms;
get_prop(hal_graphics_composer_default, vendor_hwc_prop)
# /dev/ion/
allow hal_graphics_composer_default ion_device:chr_file rw_file_perms;

View file

@ -0,0 +1,7 @@
r_dir_file(hal_health_default, sysfs_charger)
allow hal_health_default sysfs_charger:file rw_file_perms;
allow hal_health_default sysfs_battery:dir r_dir_perms;
allow hal_health_default sysfs_battery:file r_file_perms;
allow hal_health_default sysfs_battery_writable:dir search;
allow hal_health_default sysfs_battery_writable:file r_file_perms;

View file

@ -0,0 +1,4 @@
allow hal_light_default sysfs_graphics:dir search;
allow hal_light_default sysfs_graphics:file rw_file_perms;
allow hal_light_default sysfs_virtual:dir search;
allow hal_light_default sysfs_virtual:file rw_file_perms;

View file

@ -0,0 +1,2 @@
allow hal_lineage_fastcharge_default sysfs_virtual:dir search;
allow hal_lineage_fastcharge_default sysfs_virtual:file rw_file_perms;

View file

@ -0,0 +1,2 @@
allow hal_lineage_touch_default sysfs_virtual:dir search;
allow hal_lineage_touch_default sysfs_virtual:file rw_file_perms;

View file

@ -0,0 +1,5 @@
r_dir_file(hal_memtrack_default, debugfs_mali)
r_dir_file(hal_memtrack_default, debugfs_mali_mem)
r_dir_file(hal_memtrack_default, debugfs_ion)
r_dir_file(hal_memtrack_default, debugfs_ion_dma)
r_dir_file(hal_memtrack_default, sysfs_gpu)

View file

@ -0,0 +1,4 @@
allow hal_nfc_default nfc_vendor_data_file:dir w_dir_perms;
allow hal_nfc_default nfc_vendor_data_file:file create_file_perms;
set_prop(hal_nfc_default, vendor_nfc_prop)

View file

@ -0,0 +1,6 @@
allow hal_power_default sysfs_graphics:dir search;
allow hal_power_default sysfs_graphics:file r_file_perms;
allow hal_power_default sysfs_input:file r_file_perms;
allow hal_power_default sysfs_virtual:dir r_dir_perms;
allow hal_power_default sysfs_virtual:file r_file_perms;
allow hal_power_default sysfs_touchscreen_writable:dir r_dir_perms;

View file

@ -0,0 +1,12 @@
allow hal_sensors_default sysfs_iio:file r_file_perms;
allow hal_sensors_default sysfs_iio:lnk_file read;
allow hal_sensors_default sysfs_virtual:dir r_dir_perms;
allow hal_sensors_default sysfs_virtual:file rw_file_perms;
allow hal_sensors_default sysfs_virtual:lnk_file read;
allow hal_sensors_default baro_delta_factoryapp_efs_file:file r_file_perms;
allow hal_sensors_default sysfs_input:file read;
allow hal_sensors_default sysfs_spi_writeable:file rw_file_perms;
# yas_lib
allow hal_sensors_default vendor_data_file:file create_file_perms;
allow hal_sensors_default vendor_data_file:dir create_dir_perms;

View file

@ -0,0 +1 @@
r_dir_file(hal_thermal_default, sysfs_virtual)

View file

@ -0,0 +1,2 @@
allow hal_vibrator_default sysfs_virtual:dir search;
allow hal_vibrator_default sysfs_virtual:file rw_file_perms;

View file

@ -0,0 +1,7 @@
set_prop(hal_wifi_default, vendor_wlan_prop);
get_prop(hal_wifi_default, vendor_wifi_prop)
allow hal_wifi_default conn_vendor_data_file:dir search;
allow hal_wifi_default conn_vendor_data_file:file rw_file_perms;
allow hal_wifi_default wifi_vendor_data_file:dir search;

View file

@ -0,0 +1,2 @@
allow hal_wifi_hostapd_default sysfs_virtual:dir search;
allow hal_wifi_hostapd_default sysfs_virtual:lnk_file r_file_perms;

View file

@ -0,0 +1,3 @@
type hal_sec_radio_hwservice, hwservice_manager_type;
type hal_sec_radio_bridge_hwservice, hwservice_manager_type;
type hal_sec_radio_channel_hwservice, hwservice_manager_type;

View file

@ -0,0 +1,4 @@
vendor.samsung.hardware.gnss::ISehGnss u:object_r:hal_gnss_hwservice:s0
vendor.samsung.hardware.radio::ISehRadio u:object_r:hal_sec_radio_hwservice:s0
vendor.samsung.hardware.radio.bridge::ISehBridge u:object_r:hal_sec_radio_bridge_hwservice:s0
vendor.samsung.hardware.radio.channel::ISehChannel u:object_r:hal_sec_radio_channel_hwservice:s0

View file

@ -0,0 +1,48 @@
allow init rild:unix_stream_socket connectto;
allow init self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl;
allow init socket_device:sock_file create_file_perms;
allow init sysfs_devices_system_cpu:file write;
allow init vendor_data_file:fifo_file write;
allow init vendor_data_file:file append;
allow init dnsproxyd_socket:sock_file write;
allow init fwk_sensor_hwservice:hwservice_manager find;
allow init hwservicemanager:binder call;
allow init netd:unix_stream_socket connectto;
allow init fwmarkd_socket:sock_file write;
allow init nfc:binder call;
allow init nfc_device:chr_file ioctl;
allow init efs_file:dir mounton;
allow init efs_block_device:lnk_file relabelto;
allow init tmpfs:lnk_file create;
allow init sysfs_virtual:file create_file_perms;
allow init sysfs_virtual:lnk_file { read };
allow init sysfs:file setattr;
allow init sysfs_multipdp:file setattr;
allow init sysfs_camera:file setattr;
allow init sysfs_charger:file setattr;
allow init sysfs_input:file setattr;
allow init sysfs_modem:file w_file_perms;
allow init sysfs_battery_writable:file setattr;
allow init sysfs_power_writable:file setattr;
allow init sysfs_graphics:file create_file_perms;
allow init system_server:binder { transfer call };
allow init device:chr_file ioctl;
allow init self:tcp_socket create_socket_perms;
allow init node:tcp_socket node_bind;
allow init port:tcp_socket { name_bind name_connect };
allow init gps_vendor_data_file:fifo_file write;
allow init gps_vendor_data_file:file lock;
allow init socket_device:sock_file create_file_perms;
allow init kernel:system module_request;
allow init proc:file setattr;
allow init proc_swapiness:file write;
allow init proc_extra:file setattr;
allow init proc_reset_reason:file setattr;
allow init proc_swapiness:file open;
allow init self:netlink_generic_socket { bind create getattr read setopt write };
allow init mnt_vendor_file:dir mounton;
unix_socket_connect(init, property, rild)

View file

@ -0,0 +1,12 @@
allow kernel app_efs_file:dir search;
allow kernel app_efs_file:file open;
allow kernel sensor_factoryapp_efs_file:file open;
allow kernel efs_file:dir search;
allow kernel device:chr_file { getattr setattr unlink create };
allow kernel device:dir create_dir_perms;
allow kernel self:capability { sys_rawio mknod };
allow kernel block_device:dir search;
r_dir_file(kernel, sysfs_virtual)

View file

@ -0,0 +1 @@
allow macloader sysfs_virtual:dir search;

View file

@ -0,0 +1,6 @@
# /sys/class/video4linux/video6/name
allow mediacodec sysfs_v4l:dir r_dir_perms;
allow mediacodec sysfs_v4l_mfc:dir search;
allow mediacodec sysfs_v4l_mfc:file r_file_perms;
hal_client_domain(mediacodec, hal_power);

View file

@ -0,0 +1,5 @@
allow netd self:capability sys_module;
allow netd init:tcp_socket rw_socket_perms_no_ioctl;
allow netd sysfs_virtual:dir search;
allow netd sysfs_virtual:file w_file_perms;

View file

@ -0,0 +1,3 @@
allow nfc sec_efs_file:dir search;
allow nfc nfc_vendor_data_file:dir rw_dir_perms;
allow nfc nfc_vendor_data_file:file create_file_perms;

View file

@ -0,0 +1,2 @@
# /dev/mali0
allow platform_app gpu_device:chr_file rw_file_perms;

View file

@ -0,0 +1,8 @@
# /dev/mali0
allow priv_app gpu_device:chr_file rw_file_perms;
allow priv_app debugfs_ion:dir search;
allow priv_app debugfs_mali:dir search;
allow priv_app debugfs_mali_mem:dir search;
allow priv_app sysfs_zram:file r_file_perms;

View file

@ -0,0 +1,14 @@
# modemloader
type modemloader_prop, property_type;
type persist_rmnet_prop, property_type;
type persist_data_df_prop, property_type;
type persist_data_wda_prop, property_type;
type vendor_camera_prop, property_type;
type vendor_factory_prop, property_type;
type vendor_gps_prop, property_type;
type vendor_nfc_prop, property_type;
type vendor_wlbtd_prop, property_type;
type vendor_wlan_prop, property_type;
type vendor_hwc_prop, property_type;

View file

@ -0,0 +1,39 @@
# bluetooth
persist.bluetooth_fw_ver u:object_r:bluetooth_prop:s0
ro.bluetooth.tty u:object_r:bluetooth_prop:s0
wc_transport. u:object_r:bluetooth_prop:s0
# modemloader
hw.revision u:object_r:modemloader_prop:s0
ro.cbd.dt_revision u:object_r:modemloader_prop:s0
ril.cbd.dt_revision u:object_r:modemloader_prop:s0
ro.modemloader.done u:object_r:modemloader_prop:s0
persist.rmnet. u:object_r:persist_rmnet_prop:s0
persist.data.df. u:object_r:persist_data_df_prop:s0
persist.data.wda. u:object_r:persist_data_wda_prop:s0
# CAMERA
persist.vendor.sys.camera. u:object_r:vendor_camera_prop:s0
# GPS
ro.spid.gps. u:object_r:vendor_gps_prop:s0
# NFC
vendor.nfc.fw. u:object_r:vendor_nfc_prop:s0
# RADIO
persist.ril. u:object_r:radio_prop:s0
vendor.gsm. u:object_r:vendor_radio_prop:s0
# FACTORY
ro.factory.factory_binary u:object_r:vendor_factory_prop:s0
# wlbtd
vendor.wlbtd. u:object_r:vendor_wlbtd_prop:s0
# Wlan
vendor.wlan. u:object_r:vendor_wlan_prop:s0
# Hwc
hwc.exynos.vsync_mode u:object_r:vendor_hwc_prop:s0

View file

@ -0,0 +1 @@
binder_call(radio, gpuservice)

View file

@ -0,0 +1,28 @@
allow rild proc_net:file write;
allow rild vendor_data_file:file create_file_perms;
# /dev/umts_ipc0
allow rild radio_device:chr_file ioctl;
allow rild bin_nv_data_efs_file:file create_file_perms;
allow rild radio_vendor_data_file:file create_file_perms;
allow rild radio_vendor_data_file:dir rw_dir_perms;
allow rild proc_qtaguid_stat:file read;
allow rild factoryprop_efs_file:file rw_file_perms;
allow rild init:file getattr;
# binder
allow rild hal_radio_default:binder call;
# audio
allow rild hal_audio_default:dir search;
allow rild hal_audio_default:file r_file_perms;
# hwservice
add_hwservice(rild, hal_sec_radio_hwservice)
add_hwservice(rild, hal_sec_radio_bridge_hwservice)
add_hwservice(rild, hal_sec_radio_channel_hwservice)

View file

@ -0,0 +1 @@
dontaudit secril_config_svc exported3_radio_prop:property_service set;

View file

@ -0,0 +1,5 @@
# /dev/mali0
allow surfaceflinger gpu_device:chr_file rw_file_perms;
# libion_exynos
allow surfaceflinger same_process_hal_file:file rx_file_perms;

View file

@ -0,0 +1,5 @@
# /dev/mali0
allow system_app gpu_device:chr_file rw_file_perms;
allow system_app proc_pagetypeinfo:file r_file_perms;
allow system_app sysfs_virtual:dir search;

View file

@ -0,0 +1,22 @@
# /dev/mali0
allow system_server gpu_device:chr_file rw_file_perms;
# memtrack HAL
allow system_server debugfs_mali:dir r_dir_perms;
allow system_server debugfs_mali:file r_file_perms;
allow system_server debugfs_ion:file r_file_perms;
allow system_server debugfs_mali_mem:file r_file_perms;
allow system_server frp_block_device:blk_file rw_file_perms;
allow system_server sysfs_rtc:file r_file_perms;
get_prop(system_server, vendor_radio_prop)
r_dir_file(system_server, sysfs_virtual)
get_prop(system_server, exported_camera_prop);
get_prop(system_server, userspace_reboot_config_prop)
get_prop(system_server, userspace_reboot_exported_prop)
# allow system_server unlabeled:file { write setattr };

View file

@ -0,0 +1,5 @@
allow tee efs_file:dir r_dir_perms;
allow tee efs_file:file rw_file_perms;
allow tee mnt_vendor_file:dir search;
dontaudit tee system_prop:property_service set;

View file

@ -0,0 +1 @@
allow toolbox ram_device:blk_file rw_file_perms;

View file

@ -0,0 +1 @@
allow ueventd self:capability sys_nice;

View file

@ -0,0 +1,12 @@
typeattribute vendor_init data_between_core_and_vendor_violators;
allow vendor_init proc_swapiness:file rw_file_perms;
allow vendor_init cgroup:file getattr;
allow vendor_init tmpfs:dir { add_name write };
allow vendor_init wifi_data_file:dir { getattr setattr };
allow vendor_init wpa_socket:dir getattr;
allow vendor_init wifi_data_file:dir search;
# mkdir /data/hostapd
allow vendor_init system_data_file:dir create_dir_perms;
# mkdir /data/camera/*
allow vendor_init camera_data_file:dir create_dir_perms;

View file

@ -0,0 +1,4 @@
# /efs
allow vold efs_file:dir r_dir_perms;
allow vold sysfs_virtual:file write;

View file

@ -0,0 +1,15 @@
type wlbtd, domain;
type wlbtd_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(wlbtd);
allow wlbtd conn_vendor_data_file:dir search;
allow wlbtd conn_vendor_data_file:file rw_file_perms;
allow wlbtd self:netlink_generic_socket { create setopt bind getattr read write };
allow wlbtd init:unix_stream_socket connectto;
r_dir_file(wlbtd, sysfs_wifi);
allow wlbtd sysfs_wifi_writable:file rw_file_perms;
set_prop(wlbtd, vendor_wlbtd_prop);

View file

@ -0,0 +1,3 @@
get_prop(zygote, exported_camera_prop);
allow zygote proc_cmdline:file r_file_perms;