##########################
# property service keys
#
#
net.rmnet               u:object_r:net_radio_prop:s0
net.gprs                u:object_r:net_radio_prop:s0
net.ppp                 u:object_r:net_radio_prop:s0
net.qmi                 u:object_r:net_radio_prop:s0
net.lte                 u:object_r:net_radio_prop:s0
net.cdma                u:object_r:net_radio_prop:s0
net.dns                 u:object_r:net_dns_prop:s0
ril.                    u:object_r:radio_prop:s0
ro.ril.                 u:object_r:radio_prop:s0
gsm.                    u:object_r:radio_prop:s0
persist.radio           u:object_r:radio_prop:s0

net.                    u:object_r:system_prop:s0
dev.                    u:object_r:system_prop:s0
ro.runtime.             u:object_r:system_prop:s0
ro.runtime.firstboot    u:object_r:firstboot_prop:s0
hw.                     u:object_r:system_prop:s0
ro.hw.                  u:object_r:system_prop:s0
sys.                    u:object_r:system_prop:s0
sys.audio.              u:object_r:audio_prop:s0
sys.init.perf_lsm_hooks u:object_r:init_perf_lsm_hooks_prop:s0
sys.cppreopt            u:object_r:cppreopt_prop:s0
sys.lpdumpd             u:object_r:lpdumpd_prop:s0
sys.powerctl            u:object_r:powerctl_prop:s0
service.                u:object_r:system_prop:s0
dhcp.                   u:object_r:dhcp_prop:s0
dhcp.bt-pan.result      u:object_r:pan_result_prop:s0
bluetooth.              u:object_r:bluetooth_prop:s0

debug.                  u:object_r:debug_prop:s0
debug.db.               u:object_r:debuggerd_prop:s0
dumpstate.              u:object_r:dumpstate_prop:s0
dumpstate.options       u:object_r:dumpstate_options_prop:s0
init.svc_debug_pid.     u:object_r:init_svc_debug_prop:s0
llk.                    u:object_r:llkd_prop:s0
khungtask.              u:object_r:llkd_prop:s0
ro.llk.                 u:object_r:llkd_prop:s0
ro.khungtask.           u:object_r:llkd_prop:s0
log.                    u:object_r:log_prop:s0
log.tag                 u:object_r:log_tag_prop:s0
log.tag.WifiHAL         u:object_r:wifi_log_prop:s0
ro.log.file_logger.path    u:object_r:log_file_logger_prop:s0 exact string
security.perf_harden    u:object_r:shell_prop:s0
persist.simpleperf.profile_app_uid              u:object_r:shell_prop:s0
persist.simpleperf.profile_app_expiration_time  u:object_r:shell_prop:s0
security.lower_kptr_restrict u:object_r:lower_kptr_restrict_prop:s0
service.adb.root        u:object_r:shell_prop:s0
service.adb.tls.port    u:object_r:adbd_prop:s0
persist.adb.wifi.       u:object_r:adbd_prop:s0
persist.adb.tls_server.enable  u:object_r:system_adbd_prop:s0

persist.audio.          u:object_r:audio_prop:s0
persist.bluetooth.      u:object_r:bluetooth_prop:s0
persist.nfc.            u:object_r:nfc_prop:s0
persist.nfc_cfg.        u:object_r:nfc_prop:s0
persist.debug.          u:object_r:persist_debug_prop:s0
persist.debug.user_mode_emulation u:object_r:system_user_mode_emulation_prop:s0
logd.                   u:object_r:logd_prop:s0
persist.logd.           u:object_r:logd_prop:s0
ro.logd.                u:object_r:logd_prop:s0
persist.logd.audit.rate u:object_r:logd_auditrate_prop:s0
persist.logd.security   u:object_r:device_logging_prop:s0
persist.logd.logpersistd        u:object_r:logpersistd_logging_prop:s0
logd.logpersistd        u:object_r:logpersistd_logging_prop:s0
persist.log.tag         u:object_r:log_tag_prop:s0
persist.mmc.            u:object_r:mmc_prop:s0
persist.netd.stable_secret      u:object_r:netd_stable_secret_prop:s0
persist.pm.mock-upgrade u:object_r:mock_ota_prop:s0
persist.profcollectd.node_id    u:object_r:profcollectd_node_id_prop:s0     exact   string
persist.sys.            u:object_r:system_prop:s0
persist.sys.safemode    u:object_r:safemode_prop:s0
persist.sys.tap_gesture u:object_r:gesture_prop:s0
persist.sys.theme       u:object_r:theme_prop:s0
persist.sys.fflag.override.settings_dynamic_system    u:object_r:dynamic_system_prop:s0
dynamic_system.data_transfer.shared_memory.size       u:object_r:dynamic_system_prop:s0   exact   uint
ro.sys.safemode         u:object_r:safemode_prop:s0
persist.sys.audit_safemode      u:object_r:safemode_prop:s0
persist.sys.dalvik.jvmtiagent   u:object_r:system_jvmti_agent_prop:s0
persist.service.        u:object_r:system_prop:s0
persist.service.bdroid. u:object_r:bluetooth_prop:s0
persist.security.       u:object_r:system_prop:s0
persist.traced.enable   u:object_r:traced_enabled_prop:s0
traced.lazy.            u:object_r:traced_lazy_prop:s0
persist.heapprofd.enable u:object_r:heapprofd_enabled_prop:s0
persist.traced_perf.enable u:object_r:traced_perf_enabled_prop:s0
uprobestats.start_with_config u:object_r:uprobestats_start_with_config_prop:s0
persist.vendor.debug.wifi. u:object_r:persist_vendor_debug_wifi_prop:s0
persist.vendor.overlay.  u:object_r:overlay_prop:s0
ril.cdma.inecmmode      u:object_r:radio_cdma_ecm_prop:s0 exact bool
ro.boot.vendor.overlay.  u:object_r:overlay_prop:s0
ro.boottime.             u:object_r:boottime_prop:s0
ro.serialno             u:object_r:serialno_prop:s0
ro.boot.btmacaddr       u:object_r:bluetooth_prop:s0
ro.boot.serialno        u:object_r:serialno_prop:s0
ro.bt.                  u:object_r:bluetooth_prop:s0
ro.boot.bootreason      u:object_r:bootloader_boot_reason_prop:s0
persist.sys.boot.reason u:object_r:last_boot_reason_prop:s0
sys.boot.reason         u:object_r:system_boot_reason_prop:s0
sys.boot.reason.last    u:object_r:last_boot_reason_prop:s0
pm.                     u:object_r:pm_prop:s0
test.sys.boot.reason    u:object_r:test_boot_reason_prop:s0
test.userspace_reboot.requested u:object_r:userspace_reboot_test_prop:s0
sys.lmk.                u:object_r:system_lmk_prop:s0
sys.trace.              u:object_r:system_trace_prop:s0
wrap.                   u:object_r:zygote_wrap_prop:s0 prefix string
persist.wm.debug.       u:object_r:persist_wm_debug_prop:s0

# Suspend service properties
suspend.max_sleep_time_millis u:object_r:suspend_prop:s0 exact uint
suspend.base_sleep_time_millis u:object_r:suspend_prop:s0 exact uint
suspend.backoff_threshold_count u:object_r:suspend_prop:s0 exact uint
suspend.short_suspend_threshold_millis u:object_r:suspend_prop:s0 exact uint
suspend.sleep_time_scale_factor u:object_r:suspend_prop:s0 exact double
suspend.failed_suspend_backoff_enabled u:object_r:suspend_prop:s0 exact bool
suspend.short_suspend_backoff_enabled u:object_r:suspend_prop:s0 exact bool
suspend.disable_sync_on_suspend u:object_r:suspend_prop:s0 exact bool

# Suspend service debug properties
suspend.debug.wakestats_log.enabled u:object_r:suspend_debug_prop:s0 exact bool

# Fastbootd protocol control property
fastbootd.protocol    u:object_r:fastbootd_protocol_prop:s0 exact enum usb tcp

# adbd protoctl configuration property
service.adb.tcp.port    u:object_r:adbd_config_prop:s0 exact int
service.adb.transport   u:object_r:adbd_config_prop:s0 exact string

# Boolean property set by system server upon boot indicating
# if device is fully owned by organization instead of being
# a personal device.
ro.organization_owned   u:object_r:device_logging_prop:s0

# selinux non-persistent properties
selinux.restorecon_recursive   u:object_r:restorecon_prop:s0

# default property context
*                       u:object_r:default_prop:s0

# data partition encryption properties
vold.                   u:object_r:vold_prop:s0
ro.crypto.              u:object_r:vold_prop:s0

# ro.build.fingerprint is either set in /system/build.prop, or is
# set at runtime by system_server.
ro.build.fingerprint    u:object_r:fingerprint_prop:s0 exact string

ro.persistent_properties.ready  u:object_r:persistent_properties_ready_prop:s0

# ctl properties
ctl.bootanim            u:object_r:ctl_bootanim_prop:s0
ctl.dumpstate           u:object_r:ctl_dumpstate_prop:s0
ctl.fuse_               u:object_r:ctl_fuse_prop:s0
ctl.mdnsd               u:object_r:ctl_mdnsd_prop:s0
ctl.ril-daemon          u:object_r:ctl_rildaemon_prop:s0
ctl.bugreport           u:object_r:ctl_bugreport_prop:s0
ctl.console             u:object_r:ctl_console_prop:s0
ctl.                    u:object_r:ctl_default_prop:s0

# Don't allow uncontrolled access to all services
ctl.sigstop_on$         u:object_r:ctl_sigstop_prop:s0
ctl.sigstop_off$        u:object_r:ctl_sigstop_prop:s0
ctl.start$              u:object_r:ctl_start_prop:s0
ctl.stop$               u:object_r:ctl_stop_prop:s0
ctl.restart$            u:object_r:ctl_restart_prop:s0
ctl.interface_start$    u:object_r:ctl_interface_start_prop:s0
ctl.interface_stop$     u:object_r:ctl_interface_stop_prop:s0
ctl.interface_restart$  u:object_r:ctl_interface_restart_prop:s0
ctl.apex_load$          u:object_r:ctl_apex_load_prop:s0
ctl.apex_unload$        u:object_r:ctl_apex_load_prop:s0

 # Restrict access to starting/stopping adbd
ctl.start$adbd             u:object_r:ctl_adbd_prop:s0
ctl.stop$adbd              u:object_r:ctl_adbd_prop:s0
ctl.restart$adbd           u:object_r:ctl_adbd_prop:s0

# Restrict access to starting/stopping gsid.
ctl.start$gsid          u:object_r:ctl_gsid_prop:s0
ctl.stop$gsid           u:object_r:ctl_gsid_prop:s0
ctl.restart$gsid        u:object_r:ctl_gsid_prop:s0

# Restrict access to stopping apexd.
ctl.stop$apexd          u:object_r:ctl_apexd_prop:s0

# Restrict access to stopping odsign
ctl.stop$odsign         u:object_r:ctl_odsign_prop:s0

# Restrict access to starting media.transcoding.
ctl.start$media.transcoding  u:object_r:ctl_mediatranscoding_prop:s0

# Restrict access to restart dumpstate
ctl.interface_restart$android.hardware.dumpstate u:object_r:ctl_dumpstate_prop:s0

# Restrict access to control snapuserd
ctl.start$snapuserd     u:object_r:ctl_snapuserd_prop:s0
ctl.stop$snapuserd      u:object_r:ctl_snapuserd_prop:s0
ctl.restart$snapuserd   u:object_r:ctl_snapuserd_prop:s0

# NFC properties
nfc.                    u:object_r:nfc_prop:s0

# These properties are not normally set by processes other than init.
# They are only distinguished here for setting by qemu-props on the
# emulator/goldfish.
config.                 u:object_r:config_prop:s0
ro.config.              u:object_r:config_prop:s0
dalvik.                 u:object_r:dalvik_prop:s0
ro.dalvik.              u:object_r:dalvik_prop:s0

# qemu_hw_prop is read/written by both system and vendor.
qemu.hw.mainkeys        u:object_r:qemu_hw_prop:s0 exact string

# qemu_sf_lcd_density_prop is read/written by both system and vendor.
qemu.sf.lcd_density     u:object_r:qemu_sf_lcd_density_prop:s0 exact int

# Shared between system server and wificond
wifi.                   u:object_r:wifi_prop:s0
wlan.                   u:object_r:wifi_prop:s0

# Lowpan properties
lowpan.                 u:object_r:lowpan_prop:s0
ro.lowpan.              u:object_r:lowpan_prop:s0

# heapprofd properties
heapprofd.              u:object_r:heapprofd_prop:s0

# traced properties
traced.oome_heap_session.count u:object_r:traced_oome_heap_session_count_prop:s0 exact uint

# servicemanager properties
servicemanager.ready    u:object_r:servicemanager_prop:s0 exact bool

# hwservicemanager properties
hwservicemanager.       u:object_r:hwservicemanager_prop:s0

# hidl_memory properties to intentionally force a shutdown
hidl_memory.            u:object_r:hidl_memory_prop:s0

# Common default properties for vendor, odm, vendor_dlkm, and odm_dlkm.
init.svc.odm.           u:object_r:vendor_default_prop:s0
init.svc.vendor.        u:object_r:vendor_default_prop:s0
ro.hardware.            u:object_r:vendor_default_prop:s0
ro.odm.                 u:object_r:vendor_default_prop:s0
ro.vendor.              u:object_r:vendor_default_prop:s0
ro.vendor_dlkm.         u:object_r:vendor_default_prop:s0
ro.odm_dlkm.            u:object_r:vendor_default_prop:s0
odm.                    u:object_r:vendor_default_prop:s0
persist.odm.            u:object_r:vendor_default_prop:s0
persist.vendor.         u:object_r:vendor_default_prop:s0
vendor.                 u:object_r:vendor_default_prop:s0

# Properties that relate to time / time zone detection behavior.
persist.time.           u:object_r:time_prop:s0

# Properties that relate to server configurable flags
device_config.reset_performed                       u:object_r:device_config_reset_performed_prop:s0
persist.device_config.activity_manager_native_boot. u:object_r:device_config_activity_manager_native_boot_prop:s0
persist.device_config.attempted_boot_count          u:object_r:device_config_boot_count_prop:s0
persist.device_config.camera_native.                u:object_r:device_config_camera_native_prop:s0
persist.device_config.configuration.                u:object_r:device_config_configuration_prop:s0
persist.device_config.connectivity.                 u:object_r:device_config_connectivity_prop:s0
persist.device_config.core_experiments_team_internal.  u:object_r:device_config_core_experiments_team_internal_prop:s0
persist.device_config.edgetpu_native.               u:object_r:device_config_edgetpu_native_prop:s0
persist.device_config.input_native_boot.            u:object_r:device_config_input_native_boot_prop:s0
persist.device_config.lmkd_native.                  u:object_r:device_config_lmkd_native_prop:s0
persist.device_config.media_native.                 u:object_r:device_config_media_native_prop:s0
persist.device_config.netd_native.                  u:object_r:device_config_netd_native_prop:s0
persist.device_config.nnapi_native.                 u:object_r:device_config_nnapi_native_prop:s0
persist.device_config.profcollect_native_boot.      u:object_r:device_config_profcollect_native_boot_prop:s0
persist.device_config.remote_key_provisioning_native.  u:object_r:device_config_remote_key_provisioning_native_prop:s0
persist.device_config.runtime_native.               u:object_r:device_config_runtime_native_prop:s0
persist.device_config.runtime_native_boot.          u:object_r:device_config_runtime_native_boot_prop:s0
persist.device_config.statsd_native.                u:object_r:device_config_statsd_native_prop:s0
persist.device_config.statsd_native_boot.           u:object_r:device_config_statsd_native_boot_prop:s0
persist.device_config.storage_native_boot.          u:object_r:device_config_storage_native_boot_prop:s0
persist.device_config.surface_flinger_native_boot.  u:object_r:device_config_surface_flinger_native_boot_prop:s0
persist.device_config.swcodec_native.               u:object_r:device_config_swcodec_native_prop:s0
persist.device_config.aconfig_flags.                u:object_r:device_config_aconfig_flags_prop:s0
persist.device_config.vendor_system_native.         u:object_r:device_config_vendor_system_native_prop:s0
persist.device_config.vendor_system_native_boot.    u:object_r:device_config_vendor_system_native_boot_prop:s0
persist.device_config.virtualization_framework_native. u:object_r:device_config_virtualization_framework_native_prop:s0
persist.device_config.window_manager_native_boot.   u:object_r:device_config_window_manager_native_boot_prop:s0
persist.device_config.memory_safety_native_boot.    u:object_r:device_config_memory_safety_native_boot_prop:s0
persist.device_config.memory_safety_native.         u:object_r:device_config_memory_safety_native_prop:s0
persist.device_config.tethering_u_or_later_native.  u:object_r:device_config_tethering_u_or_later_native_prop:s0

# Properties that is for staging
next_boot.  u:object_r:next_boot_prop:s0

# F2FS smart idle maint prop
persist.device_config.storage_native_boot.smart_idle_maint_enabled u:object_r:smart_idle_maint_enabled_prop:s0 exact bool

# MGLRU experiment prop
persist.device_config.mglru_native.lru_gen_config   u:object_r:device_config_mglru_native_prop:s0 exact enum none core core_and_mm_walk core_and_nonleaf_young all

# MM Events config props
persist.mm_events.enabled                           u:object_r:mm_events_config_prop:s0 exact bool

# Properties that relate to legacy server configurable flags
persist.device_config.global_settings.sys_traced u:object_r:device_config_sys_traced_prop:s0

apexd.                  u:object_r:apexd_prop:s0
apexd.config.           u:object_r:apexd_config_prop:s0
apexd.config.dm_delete.timeout           u:object_r:apexd_config_prop:s0 exact uint
apexd.config.dm_create.timeout           u:object_r:apexd_config_prop:s0 exact uint
apexd.config.loop_wait.attempts          u:object_r:apexd_config_prop:s0 exact uint
apexd.config.boot_activation.threads     u:object_r:apexd_config_prop:s0 exact uint
persist.apexd.          u:object_r:apexd_prop:s0
persist.vendor.apex.    u:object_r:apexd_select_prop:s0
ro.boot.vendor.apex.    u:object_r:apexd_select_prop:s0

# Property that indicates if an apex is ready: apex.<apex-name>.ready
apex.                   u:object_r:apex_ready_prop:s0 prefix bool

bpf.progs_loaded        u:object_r:bpf_progs_loaded_prop:s0 exact bool

gsid.                   u:object_r:gsid_prop:s0
ro.gsid.                u:object_r:gsid_prop:s0

# Property for disabling NNAPI vendor extensions on product image (used on GSI /product image,
# which can't use NNAPI vendor extensions).
ro.nnapi.extensions.deny_on_product                u:object_r:nnapi_ext_deny_product_prop:s0

# Property that is set once ueventd finishes cold boot.
ro.cold_boot_done       u:object_r:cold_boot_done_prop:s0

# Properties that control performance operations.
# Leave space to later set drop_caches to 1, 2, and 4.
perf.drop_caches        u:object_r:perf_drop_caches_prop:s0 exact enum 0 3

# Charger properties
ro.charger.                 u:object_r:charger_prop:s0
sys.boot_from_charger_mode  u:object_r:charger_status_prop:s0 exact int
ro.enable_boot_charger_mode u:object_r:charger_config_prop:s0 exact bool
ro.product.charger.unplugged_shutdown_time  u:object_r:charger_config_prop:s0 exact int

# Virtual A/B and snapuserd properties
ro.virtual_ab.enabled   u:object_r:virtual_ab_prop:s0 exact bool
ro.virtual_ab.retrofit  u:object_r:virtual_ab_prop:s0 exact bool
ro.virtual_ab.compression.enabled  u:object_r:virtual_ab_prop:s0 exact bool
ro.virtual_ab.compression.xor.enabled   u:object_r:virtual_ab_prop:s0 exact bool
ro.virtual_ab.userspace.snapshots.enabled u:object_r:virtual_ab_prop:s0 exact bool
ro.virtual_ab.io_uring.enabled u:object_r:virtual_ab_prop:s0 exact bool
ro.virtual_ab.compression.threads u:object_r:virtual_ab_prop:s0 exact bool
ro.virtual_ab.batch_writes u:object_r:virtual_ab_prop:s0 exact bool
# OEMs can set this prop at build time to configure how many seconds to delay
# merge after installing a Virtual AB OTA. The default behavior is to start
# merge immediately.
ro.virtual_ab.merge_delay_seconds u:object_r:virtual_ab_prop:s0 exact int
snapuserd.ready         u:object_r:snapuserd_prop:s0 exact bool
snapuserd.proxy_ready   u:object_r:snapuserd_prop:s0 exact bool
snapuserd.test.dm.snapshots u:object_r:snapuserd_prop:s0 exact bool
snapuserd.test.io_uring.force_disable u:object_r:snapuserd_prop:s0 exact bool

ro.product.ab_ota_partitions u:object_r:ota_prop:s0 exact string
ro.vendor.build.ab_ota_partitions u:object_r:ota_build_prop:s0 exact string
# Property to set/clear the warm reset flag after an OTA update.
ota.warm_reset  u:object_r:ota_prop:s0
# The vbmeta digest for the inactive slot. It can be set after installing
# ota updates to the b partition of a/b devices.
ota.other.vbmeta_digest  u:object_r:ota_prop:s0 exact string

# Module properties
com.android.sdkext.                  u:object_r:module_sdkextensions_prop:s0
persist.com.android.sdkext.          u:object_r:module_sdkextensions_prop:s0

# Connectivity module
net.464xlat.cellular.enabled         u:object_r:net_464xlat_fromvendor_prop:s0 exact bool
net.tcp_def_init_rwnd                u:object_r:net_connectivity_prop:s0 exact int

# Userspace reboot properties
sys.userspace_reboot.log.         u:object_r:userspace_reboot_log_prop:s0
persist.sys.userspace_reboot.log. u:object_r:userspace_reboot_log_prop:s0

# Integer property which is used in libgui to configure the number of frames
# tracked by buffer queue's frame event timing history. The property is set
# by devices with video decoding pipelines long enough to overflow the default
# history size.
ro.lib_gui.frame_event_history_size u:object_r:bq_config_prop:s0

af.fast_track_multiplier         u:object_r:audio_config_prop:s0 exact int
ro.af.client_heap_size_kbyte     u:object_r:audio_config_prop:s0 exact int
ro.audio.flinger_standbytime_ms  u:object_r:audio_config_prop:s0 exact int

audio.camerasound.force         u:object_r:audio_config_prop:s0 exact bool
audio.deep_buffer.media         u:object_r:audio_config_prop:s0 exact bool
audio.offload.video             u:object_r:audio_config_prop:s0 exact bool
audio.offload.min.duration.secs u:object_r:audio_config_prop:s0 exact int

# spatializer tuning
audio.spatializer.priority               u:object_r:audio_config_prop:s0 exact int
audio.spatializer.effect.affinity        u:object_r:audio_config_prop:s0 exact int
audio.spatializer.effect.util_clamp_min  u:object_r:audio_config_prop:s0 exact int
audio.spatializer.pose_predictor_type    u:object_r:audio_config_prop:s0 exact enum 0 1 2 3
audio.spatializer.prediction_duration_ms u:object_r:audio_config_prop:s0 exact int

ro.audio.ignore_effects   u:object_r:audio_config_prop:s0 exact bool
ro.audio.monitorRotation  u:object_r:audio_config_prop:s0 exact bool
ro.audio.offload_wakelock u:object_r:audio_config_prop:s0 exact bool

# Configure whether new device has spatialization default enabled.
ro.audio.spatializer_binaural_enabled_default u:object_r:audio_config_prop:s0 exact bool
ro.audio.spatializer_transaural_enabled_default u:object_r:audio_config_prop:s0 exact bool
# Boolean property used in AudioService to configure whether
# spatializer functionality should be initialized
ro.audio.spatializer_enabled u:object_r:audio_config_prop:s0 exact bool
# Boolean property used in AudioService to configure whether
# to enable head tracking for spatial audio
ro.audio.headtracking_enabled u:object_r:audio_config_prop:s0 exact bool

# Boolean property used in UsbAlsaManager to decide if only one or multiple
# USB devices can be connected to audio system at a certain time
ro.audio.multi_usb_mode u:object_r:audio_config_prop:s0 exact bool

persist.config.calibration_fac u:object_r:camera_calibration_prop:s0 exact string

config.disable_cameraservice u:object_r:camera_config_prop:s0 exact bool

camera.disable_preview_scheduler u:object_r:camera_config_prop:s0 exact bool
camera.disable_zsl_mode       u:object_r:camera_config_prop:s0 exact bool
camera.fifo.disable           u:object_r:camera_config_prop:s0 exact bool
camera.enable_landscape_to_portrait u:object_r:camera_config_prop:s0 exact bool
ro.camera.notify_nfc          u:object_r:camera_config_prop:s0 exact bool
ro.camera.enableLazyHal       u:object_r:camera_config_prop:s0 exact bool
ro.camera.enableCamera1MaxZsl u:object_r:camera_config_prop:s0 exact bool
ro.camera.disableJpegR        u:object_r:camera_config_prop:s0 exact bool
ro.camera.enableCompositeAPI0JpegR u:object_r:camera_config_prop:s0 exact bool
ro.camera.enableVirtualCamera      u:object_r:camera_config_prop:s0 exact bool

ro.camerax.extensions.enabled u:object_r:camerax_extensions_prop:s0 exact bool

ro.vendor.camera.extensions.package u:object_r:camera2_extensions_prop:s0 exact string
ro.vendor.camera.extensions.service u:object_r:camera2_extensions_prop:s0 exact string

# ART properties.
dalvik.vm.                 u:object_r:dalvik_config_prop:s0
ro.dalvik.vm.              u:object_r:dalvik_config_prop:s0
ro.zygote                  u:object_r:dalvik_config_prop:s0 exact string

# A set of ART properties listed explicitly for compatibility purposes.
ro.dalvik.vm.native.bridge                    u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.always_debuggable                   u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.appimageformat                      u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.backgroundgctype                    u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.boot-image                          u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.bgdexopt.new-classes-percent        u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.bgdexopt.new-methods-percent        u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.checkjni                            u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.dex2oat-Xms                         u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.dex2oat-Xmx                         u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.dex2oat-filter                      u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.dex2oat-flags                       u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.dex2oat-max-image-block-size        u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.dex2oat-minidebuginfo               u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.dex2oat-resolve-startup-strings     u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.dex2oat-very-large                  u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.dex2oat-swap                        u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.dex2oat64.enabled                   u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.dexopt.secondary                    u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.dexopt.thermal-cutoff               u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.execution-mode                      u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.extra-opts                          u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.foreground-heap-growth-multiplier   u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.gctype                              u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.heapgrowthlimit                     u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.heapmaxfree                         u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.heapminfree                         u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.heapsize                            u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.heapstartsize                       u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.heaptargetutilization               u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.hot-startup-method-samples          u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.image-dex2oat-Xms                   u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.image-dex2oat-Xmx                   u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.image-dex2oat-filter                u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.image-dex2oat-flags                 u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.arm.features                    u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.arm.variant                     u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.arm64.features                  u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.arm64.variant                   u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.mips.features                   u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.mips.variant                    u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.mips64.features                 u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.mips64.variant                  u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.unknown.features                u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.unknown.variant                 u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.x86.features                    u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.x86.variant                     u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.x86_64.features                 u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.isa.x86_64.variant                  u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.jitinitialsize                      u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.jitmaxsize                          u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.jitprithreadweight                  u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.jitthreshold                        u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.jittransitionweight                 u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.jniopts                             u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.lockprof.threshold                  u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.method-trace                        u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.method-trace-file                   u:object_r:dalvik_config_prop:s0 exact string
dalvik.vm.method-trace-file-siz               u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.method-trace-stream                 u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.profilesystemserver                 u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.profilebootclasspath                u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.ps-min-save-period-ms               u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.ps-resolved-classes-delay-ms        u:object_r:dalvik_config_prop:s0 exact int
dalvik.vm.usejit                              u:object_r:dalvik_config_prop:s0 exact bool
dalvik.vm.zygote.max-boot-retry               u:object_r:dalvik_config_prop:s0 exact int

# A list of ART properties that can be set dynamically.
dalvik.vm.background-dex2oat-cpu-set          u:object_r:dalvik_dynamic_config_prop:s0 exact string
dalvik.vm.background-dex2oat-threads          u:object_r:dalvik_dynamic_config_prop:s0 exact int
dalvik.vm.boot-dex2oat-cpu-set                u:object_r:dalvik_dynamic_config_prop:s0 exact string
dalvik.vm.boot-dex2oat-threads                u:object_r:dalvik_dynamic_config_prop:s0 exact int
dalvik.vm.dex2oat-cpu-set                     u:object_r:dalvik_dynamic_config_prop:s0 exact string
dalvik.vm.dex2oat-threads                     u:object_r:dalvik_dynamic_config_prop:s0 exact int
dalvik.vm.image-dex2oat-cpu-set               u:object_r:dalvik_dynamic_config_prop:s0 exact string
dalvik.vm.image-dex2oat-threads               u:object_r:dalvik_dynamic_config_prop:s0 exact int
dalvik.vm.restore-dex2oat-cpu-set             u:object_r:dalvik_dynamic_config_prop:s0 exact string
dalvik.vm.restore-dex2oat-threads             u:object_r:dalvik_dynamic_config_prop:s0 exact int

persist.sys.dalvik.vm.lib.2 u:object_r:dalvik_runtime_prop:s0 exact string

keyguard.no_require_sim u:object_r:keyguard_config_prop:s0 exact bool

media.c2.dmabuf.padding                      u:object_r:codec2_config_prop:s0 exact int
media.c2.hal.selection                       u:object_r:codec2_config_prop:s0 exact enum aidl hidl

media.recorder.show_manufacturer_and_model   u:object_r:media_config_prop:s0 exact bool
media.resolution.limit.32bit                 u:object_r:media_config_prop:s0 exact int
media.stagefright.cache-params               u:object_r:media_config_prop:s0 exact string
media.stagefright.enable-aac                 u:object_r:media_config_prop:s0 exact bool
media.stagefright.enable-fma2dp              u:object_r:media_config_prop:s0 exact bool
media.stagefright.enable-http                u:object_r:media_config_prop:s0 exact bool
media.stagefright.enable-player              u:object_r:media_config_prop:s0 exact bool
media.stagefright.enable-qcp                 u:object_r:media_config_prop:s0 exact bool
media.stagefright.enable-scan                u:object_r:media_config_prop:s0 exact bool
media.stagefright.thumbnail.prefer_hw_codecs u:object_r:media_config_prop:s0 exact bool
persist.sys.media.avsync                     u:object_r:media_config_prop:s0 exact bool

persist.bluetooth.a2dp_offload.cap                          u:object_r:bluetooth_a2dp_offload_prop:s0 exact string
persist.bluetooth.a2dp_offload.disabled                     u:object_r:bluetooth_a2dp_offload_prop:s0 exact bool
persist.bluetooth.bluetooth_audio_hal.disabled              u:object_r:bluetooth_audio_hal_prop:s0 exact bool
persist.bluetooth.btsnoopenable                             u:object_r:exported_bluetooth_prop:s0 exact bool
persist.bluetooth.btsnoopdefaultmode                        u:object_r:bluetooth_prop:s0 exact enum empty disabled filtered full
persist.bluetooth.btsnooplogmode                            u:object_r:bluetooth_prop:s0 exact enum empty disabled filtered full
persist.bluetooth.snooplogfilter.headers.enabled            u:object_r:bluetooth_prop:s0 exact bool
persist.bluetooth.snooplogfilter.profiles.a2dp.enabled      u:object_r:bluetooth_prop:s0 exact bool
persist.bluetooth.snooplogfilter.profiles.map               u:object_r:bluetooth_prop:s0 exact enum empty disabled fullfilter header magic
persist.bluetooth.snooplogfilter.profiles.pbap              u:object_r:bluetooth_prop:s0 exact enum empty disabled fullfilter header magic
persist.bluetooth.snooplogfilter.profiles.rfcomm.enabled    u:object_r:bluetooth_prop:s0 exact bool
persist.bluetooth.factoryreset                              u:object_r:bluetooth_prop:s0 exact bool
persist.bluetooth.leaudio.allow_list                        u:object_r:bluetooth_prop:s0 exact string

bluetooth.hardware.power.operating_voltage_mv        u:object_r:bluetooth_config_prop:s0 exact int
bluetooth.hardware.power.idle_cur_ma                 u:object_r:bluetooth_config_prop:s0 exact int
bluetooth.hardware.power.tx_cur_ma                   u:object_r:bluetooth_config_prop:s0 exact int
bluetooth.hardware.power.rx_cur_ma                   u:object_r:bluetooth_config_prop:s0 exact int
bluetooth.hardware.radio.le_tx_path_loss_comp_db     u:object_r:bluetooth_config_prop:s0 exact int
bluetooth.hardware.radio.le_rx_path_loss_comp_db     u:object_r:bluetooth_config_prop:s0 exact int

bluetooth.framework.support_persisted_state          u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.framework.adapter_address_validation       u:object_r:bluetooth_config_prop:s0 exact bool

bluetooth.core.gap.le.privacy.enabled                u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.core.gap.le.conn.min.limit                 u:object_r:bluetooth_config_prop:s0 exact int
bluetooth.core.gap.le.conn.only_init_1m_phy.enabled  u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.core.le_audio.inband_ringtone.supported    u:object_r:bluetooth_config_prop:s0 exact bool

bluetooth.device.default_name                        u:object_r:bluetooth_config_prop:s0 exact string
bluetooth.device.class_of_device                     u:object_r:bluetooth_config_prop:s0 exact string

bluetooth.profile.a2dp.sink.enabled                  u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.a2dp.source.enabled                u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.asha.central.enabled               u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.avrcp.controller.enabled           u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.avrcp.target.enabled               u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.bap.broadcast.assist.enabled       u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.bap.broadcast.source.enabled       u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.bap.unicast.client.enabled         u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.bas.client.enabled                 u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.bass.client.enabled                u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.ccp.server.enabled                 u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.csip.set_coordinator.enabled       u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.gatt.enabled                       u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.hap.client.enabled                 u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.hfp.ag.enabled                     u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.hfp.hf.enabled                     u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.hid.device.enabled                 u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.hid.host.enabled                   u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.map.client.enabled                 u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.map.server.enabled                 u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.mcp.server.enabled                 u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.opp.enabled                        u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.pan.nap.enabled                    u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.pan.panu.enabled                   u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.pbap.client.enabled                u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.pbap.server.enabled                u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.pbap.sim.enabled                   u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.sap.server.enabled                 u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.profile.vcp.controller.enabled             u:object_r:bluetooth_config_prop:s0 exact bool

bluetooth.core.acl.link_supervision_timeout          u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.classic.page_scan_type                u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.classic.page_scan_interval            u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.classic.page_scan_window              u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.classic.inq_scan_type                 u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.classic.inq_scan_interval             u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.classic.inq_scan_window               u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.classic.page_timeout                  u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.classic.sniff_max_intervals           u:object_r:bluetooth_config_prop:s0 exact string
bluetooth.core.classic.sniff_min_intervals           u:object_r:bluetooth_config_prop:s0 exact string
bluetooth.core.classic.sniff_attempts                u:object_r:bluetooth_config_prop:s0 exact string
bluetooth.core.classic.sniff_timeouts                u:object_r:bluetooth_config_prop:s0 exact string

bluetooth.core.le.min_connection_interval            u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.max_connection_interval            u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.connection_latency                 u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.connection_supervision_timeout     u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.direct_connection_timeout          u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.connection_scan_interval_fast      u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.connection_scan_window_fast        u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.connection_scan_window_2m_fast     u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.connection_scan_window_coded_fast  u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.connection_scan_interval_slow      u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.connection_scan_window_slow        u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.inquiry_scan_interval              u:object_r:bluetooth_config_prop:s0 exact uint
bluetooth.core.le.inquiry_scan_window                u:object_r:bluetooth_config_prop:s0 exact uint

bluetooth.core.le.vendor_capabilities.enabled        u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.sco.disable_enhanced_connection            u:object_r:bluetooth_config_prop:s0 exact bool
bluetooth.core.le.dsa_transport_preference           u:object_r:bluetooth_config_prop:s0 exact string

persist.nfc.debug_enabled                      u:object_r:nfc_prop:s0 exact bool
persist.nfc.vendor_debug_enabled               u:object_r:nfc_prop:s0 exact bool
persist.nfc.snoop_log_mode                     u:object_r:nfc_prop:s0 exact enum full filtered
nfc.dta.skip_ndef_read                         u:object_r:nfc_prop:s0 exact bool

persist.radio.multisim.config u:object_r:radio_control_prop:s0 exact string
persist.radio.allow_mock_modem u:object_r:radio_control_prop:s0 exact bool

persist.sys.hdmi.keep_awake                                        u:object_r:hdmi_config_prop:s0 exact bool
ro.hdmi.cec_device_types                                           u:object_r:hdmi_config_prop:s0 exact string
ro.hdmi.device_type                                                u:object_r:hdmi_config_prop:s0 exact string
ro.hdmi.set_menu_language                                          u:object_r:hdmi_config_prop:s0 exact bool
ro.hdmi.cec.source.set_menu_language.enabled                       u:object_r:hdmi_config_prop:s0 exact bool
ro.hdmi.property_sytem_audio_device_arc_port                       u:object_r:hdmi_config_prop:s0 exact string
ro.hdmi.cec_audio_device_forward_volume_keys_system_audio_mode_off u:object_r:hdmi_config_prop:s0 exact bool
ro.hdmi.property_is_device_hdmi_cec_switch                         u:object_r:hdmi_config_prop:s0 exact bool
ro.hdmi.wake_on_hotplug                                            u:object_r:hdmi_config_prop:s0 exact bool
ro.hdmi.cec.source.send_standby_on_sleep                           u:object_r:hdmi_config_prop:s0 exact enum to_tv broadcast none
ro.hdmi.cec.source.playback_device_action_on_routing_control       u:object_r:hdmi_config_prop:s0 exact enum none wake_up_only wake_up_and_send_active_source

pm.dexopt.bg-dexopt                                     u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.bg-dexopt.concurrency                         u:object_r:exported_pm_prop:s0 exact int
pm.dexopt.first-boot                                    u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.first-boot.concurrency                        u:object_r:exported_pm_prop:s0 exact int
pm.dexopt.boot-after-ota                                u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.boot-after-ota.concurrency                    u:object_r:exported_pm_prop:s0 exact int
pm.dexopt.boot-after-mainline-update                    u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.boot-after-mainline-update.concurrency        u:object_r:exported_pm_prop:s0 exact int

pm.dexopt.post-boot                                     u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.ab-ota                                        u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.cmdline                                       u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.inactive                                      u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.install                                       u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.install-fast                                  u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.install-bulk                                  u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.install-bulk-secondary                        u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.install-bulk-downgraded                       u:object_r:exported_pm_prop:s0 exact string
pm.dexopt.install-bulk-secondary-downgraded             u:object_r:exported_pm_prop:s0 exact string

pm.dexopt.shared                                        u:object_r:exported_pm_prop:s0 exact string

pm.dexopt.disable_bg_dexopt                             u:object_r:exported_pm_prop:s0 exact bool
pm.dexopt.downgrade_after_inactive_days                 u:object_r:exported_pm_prop:s0 exact int

pm.dexopt.                                              u:object_r:future_pm_prop:s0 prefix

ro.apk_verity.mode u:object_r:apk_verity_prop:s0 exact int

ro.bluetooth.a2dp_offload.supported u:object_r:bluetooth_a2dp_offload_prop:s0 exact bool

ro.boot.vendor.overlay.theme u:object_r:exported_overlay_prop:s0 exact string

ro.bt.bdaddr_path u:object_r:exported_bluetooth_prop:s0 exact string

ro.config.alarm_alert         u:object_r:systemsound_config_prop:s0 exact string
ro.config.alarm_vol_default   u:object_r:systemsound_config_prop:s0 exact int
ro.config.alarm_vol_steps     u:object_r:systemsound_config_prop:s0 exact int
ro.config.assistant_vol_min   u:object_r:systemsound_config_prop:s0 exact int
ro.config.media_vol_default   u:object_r:systemsound_config_prop:s0 exact int
ro.config.media_vol_steps     u:object_r:systemsound_config_prop:s0 exact int
ro.config.notification_sound  u:object_r:systemsound_config_prop:s0 exact string
ro.config.ringtone            u:object_r:systemsound_config_prop:s0 exact string
ro.config.system_vol_default  u:object_r:systemsound_config_prop:s0 exact int
ro.config.system_vol_steps    u:object_r:systemsound_config_prop:s0 exact int
ro.config.vc_call_vol_default u:object_r:systemsound_config_prop:s0 exact int

ro.control_privapp_permissions u:object_r:packagemanager_config_prop:s0 exact enum disable enforce log
ro.cp_system_other_odex        u:object_r:packagemanager_config_prop:s0 exact bool

ro.crypto.allow_encrypt_override                u:object_r:vold_config_prop:s0 exact bool
ro.crypto.dm_default_key.options_format.version u:object_r:vold_config_prop:s0 exact int
ro.crypto.fde_algorithm                         u:object_r:vold_config_prop:s0 exact string
ro.crypto.fde_sector_size                       u:object_r:vold_config_prop:s0 exact int
ro.crypto.metadata_init_delete_all_keys.enabled u:object_r:vold_config_prop:s0 exact bool
ro.crypto.scrypt_params                         u:object_r:vold_config_prop:s0 exact string
ro.crypto.set_dun                               u:object_r:vold_config_prop:s0 exact bool
ro.crypto.volume.contents_mode                  u:object_r:vold_config_prop:s0 exact string
ro.crypto.volume.filenames_mode                 u:object_r:vold_config_prop:s0 exact string
ro.crypto.volume.metadata.encryption            u:object_r:vold_config_prop:s0 exact string
ro.crypto.volume.metadata.method                u:object_r:vold_config_prop:s0 exact string
ro.crypto.volume.options                        u:object_r:vold_config_prop:s0 exact string

external_storage.projid.enabled   u:object_r:storage_config_prop:s0 exact bool
external_storage.casefold.enabled u:object_r:storage_config_prop:s0 exact bool
external_storage.sdcardfs.enabled u:object_r:storage_config_prop:s0 exact bool
external_storage.cross_user.enabled u:object_r:storage_config_prop:s0 exact bool
ro.fuse.bpf.enabled u:object_r:storage_config_prop:s0 exact bool
ro.fuse.bpf.is_running u:object_r:vold_status_prop:s0 exact bool

hypervisor.pvmfw.path                              u:object_r:hypervisor_pvmfw_prop:s0 exact string
hypervisor.virtualizationmanager.debug_policy.path u:object_r:hypervisor_virtualizationmanager_prop:s0 exact string

# hypervisor.*: configured by the vendor to advertise capabilities of their
# hypervisor to virtualizationservice.
hypervisor.memory_reclaim.supported u:object_r:hypervisor_restricted_prop:s0 exact bool

ro.config.per_app_memcg         u:object_r:lmkd_config_prop:s0 exact bool
ro.lmk.critical                 u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.critical_upgrade         u:object_r:lmkd_config_prop:s0 exact bool
ro.lmk.debug                    u:object_r:lmkd_config_prop:s0 exact bool
ro.lmk.delay_monitors_until_boot u:object_r:lmkd_config_prop:s0 exact bool
ro.lmk.downgrade_pressure       u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.filecache_min_kb         u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.kill_heaviest_task       u:object_r:lmkd_config_prop:s0 exact bool
ro.lmk.kill_timeout_ms          u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.log_stats                u:object_r:lmkd_config_prop:s0 exact bool
ro.lmk.low                      u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.medium                   u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.pressure_after_kill_min_score u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.psi_partial_stall_ms     u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.psi_complete_stall_ms    u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.stall_limit_critical     u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.swap_free_low_percentage u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.swap_util_max            u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.thrashing_limit          u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.thrashing_limit_critical u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.thrashing_limit_decay    u:object_r:lmkd_config_prop:s0 exact int
ro.lmk.use_minfree_levels       u:object_r:lmkd_config_prop:s0 exact bool
ro.lmk.use_new_strategy         u:object_r:lmkd_config_prop:s0 exact bool
ro.lmk.upgrade_pressure         u:object_r:lmkd_config_prop:s0 exact int
lmkd.reinit                     u:object_r:lmkd_prop:s0 exact int

ro.media.xml_variant.codecs             u:object_r:media_variant_prop:s0 exact string
ro.media.xml_variant.codecs_performance u:object_r:media_variant_prop:s0 exact string
ro.media.xml_variant.profiles           u:object_r:media_variant_prop:s0 exact string

ro.minui.default_rotation u:object_r:recovery_config_prop:s0 exact string
ro.minui.overscan_percent u:object_r:recovery_config_prop:s0 exact int
ro.minui.pixel_format     u:object_r:recovery_config_prop:s0 exact string

ro.oem_unlock_supported u:object_r:oem_unlock_prop:s0 exact int

ro.rebootescrow.device u:object_r:rebootescrow_hal_prop:s0 exact string

ro.recovery.usb.vid          u:object_r:recovery_usb_config_prop:s0 exact string
ro.recovery.usb.adb.pid      u:object_r:recovery_usb_config_prop:s0 exact string
ro.recovery.usb.fastboot.pid u:object_r:recovery_usb_config_prop:s0 exact string

ro.storage_manager.enabled     u:object_r:storagemanager_config_prop:s0 exact bool
ro.storage_manager.show_opt_in u:object_r:storagemanager_config_prop:s0 exact bool

ro.vehicle.hal u:object_r:vehicle_hal_prop:s0 exact string

ro.vendor.build.security_patch u:object_r:vendor_security_patch_level_prop:s0 exact string

ro.zram.mark_idle_delay_mins    u:object_r:zram_config_prop:s0 exact int
ro.zram.first_wb_delay_mins     u:object_r:zram_config_prop:s0 exact int
ro.zram.periodic_wb_delay_hours u:object_r:zram_config_prop:s0 exact int
zram.force_writeback            u:object_r:zram_config_prop:s0 exact bool
persist.sys.zram_enabled        u:object_r:zram_control_prop:s0 exact bool

sendbug.preferred.domain u:object_r:sendbug_config_prop:s0 exact string

persist.sys.usb.usbradio.config u:object_r:usb_control_prop:s0 exact string

sys.usb.config     u:object_r:usb_control_prop:s0 exact string
sys.usb.configfs   u:object_r:usb_control_prop:s0 exact int
sys.usb.controller u:object_r:usb_control_prop:s0 exact string
sys.usb.state      u:object_r:usb_control_prop:s0 exact string

sys.usb.mtp.batchcancel u:object_r:usb_config_prop:s0 exact bool
sys.usb.mtp.device_type u:object_r:usb_config_prop:s0 exact int

sys.usb.config. u:object_r:usb_prop:s0

sys.usb.ffs.aio_compat u:object_r:ffs_config_prop:s0 exact bool
sys.usb.ffs.io_uring_enabled u:object_r:ffs_config_prop:s0 exact bool
sys.usb.ffs.max_read   u:object_r:ffs_config_prop:s0 exact int
sys.usb.ffs.max_write  u:object_r:ffs_config_prop:s0 exact int

sys.usb.ffs.ready     u:object_r:ffs_control_prop:s0 exact bool
sys.usb.ffs.mtp.ready u:object_r:ffs_control_prop:s0 exact bool

tombstoned.max_tombstone_count u:object_r:tombstone_config_prop:s0 exact int

vold.post_fs_data_done u:object_r:vold_post_fs_data_prop:s0 exact int

apexd.payload_metadata.path u:object_r:apexd_payload_metadata_prop:s0 exact string
apexd.status u:object_r:apexd_prop:s0 exact enum starting activated ready

dmesgd.start u:object_r:dmesgd_start_prop:s0 exact bool

odsign.key.done u:object_r:odsign_prop:s0 exact bool
odsign.verification.done u:object_r:odsign_prop:s0 exact bool
odsign.verification.success u:object_r:odsign_prop:s0 exact bool

dev.bootcomplete   u:object_r:boot_status_prop:s0 exact bool
sys.boot_completed u:object_r:boot_status_prop:s0 exact bool

persist.sys.device_provisioned u:object_r:provisioned_prop:s0 exact string

persist.sys.theme               u:object_r:theme_prop:s0 exact string

sys.retaildemo.enabled u:object_r:retaildemo_prop:s0 exact int

sys.user.0.ce_available u:object_r:exported3_system_prop:s0 exact bool

aac_drc_boost            u:object_r:aac_drc_prop:s0 exact int
aac_drc_cut              u:object_r:aac_drc_prop:s0 exact int
aac_drc_enc_target_level u:object_r:aac_drc_prop:s0 exact int
aac_drc_heavy            u:object_r:aac_drc_prop:s0 exact int
aac_drc_reference_level  u:object_r:aac_drc_prop:s0 exact int
ro.aac_drc_effect_type   u:object_r:aac_drc_prop:s0 exact int

build.version.extensions. u:object_r:module_sdkextensions_prop:s0 prefix int

drm.64bit.enabled            u:object_r:mediadrm_config_prop:s0 exact bool
media.mediadrmservice.enable u:object_r:mediadrm_config_prop:s0 exact bool
persist.drm.forcel3.enabled  u:object_r:drm_forcel3_prop:s0 exact bool

drm.service.enabled u:object_r:drm_service_config_prop:s0 exact bool

dumpstate.dry_run u:object_r:exported_dumpstate_prop:s0 exact bool
dumpstate.unroot  u:object_r:exported_dumpstate_prop:s0 exact bool
persist.dumpstate.verbose_logging.enabled u:object_r:hal_dumpstate_config_prop:s0 exact bool

hal.instrumentation.enable u:object_r:hal_instrumentation_prop:s0 exact bool

# default contexts only accessible by coredomain
init.svc. u:object_r:init_service_status_private_prop:s0 prefix string

# Globally-readable init service props
init.svc.adbd           u:object_r:init_service_status_prop:s0 exact string
init.svc.bugreport      u:object_r:init_service_status_prop:s0 exact string
init.svc.bugreportd     u:object_r:init_service_status_prop:s0 exact string
init.svc.console        u:object_r:init_service_status_prop:s0 exact string
init.svc.dumpstatez     u:object_r:init_service_status_prop:s0 exact string
init.svc.mediadrm       u:object_r:init_service_status_prop:s0 exact string
init.svc.statsd         u:object_r:init_service_status_prop:s0 exact string
init.svc.surfaceflinger u:object_r:init_service_status_prop:s0 exact string
init.svc.tombstoned     u:object_r:init_service_status_prop:s0 exact string
init.svc.zygote         u:object_r:init_service_status_prop:s0 exact string

libc.debug.malloc.options u:object_r:libc_debug_prop:s0 exact string
libc.debug.malloc.program u:object_r:libc_debug_prop:s0 exact string
libc.debug.hooks.enable   u:object_r:libc_debug_prop:s0 exact string

# GWP-ASan props. Separate from other libc.debug.* props, because we want users
# to be able to set them from `adb shell` even on release devices.
libc.debug.gwp_asan.          u:object_r:gwp_asan_prop:s0 prefix string
persist.libc.debug.gwp_asan.  u:object_r:gwp_asan_prop:s0 prefix string

# shell-only props for ARM memory tagging (MTE).
arm64.memtag.         u:object_r:arm64_memtag_prop:s0 prefix string
persist.arm64.memtag. u:object_r:arm64_memtag_prop:s0 prefix string

net.redirect_socket_calls.hooked u:object_r:socket_hook_prop:s0 exact bool

# Settings system properties containing mutable "global" device settings.
#
# These can't be Android settings because they are also read by low-level
# binaries that don't have access to "real" SettingsProvider settings. This
# will usually be because of when they execute, e.g. during boot when Android
# services are not yet running, and/or because they are needed by binaries that
# are not "Android aware", i.e. they have light integration with the Android
# platform via the low-level system properties lib.  Processes like shell may
# modify these for testing purposes, but doing so is generally discouraged;
# updates to these props will generally require intents to be sent to
# long-running Android apps so they can update cached data and their UI state.
persist.sys.locale       u:object_r:locale_prop:s0 exact string
persist.sys.timezone     u:object_r:timezone_prop:s0 exact string

# Time zone metadata system properties. Holds information associated with the
# device's time zone and will therefore be written to at the same time.  Unlike
# timezone_prop props, these do not need to be read by other processes.
persist.sys.timezone_confidence u:object_r:timezone_metadata_prop:s0 exact uint

persist.sys.mte.permissive u:object_r:permissive_mte_prop:s0 exact string
persist.sys.test_harness u:object_r:test_harness_prop:s0 exact bool

ro.arch u:object_r:build_prop:s0 exact string

# ro.boot. properties are set based on kernel commandline arguments, which are vendor owned.
ro.boot.                   u:object_r:bootloader_prop:s0
ro.boot.avb_version        u:object_r:bootloader_prop:s0 exact string
ro.boot.baseband           u:object_r:bootloader_prop:s0 exact string
ro.boot.bootdevice         u:object_r:bootloader_prop:s0 exact string
ro.boot.bootloader         u:object_r:bootloader_prop:s0 exact string
ro.boot.boottime           u:object_r:bootloader_prop:s0 exact string
ro.boot.console            u:object_r:bootloader_prop:s0 exact string
ro.boot.ddr_size           u:object_r:bootloader_prop:s0 exact string
ro.boot.hardware           u:object_r:bootloader_prop:s0 exact string
ro.boot.hardware.color     u:object_r:bootloader_prop:s0 exact string
ro.boot.hardware.sku       u:object_r:bootloader_prop:s0 exact string
ro.boot.keymaster          u:object_r:bootloader_prop:s0 exact string
ro.boot.mode               u:object_r:bootloader_prop:s0 exact string
# Populated on Android Studio Emulator (for emulator specific workarounds)
ro.boot.qemu               u:object_r:bootloader_prop:s0 exact bool
ro.boot.revision           u:object_r:bootloader_prop:s0 exact string
ro.boot.serialconsole      u:object_r:bootloader_prop:s0 exact bool
ro.boot.vbmeta.avb_version u:object_r:bootloader_prop:s0 exact string
ro.boot.verifiedbootstate  u:object_r:bootloader_prop:s0 exact string
ro.boot.veritymode         u:object_r:bootloader_prop:s0 exact string
# Properties specific to virtualized deployments of Android
ro.boot.hypervisor.protected_vm.supported   u:object_r:hypervisor_prop:s0 exact bool
ro.boot.hypervisor.version                  u:object_r:hypervisor_prop:s0 exact string
ro.boot.hypervisor.vm.supported             u:object_r:hypervisor_prop:s0 exact bool

# These ro.X properties are set to values of ro.boot.X by property_service.
ro.baseband   u:object_r:bootloader_prop:s0 exact string
ro.bootloader u:object_r:bootloader_prop:s0 exact string
ro.bootmode   u:object_r:bootloader_prop:s0 exact string
ro.hardware   u:object_r:bootloader_prop:s0 exact string
ro.revision   u:object_r:bootloader_prop:s0 exact string

ro.boot.dynamic_partitions          u:object_r:exported_default_prop:s0 exact string
ro.boot.dynamic_partitions_retrofit u:object_r:exported_default_prop:s0 exact string

ro.boottime.init.mount.data u:object_r:boottime_public_prop:s0 exact string
ro.boottime.init.fsck.data  u:object_r:boottime_public_prop:s0 exact string

ro.build.characteristics                  u:object_r:build_prop:s0 exact string
ro.build.date                             u:object_r:build_prop:s0 exact string
ro.build.date.utc                         u:object_r:build_prop:s0 exact int
ro.build.description                      u:object_r:build_prop:s0 exact string
ro.build.display.id                       u:object_r:build_prop:s0 exact string
ro.build.flavor                           u:object_r:build_prop:s0 exact string
ro.build.host                             u:object_r:build_prop:s0 exact string
ro.build.id                               u:object_r:build_prop:s0 exact string
ro.build.product                          u:object_r:build_prop:s0 exact string
ro.build.system_root_image                u:object_r:build_prop:s0 exact bool
ro.build.tags                             u:object_r:build_prop:s0 exact string
ro.build.type                             u:object_r:build_prop:s0 exact string
ro.build.user                             u:object_r:build_prop:s0 exact string
ro.build.version.all_codenames            u:object_r:build_prop:s0 exact string
ro.build.version.base_os                  u:object_r:build_prop:s0 exact string
ro.build.version.codename                 u:object_r:build_prop:s0 exact string
ro.build.version.incremental              u:object_r:build_prop:s0 exact string
ro.build.version.min_supported_target_sdk u:object_r:build_prop:s0 exact int
ro.build.version.preview_sdk              u:object_r:build_prop:s0 exact int
ro.build.version.preview_sdk_fingerprint  u:object_r:build_prop:s0 exact string
ro.build.version.release                  u:object_r:build_prop:s0 exact string
ro.build.version.release_or_codename      u:object_r:build_prop:s0 exact string
ro.build.version.sdk                      u:object_r:build_prop:s0 exact int
ro.build.version.security_patch           u:object_r:build_prop:s0 exact string

ro.actionable_compatible_property.enabled u:object_r:build_prop:s0 exact bool


# Property for enabling 16k pages developer option.
ro.product.build.16k_page.enabled u:object_r:enable_16k_pages_prop:s0 exact bool

ro.debuggable       u:object_r:userdebug_or_eng_prop:s0 exact bool
ro.force.debuggable u:object_r:build_prop:s0 exact bool

ro.treble.enabled u:object_r:build_prop:s0 exact bool

ro.product.cpu.abi       u:object_r:build_prop:s0 exact string
ro.product.cpu.abilist   u:object_r:build_prop:s0 exact string
ro.product.cpu.abilist32 u:object_r:build_prop:s0 exact string
ro.product.cpu.abilist64 u:object_r:build_prop:s0 exact string

ro.product.cpu.pagesize.max    u:object_r:build_prop:s0 exact enum 4096 16384 65536

ro.product.system.brand        u:object_r:build_prop:s0 exact string
ro.product.system.device       u:object_r:build_prop:s0 exact string
ro.product.system.manufacturer u:object_r:build_prop:s0 exact string
ro.product.system.model        u:object_r:build_prop:s0 exact string
ro.product.system.name         u:object_r:build_prop:s0 exact string

ro.system.build.date                        u:object_r:build_prop:s0 exact string
ro.system.build.date.utc                    u:object_r:build_prop:s0 exact int
ro.system.build.fingerprint                 u:object_r:build_prop:s0 exact string
ro.system.build.id                          u:object_r:build_prop:s0 exact string
ro.system.build.tags                        u:object_r:build_prop:s0 exact string
ro.system.build.type                        u:object_r:build_prop:s0 exact string
ro.system.build.version.incremental         u:object_r:build_prop:s0 exact string
ro.system.build.version.release             u:object_r:build_prop:s0 exact string
ro.system.build.version.release_or_codename u:object_r:build_prop:s0 exact string
ro.system.build.version.sdk                 u:object_r:build_prop:s0 exact int

ro.adb.secure u:object_r:build_prop:s0 exact bool
ro.secure     u:object_r:userdebug_or_eng_prop:s0 exact int

ro.product.system_ext.brand        u:object_r:build_prop:s0 exact string
ro.product.system_ext.device       u:object_r:build_prop:s0 exact string
ro.product.system_ext.manufacturer u:object_r:build_prop:s0 exact string
ro.product.system_ext.model        u:object_r:build_prop:s0 exact string
ro.product.system_ext.name         u:object_r:build_prop:s0 exact string

ro.system_ext.build.date                        u:object_r:build_prop:s0 exact string
ro.system_ext.build.date.utc                    u:object_r:build_prop:s0 exact int
ro.system_ext.build.fingerprint                 u:object_r:build_prop:s0 exact string
ro.system_ext.build.id                          u:object_r:build_prop:s0 exact string
ro.system_ext.build.tags                        u:object_r:build_prop:s0 exact string
ro.system_ext.build.type                        u:object_r:build_prop:s0 exact string
ro.system_ext.build.version.incremental         u:object_r:build_prop:s0 exact string
ro.system_ext.build.version.release             u:object_r:build_prop:s0 exact string
ro.system_ext.build.version.release_or_codename u:object_r:build_prop:s0 exact string
ro.system_ext.build.version.sdk                 u:object_r:build_prop:s0 exact int

# These ro.product.product.* and ro.product.build.* are set by /product/etc/build.prop
ro.product.product.brand        u:object_r:build_prop:s0 exact string
ro.product.product.device       u:object_r:build_prop:s0 exact string
ro.product.product.manufacturer u:object_r:build_prop:s0 exact string
ro.product.product.model        u:object_r:build_prop:s0 exact string
ro.product.product.name         u:object_r:build_prop:s0 exact string

ro.product.build.date                        u:object_r:build_prop:s0 exact string
ro.product.build.date.utc                    u:object_r:build_prop:s0 exact int
ro.product.build.fingerprint                 u:object_r:build_prop:s0 exact string
ro.product.build.id                          u:object_r:build_prop:s0 exact string
ro.product.build.tags                        u:object_r:build_prop:s0 exact string
ro.product.build.type                        u:object_r:build_prop:s0 exact string
ro.product.build.version.incremental         u:object_r:build_prop:s0 exact string
ro.product.build.version.release             u:object_r:build_prop:s0 exact string
ro.product.build.version.release_or_codename u:object_r:build_prop:s0 exact string
ro.product.build.version.sdk                 u:object_r:build_prop:s0 exact int

# These 5 properties are set by property_service
ro.product.brand         u:object_r:build_prop:s0 exact string
ro.product.device        u:object_r:build_prop:s0 exact string
ro.product.manufacturer  u:object_r:build_prop:s0 exact string
ro.product.model         u:object_r:build_prop:s0 exact string
ro.product.name          u:object_r:build_prop:s0 exact string

# Sanitizer properties
ro.sanitize.address          u:object_r:build_prop:s0 exact bool
ro.sanitize.cfi              u:object_r:build_prop:s0 exact bool
ro.sanitize.default-ub       u:object_r:build_prop:s0 exact bool
ro.sanitize.fuzzer           u:object_r:build_prop:s0 exact bool
ro.sanitize.hwaddress        u:object_r:build_prop:s0 exact bool
ro.sanitize.integer_overflow u:object_r:build_prop:s0 exact bool
ro.sanitize.safe-stack       u:object_r:build_prop:s0 exact bool
ro.sanitize.scudo            u:object_r:build_prop:s0 exact bool
ro.sanitize.thread           u:object_r:build_prop:s0 exact bool
ro.sanitize.undefined        u:object_r:build_prop:s0 exact bool

# All odm build props are set by /odm/build.prop
ro.odm.build.date                u:object_r:build_odm_prop:s0 exact string
ro.odm.build.date.utc            u:object_r:build_odm_prop:s0 exact int
ro.odm.build.fingerprint         u:object_r:build_odm_prop:s0 exact string
ro.odm.build.version.incremental u:object_r:build_odm_prop:s0 exact string
ro.odm.build.media_performance_class   u:object_r:build_odm_prop:s0 exact int

ro.product.odm.brand        u:object_r:build_odm_prop:s0 exact string
ro.product.odm.device       u:object_r:build_odm_prop:s0 exact string
ro.product.odm.manufacturer u:object_r:build_odm_prop:s0 exact string
ro.product.odm.model        u:object_r:build_odm_prop:s0 exact string
ro.product.odm.name         u:object_r:build_odm_prop:s0 exact string

# All vendor_dlkm build props are set by /vendor_dlkm/etc/build.prop
ro.vendor_dlkm.build.date                        u:object_r:build_vendor_prop:s0 exact string
ro.vendor_dlkm.build.date.utc                    u:object_r:build_vendor_prop:s0 exact int
ro.vendor_dlkm.build.fingerprint                 u:object_r:build_vendor_prop:s0 exact string
ro.vendor_dlkm.build.id                          u:object_r:build_vendor_prop:s0 exact string
ro.vendor_dlkm.build.tags                        u:object_r:build_vendor_prop:s0 exact string
ro.vendor_dlkm.build.type                        u:object_r:build_vendor_prop:s0 exact string
ro.vendor_dlkm.build.version.incremental         u:object_r:build_vendor_prop:s0 exact string
ro.vendor_dlkm.build.version.release             u:object_r:build_vendor_prop:s0 exact string
ro.vendor_dlkm.build.version.release_or_codename u:object_r:build_vendor_prop:s0 exact string
ro.vendor_dlkm.build.version.sdk                 u:object_r:build_vendor_prop:s0 exact int

# All odm_dlkm build props are set by /odm_dlkm/etc/build.prop
ro.product.odm_dlkm.brand        u:object_r:build_odm_prop:s0 exact string
ro.product.odm_dlkm.device       u:object_r:build_odm_prop:s0 exact string
ro.product.odm_dlkm.manufacturer u:object_r:build_odm_prop:s0 exact string
ro.product.odm_dlkm.model        u:object_r:build_odm_prop:s0 exact string
ro.product.odm_dlkm.name         u:object_r:build_odm_prop:s0 exact string

ro.odm_dlkm.build.date                        u:object_r:build_odm_prop:s0 exact string
ro.odm_dlkm.build.date.utc                    u:object_r:build_odm_prop:s0 exact int
ro.odm_dlkm.build.fingerprint                 u:object_r:build_odm_prop:s0 exact string
ro.odm_dlkm.build.id                          u:object_r:build_odm_prop:s0 exact string
ro.odm_dlkm.build.tags                        u:object_r:build_odm_prop:s0 exact string
ro.odm_dlkm.build.type                        u:object_r:build_odm_prop:s0 exact string
ro.odm_dlkm.build.version.incremental         u:object_r:build_odm_prop:s0 exact string
ro.odm_dlkm.build.version.release             u:object_r:build_odm_prop:s0 exact string
ro.odm_dlkm.build.version.release_or_codename u:object_r:build_odm_prop:s0 exact string
ro.odm_dlkm.build.version.sdk                 u:object_r:build_odm_prop:s0 exact int

# enforces debugfs restrictions in non-user builds, set by /vendor/build.prop
ro.product.debugfs_restrictions.enabled u:object_r:debugfs_restriction_prop:s0 exact bool

# All vendor build props are set by /vendor/build.prop
ro.vendor.build.date                        u:object_r:build_vendor_prop:s0 exact string
ro.vendor.build.date.utc                    u:object_r:build_vendor_prop:s0 exact int
ro.vendor.build.fingerprint                 u:object_r:build_vendor_prop:s0 exact string
ro.vendor.build.fingerprint_has_digest      u:object_r:build_vendor_prop:s0 exact bool
ro.vendor.build.id                          u:object_r:build_vendor_prop:s0 exact string
ro.vendor.build.tags                        u:object_r:build_vendor_prop:s0 exact string
ro.vendor.build.type                        u:object_r:build_vendor_prop:s0 exact string
ro.vendor.build.version.incremental         u:object_r:build_vendor_prop:s0 exact string
ro.vendor.build.version.release             u:object_r:build_vendor_prop:s0 exact string
ro.vendor.build.version.release_or_codename u:object_r:build_vendor_prop:s0 exact string
ro.vendor.build.version.sdk                 u:object_r:build_vendor_prop:s0 exact int
ro.vendor.build.dont_use_vabc               u:object_r:build_vendor_prop:s0 exact bool

# All vendor CPU abilist props are set by /vendor/build.prop
ro.vendor.product.cpu.abilist   u:object_r:build_vendor_prop:s0 exact string
ro.vendor.product.cpu.abilist32 u:object_r:build_vendor_prop:s0 exact string
ro.vendor.product.cpu.abilist64 u:object_r:build_vendor_prop:s0 exact string

ro.product.board                    u:object_r:build_vendor_prop:s0 exact string
ro.product.first_api_level          u:object_r:build_vendor_prop:s0 exact int
ro.product.vendor.brand             u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor.device            u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor.manufacturer      u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor.model             u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor.name              u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor_dlkm.brand        u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor_dlkm.device       u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor_dlkm.manufacturer u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor_dlkm.model        u:object_r:build_vendor_prop:s0 exact string
ro.product.vendor_dlkm.name         u:object_r:build_vendor_prop:s0 exact string

# build props for attestation feature are set by property_service
ro.product.brand_for_attestation u:object_r:build_attestation_prop:s0 exact string
ro.product.model_for_attestation u:object_r:build_attestation_prop:s0 exact string
ro.product.name_for_attestation  u:object_r:build_attestation_prop:s0 exact string
ro.product.device_for_attestation  u:object_r:build_attestation_prop:s0 exact string
ro.product.manufacturer_for_attestation  u:object_r:build_attestation_prop:s0 exact string

# Vendor API level properties for the vFRC and GRF
ro.board.first_api_level u:object_r:build_vendor_prop:s0 exact int
ro.board.api_level       u:object_r:build_vendor_prop:s0 exact int
ro.board.api_frozen      u:object_r:build_vendor_prop:s0 exact bool
ro.llndk.api_level       u:object_r:build_vendor_prop:s0 exact int
ro.vendor.api_level      u:object_r:build_vendor_prop:s0 exact int

# Boot image build props set by /{second_stage_resources/,}boot/etc/build.prop
ro.bootimage.build.date                        u:object_r:build_bootimage_prop:s0 exact string
ro.bootimage.build.date.utc                    u:object_r:build_bootimage_prop:s0 exact int
ro.bootimage.build.fingerprint                 u:object_r:build_bootimage_prop:s0 exact string
ro.bootimage.build.id                          u:object_r:build_bootimage_prop:s0 exact string
ro.bootimage.build.tags                        u:object_r:build_bootimage_prop:s0 exact string
ro.bootimage.build.type                        u:object_r:build_bootimage_prop:s0 exact string
ro.bootimage.build.version.incremental         u:object_r:build_bootimage_prop:s0 exact string
ro.bootimage.build.version.release             u:object_r:build_bootimage_prop:s0 exact string
ro.bootimage.build.version.release_or_codename u:object_r:build_bootimage_prop:s0 exact string
ro.bootimage.build.version.sdk                 u:object_r:build_bootimage_prop:s0 exact int

ro.product.bootimage.brand        u:object_r:build_bootimage_prop:s0 exact string
ro.product.bootimage.device       u:object_r:build_bootimage_prop:s0 exact string
ro.product.bootimage.manufacturer u:object_r:build_bootimage_prop:s0 exact string
ro.product.bootimage.model        u:object_r:build_bootimage_prop:s0 exact string
ro.product.bootimage.name         u:object_r:build_bootimage_prop:s0 exact string

# ro.product.property_source_order is settable from any build.prop
ro.product.property_source_order u:object_r:build_config_prop:s0 exact string

ro.crypto.state u:object_r:vold_status_prop:s0 exact enum encrypted unencrypted unsupported
ro.crypto.type  u:object_r:vold_status_prop:s0 exact enum block file managed none

ro.property_service.version u:object_r:property_service_version_prop:s0 exact int
ro.property_service.async_persist_writes u:object_r:build_config_prop:s0 exact bool

ro.vendor.redirect_socket_calls u:object_r:vendor_socket_hook_prop:s0 exact bool

service.bootanim.exit u:object_r:bootanim_system_prop:s0 exact int
service.bootanim.progress u:object_r:bootanim_system_prop:s0 exact int

sys.init.userspace_reboot.in_progress u:object_r:userspace_reboot_exported_prop:s0 exact bool
sys.use_memfd                         u:object_r:use_memfd_prop:s0 exact bool

vold.decrypt u:object_r:vold_status_prop:s0 exact string

aaudio.hw_burst_min_usec     u:object_r:aaudio_config_prop:s0 exact int
aaudio.minimum_sleep_usec    u:object_r:aaudio_config_prop:s0 exact int
aaudio.mixer_bursts          u:object_r:aaudio_config_prop:s0 exact int
aaudio.mmap_exclusive_policy u:object_r:aaudio_config_prop:s0 exact int
aaudio.mmap_policy           u:object_r:aaudio_config_prop:s0 exact int
aaudio.wakeup_delay_usec     u:object_r:aaudio_config_prop:s0 exact int

persist.rcs.supported u:object_r:exported_default_prop:s0 exact int

ro.bionic.2nd_arch        u:object_r:cpu_variant_prop:s0 exact string
ro.bionic.2nd_cpu_variant u:object_r:cpu_variant_prop:s0 exact string
ro.bionic.arch            u:object_r:cpu_variant_prop:s0 exact string
ro.bionic.cpu_variant     u:object_r:cpu_variant_prop:s0 exact string

ro.board.platform u:object_r:exported_default_prop:s0 exact string

ro.boot.fake_battery         u:object_r:exported_default_prop:s0 exact int
ro.boot.fstab_suffix         u:object_r:exported_default_prop:s0 exact string
ro.boot.hardware.revision    u:object_r:exported_default_prop:s0 exact string
ro.boot.product.hardware.sku u:object_r:exported_default_prop:s0 exact string
ro.boot.product.vendor.sku   u:object_r:exported_default_prop:s0 exact string
ro.boot.slot_suffix          u:object_r:exported_default_prop:s0 exact string

ro.boringcrypto.hwrand u:object_r:exported_default_prop:s0 exact bool

# Update related props
ro.build.ab_update                                u:object_r:exported_default_prop:s0 exact string
ro.build.ab_update.gki.prevent_downgrade_version  u:object_r:ab_update_gki_prop:s0 exact bool
ro.build.ab_update.gki.prevent_downgrade_spl      u:object_r:ab_update_gki_prop:s0 exact bool

ro.build.expect.baseband   u:object_r:exported_default_prop:s0 exact string
ro.build.expect.bootloader u:object_r:exported_default_prop:s0 exact string

ro.carrier u:object_r:exported_default_prop:s0 exact string

ro.config.low_ram           u:object_r:exported_config_prop:s0 exact bool
ro.config.vc_call_vol_steps u:object_r:exported_config_prop:s0 exact int

ro.frp.pst u:object_r:exported_default_prop:s0 exact string

ro.hardware.activity_recognition u:object_r:exported_default_prop:s0 exact string
ro.hardware.audio                u:object_r:exported_default_prop:s0 exact string
ro.hardware.audio.a2dp           u:object_r:exported_default_prop:s0 exact string
ro.hardware.audio.hearing_aid    u:object_r:exported_default_prop:s0 exact string
ro.hardware.audio.primary        u:object_r:exported_default_prop:s0 exact string
ro.hardware.audio.usb            u:object_r:exported_default_prop:s0 exact string
ro.hardware.audio_policy         u:object_r:exported_default_prop:s0 exact string
ro.hardware.bootctrl             u:object_r:exported_default_prop:s0 exact string
ro.hardware.camera               u:object_r:exported_default_prop:s0 exact string
ro.hardware.consumerir           u:object_r:exported_default_prop:s0 exact string
ro.hardware.context_hub          u:object_r:exported_default_prop:s0 exact string
ro.hardware.egl                  u:object_r:exported_default_prop:s0 exact string
ro.hardware.fingerprint          u:object_r:exported_default_prop:s0 exact string
ro.hardware.flp                  u:object_r:exported_default_prop:s0 exact string
ro.hardware.gatekeeper           u:object_r:exported_default_prop:s0 exact string
ro.hardware.gps                  u:object_r:exported_default_prop:s0 exact string
ro.hardware.gralloc              u:object_r:exported_default_prop:s0 exact string
ro.hardware.hdmi_cec             u:object_r:exported_default_prop:s0 exact string
ro.hardware.hwcomposer           u:object_r:exported_default_prop:s0 exact string
ro.hardware.input                u:object_r:exported_default_prop:s0 exact string
ro.hardware.keystore             u:object_r:exported_default_prop:s0 exact string
ro.hardware.keystore_desede      u:object_r:exported_default_prop:s0 exact string
ro.hardware.lights               u:object_r:exported_default_prop:s0 exact string
ro.hardware.local_time           u:object_r:exported_default_prop:s0 exact string
ro.hardware.memtrack             u:object_r:exported_default_prop:s0 exact string
ro.hardware.nfc                  u:object_r:exported_default_prop:s0 exact string
ro.hardware.nfc_nci              u:object_r:exported_default_prop:s0 exact string
ro.hardware.nfc_tag              u:object_r:exported_default_prop:s0 exact string
ro.hardware.nvram                u:object_r:exported_default_prop:s0 exact string
ro.hardware.power                u:object_r:exported_default_prop:s0 exact string
ro.hardware.radio                u:object_r:exported_default_prop:s0 exact string
ro.hardware.sensors              u:object_r:exported_default_prop:s0 exact string
ro.hardware.sound_trigger        u:object_r:exported_default_prop:s0 exact string
ro.hardware.thermal              u:object_r:exported_default_prop:s0 exact string
ro.hardware.tv_input             u:object_r:exported_default_prop:s0 exact string
ro.hardware.type                 u:object_r:exported_default_prop:s0 exact string
ro.hardware.vehicle              u:object_r:exported_default_prop:s0 exact string
ro.hardware.vibrator             u:object_r:exported_default_prop:s0 exact string
ro.hardware.virtual_device       u:object_r:exported_default_prop:s0 exact string
ro.hardware.vulkan               u:object_r:exported_default_prop:s0 exact string

ro.hw_timeout_multiplier u:object_r:hw_timeout_multiplier_prop:s0 exact int

ro.hwui.use_vulkan u:object_r:exported_default_prop:s0 exact bool

# ro.kernel.* properties are emulator specific and deprecated. Do not use.
# Should be retired once presubmit allows.
ro.kernel.qemu             u:object_r:exported_default_prop:s0 exact bool
ro.kernel.qemu.            u:object_r:exported_default_prop:s0
ro.kernel.android.bootanim u:object_r:exported_default_prop:s0 exact int

# This property is used by init to store the original value or /proc/sys/vm/watermark_scale_factor
ro.kernel.watermark_scale_factor          u:object_r:init_storage_prop:s0 exact int

ro.oem.key1 u:object_r:exported_default_prop:s0 exact string

ro.product.vndk.version u:object_r:vndk_prop:s0 exact string

ro.vndk.lite    u:object_r:vndk_prop:s0 exact bool
ro.vndk.version u:object_r:vndk_prop:s0 exact string

ro.vts.coverage u:object_r:vts_config_prop:s0 exact int

vts.native_server.on u:object_r:vts_status_prop:s0 exact bool

wifi.active.interface     u:object_r:wifi_hal_prop:s0 exact string
wifi.aware.interface      u:object_r:wifi_hal_prop:s0 exact string
wifi.concurrent.interface u:object_r:wifi_hal_prop:s0 exact string
wifi.direct.interface     u:object_r:wifi_hal_prop:s0 exact string
wifi.interface            u:object_r:wifi_hal_prop:s0 exact string
wifi.interface.           u:object_r:wifi_hal_prop:s0 prefix string
wlan.driver.status        u:object_r:wifi_hal_prop:s0 exact enum ok unloaded

ro.boot.wificountrycode u:object_r:wifi_config_prop:s0 exact string

ro.apex.updatable u:object_r:exported_default_prop:s0 exact bool

# Property to enable incremental feature
ro.incremental.enable      u:object_r:incremental_prop:s0

# Properties to configure userspace reboot.
init.userspace_reboot.is_supported u:object_r:userspace_reboot_config_prop:s0 exact bool
init.userspace_reboot.sigkill.timeoutmillis u:object_r:userspace_reboot_config_prop:s0 exact int
init.userspace_reboot.sigterm.timeoutmillis u:object_r:userspace_reboot_config_prop:s0 exact int
init.userspace_reboot.started.timeoutmillis u:object_r:userspace_reboot_config_prop:s0 exact int
init.userspace_reboot.userdata_remount.timeoutmillis u:object_r:userspace_reboot_config_prop:s0 exact int
init.userspace_reboot.watchdog.timeoutmillis u:object_r:userspace_reboot_config_prop:s0 exact int

sys.shutdown.requested u:object_r:exported_system_prop:s0 exact string

# surfaceflinger properties
ro.surface_flinger.default_composition_dataspace          u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.default_composition_pixel_format       u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.force_hwc_copy_for_virtual_displays    u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.has_HDR_display                        u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.has_wide_color_display                 u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.max_frame_buffer_acquired_buffers      u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.max_graphics_height                    u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.max_graphics_width                     u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.max_virtual_display_dimension          u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.primary_display_orientation            u:object_r:surfaceflinger_prop:s0 exact enum ORIENTATION_0 ORIENTATION_180 ORIENTATION_270 ORIENTATION_90
ro.surface_flinger.present_time_offset_from_vsync_ns      u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.running_without_sync_framework         u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.start_graphics_allocator_service       u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.use_color_management                   u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.use_context_priority                   u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.use_vr_flinger                         u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.vsync_event_phase_offset_ns            u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.vsync_sf_event_phase_offset_ns         u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.wcg_composition_dataspace              u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.wcg_composition_pixel_format           u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.display_primary_red                    u:object_r:surfaceflinger_prop:s0 exact string
ro.surface_flinger.display_primary_green                  u:object_r:surfaceflinger_prop:s0 exact string
ro.surface_flinger.display_primary_blue                   u:object_r:surfaceflinger_prop:s0 exact string
ro.surface_flinger.display_primary_white                  u:object_r:surfaceflinger_prop:s0 exact string
ro.surface_flinger.protected_contents                     u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.set_idle_timer_ms                      u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.set_touch_timer_ms                     u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.set_display_power_timer_ms             u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.support_kernel_idle_timer              u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.supports_background_blur               u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.use_smart_90_for_video                 u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.use_content_detection_for_refresh_rate u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.color_space_agnostic_dataspace         u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.refresh_rate_switching                 u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.update_device_product_info_on_hotplug_reconnect u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.enable_adpf_cpu_hint                   u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.enable_frame_rate_override             u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.enable_layer_caching                   u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.display_update_imminent_timeout_ms     u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.uclamp.min                             u:object_r:surfaceflinger_prop:s0 exact int
ro.surface_flinger.ignore_hdr_camera_layers               u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.clear_slots_with_set_layer_buffer      u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.prime_shader_cache.ultrahdr            u:object_r:surfaceflinger_prop:s0 exact bool
ro.surface_flinger.game_default_frame_rate_override       u:object_r:surfaceflinger_prop:s0 exact int

ro.sf.disable_triple_buffer u:object_r:surfaceflinger_prop:s0 exact bool
ro.sf.lcd_density           u:object_r:surfaceflinger_prop:s0 exact int

persist.sys.sf.color_mode       u:object_r:surfaceflinger_color_prop:s0 exact int
persist.sys.sf.color_saturation u:object_r:surfaceflinger_color_prop:s0 exact string
persist.sys.sf.native_mode      u:object_r:surfaceflinger_color_prop:s0 exact int

# Binder cache properties.  These are world-readable
cache_key.app_inactive                   u:object_r:binder_cache_system_server_prop:s0
cache_key.is_compat_change_enabled       u:object_r:binder_cache_system_server_prop:s0
cache_key.get_packages_for_uid           u:object_r:binder_cache_system_server_prop:s0
cache_key.has_system_feature             u:object_r:binder_cache_system_server_prop:s0
cache_key.is_interactive                 u:object_r:binder_cache_system_server_prop:s0
cache_key.is_power_save_mode             u:object_r:binder_cache_system_server_prop:s0
cache_key.is_user_unlocked               u:object_r:binder_cache_system_server_prop:s0
cache_key.volume_list                    u:object_r:binder_cache_system_server_prop:s0
cache_key.display_info                   u:object_r:binder_cache_system_server_prop:s0
cache_key.location_enabled               u:object_r:binder_cache_system_server_prop:s0
cache_key.package_info                   u:object_r:binder_cache_system_server_prop:s0

cache_key.bluetooth.                     u:object_r:binder_cache_bluetooth_server_prop:s0 prefix string
cache_key.system_server.                 u:object_r:binder_cache_system_server_prop:s0 prefix string
cache_key.telephony.                     u:object_r:binder_cache_telephony_server_prop:s0 prefix string

# Framework watchdog configuration properties.
framework_watchdog.fatal_count                u:object_r:framework_watchdog_config_prop:s0 exact int
framework_watchdog.fatal_window.second        u:object_r:framework_watchdog_config_prop:s0 exact int

# Framework configuration properties.
framework.pause_bg_animations.enabled         u:object_r:framework_status_prop:s0 exact bool

gsm.operator.iso-country       u:object_r:telephony_status_prop:s0 exact string
gsm.sim.operator.iso-country   u:object_r:telephony_status_prop:s0 exact string
gsm.sim.operator.numeric       u:object_r:telephony_status_prop:s0 exact string
persist.radio.airplane_mode_on u:object_r:telephony_status_prop:s0 exact bool

ro.cdma.home.operator.alpha       u:object_r:telephony_config_prop:s0 exact string
ro.cdma.home.operator.numeric     u:object_r:telephony_config_prop:s0 exact string
ro.com.android.dataroaming        u:object_r:telephony_config_prop:s0 exact bool
ro.com.android.prov_mobiledata    u:object_r:telephony_config_prop:s0 exact bool
ro.radio.noril                    u:object_r:telephony_config_prop:s0 exact string
ro.telephony.call_ring.multiple   u:object_r:telephony_config_prop:s0 exact bool
ro.telephony.default_cdma_sub     u:object_r:telephony_config_prop:s0 exact int
ro.telephony.default_network      u:object_r:telephony_config_prop:s0 exact string
ro.telephony.iwlan_operation_mode u:object_r:telephony_config_prop:s0 exact enum default legacy AP-assisted
telephony.active_modems.max_count u:object_r:telephony_config_prop:s0 exact int
telephony.lteOnCdmaDevice         u:object_r:telephony_config_prop:s0 exact int
persist.dbg.volte_avail_ovr       u:object_r:telephony_config_prop:s0 exact int
persist.dbg.volte_avail_ovr0      u:object_r:telephony_config_prop:s0 exact int
persist.dbg.volte_avail_ovr1      u:object_r:telephony_config_prop:s0 exact int
persist.dbg.volte_avail_ovr2      u:object_r:telephony_config_prop:s0 exact int
persist.dbg.vt_avail_ovr          u:object_r:telephony_config_prop:s0 exact int
persist.dbg.vt_avail_ovr0         u:object_r:telephony_config_prop:s0 exact int
persist.dbg.vt_avail_ovr1         u:object_r:telephony_config_prop:s0 exact int
persist.dbg.vt_avail_ovr2         u:object_r:telephony_config_prop:s0 exact int
persist.dbg.wfc_avail_ovr         u:object_r:telephony_config_prop:s0 exact int
persist.dbg.wfc_avail_ovr0        u:object_r:telephony_config_prop:s0 exact int
persist.dbg.wfc_avail_ovr1        u:object_r:telephony_config_prop:s0 exact int
persist.dbg.wfc_avail_ovr2        u:object_r:telephony_config_prop:s0 exact int

# System locale list filter configuration
ro.localization.locale_filter u:object_r:localization_prop:s0 exact string

# Graphics related properties
ro.opengles.version u:object_r:graphics_config_prop:s0 exact int

ro.egl.blobcache.multifile       u:object_r:graphics_config_prop:s0 exact bool
ro.egl.blobcache.multifile_limit u:object_r:graphics_config_prop:s0 exact int

ro.gfx.driver.0          u:object_r:graphics_config_prop:s0 exact string
ro.gfx.driver.1          u:object_r:graphics_config_prop:s0 exact string
ro.gfx.angle.supported   u:object_r:graphics_config_prop:s0 exact bool
ro.gfx.driver_build_time u:object_r:graphics_config_prop:s0 exact int

graphics.gpu.profiler.support          u:object_r:graphics_config_prop:s0 exact bool
graphics.gpu.profiler.vulkan_layer_apk u:object_r:graphics_config_prop:s0 exact string
persist.graphics.egl             u:object_r:graphics_config_writable_prop:s0 exact string

ro.cpuvulkan.version u:object_r:graphics_config_prop:s0 exact int

ro.vulkan.apex          u:object_r:graphics_config_prop:s0 exact string

# surfaceflinger-settable
graphics.display.kernel_idle_timer.enabled u:object_r:surfaceflinger_display_prop:s0 exact bool

# Disable/enable charger input
power.battery_input.suspended u:object_r:power_debug_prop:s0 exact bool

# zygote config property
zygote.critical_window.minute u:object_r:zygote_config_prop:s0 exact int

ro.zygote.disable_gl_preload u:object_r:zygote_config_prop:s0 exact bool

# Allows a device to run without batch attestation keys
remote_provisioning.strongbox.rkp_only u:object_r:remote_prov_prop:s0 exact bool
remote_provisioning.tee.rkp_only u:object_r:remote_prov_prop:s0 exact bool

# Hostname for the remote provisioning server a device should communicate with
remote_provisioning.hostname u:object_r:remote_prov_prop:s0 exact string

# Broadcast boot stages, which keystore listens to
keystore.boot_level u:object_r:keystore_listen_prop:s0 exact int

# Property that tracks keystore crash counts during a boot cycle.
keystore.crash_count u:object_r:keystore_crash_prop:s0 exact int

# Configure the means by which we protect the L0 key from the future
ro.keystore.boot_level_key.strategy u:object_r:keystore_config_prop:s0 exact string

partition.system.verified     u:object_r:verity_status_prop:s0 exact string
partition.system_ext.verified u:object_r:verity_status_prop:s0 exact string
partition.product.verified    u:object_r:verity_status_prop:s0 exact string
partition.vendor.verified     u:object_r:verity_status_prop:s0 exact string
partition.odm.verified        u:object_r:verity_status_prop:s0 exact string

# Properties that holds the hashtree information for verity partitions.
partition.system.verified.hash_alg     u:object_r:verity_status_prop:s0 exact string
partition.system_ext.verified.hash_alg u:object_r:verity_status_prop:s0 exact string
partition.product.verified.hash_alg    u:object_r:verity_status_prop:s0 exact string
partition.vendor.verified.hash_alg     u:object_r:verity_status_prop:s0 exact string
partition.odm.verified.hash_alg        u:object_r:verity_status_prop:s0 exact string
partition.system.verified.root_digest     u:object_r:verity_status_prop:s0 exact string
partition.system_ext.verified.root_digest u:object_r:verity_status_prop:s0 exact string
partition.product.verified.root_digest    u:object_r:verity_status_prop:s0 exact string
partition.vendor.verified.root_digest     u:object_r:verity_status_prop:s0 exact string
partition.odm.verified.root_digest        u:object_r:verity_status_prop:s0 exact string

ro.setupwizard.enterprise_mode u:object_r:setupwizard_prop:s0 exact bool
ro.setupwizard.esim_cid_ignore u:object_r:setupwizard_prop:s0 exact string
ro.setupwizard.rotation_locked u:object_r:setupwizard_prop:s0 exact bool
ro.setupwizard.wifi_on_exit    u:object_r:setupwizard_prop:s0 exact bool

ro.setupwizard.mode            u:object_r:setupwizard_mode_prop:s0 exact string

setupwizard.enable_assist_gesture_training                         u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.avoid_duplicate_tos                            u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.baseline_setupwizard_enabled                   u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.day_night_mode_enabled                         u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.deferred_setup_low_ram_filter                  u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.deferred_setup_notification                    u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.deferred_setup_suggestion                      u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.device_default_dark_mode                       u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.esim_enabled                                   u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.google_services_deferred_setup_pretend_not_suw u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.lock_mobile_data                               u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.lock_mobile_data.carrier-1                     u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.portal_notification                            u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.predeferred_enabled                            u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.return_partner_customization_bundle            u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.show_pixel_tos                                 u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.use_biometric_lock                             u:object_r:setupwizard_prop:s0 exact bool
setupwizard.feature.wallpaper_suggestion_after_restore             u:object_r:setupwizard_prop:s0 exact bool
setupwizard.logging                                                u:object_r:setupwizard_prop:s0 exact bool
setupwizard.metrics_debug_mode                                     u:object_r:setupwizard_prop:s0 exact bool
setupwizard.theme                                                  u:object_r:setupwizard_prop:s0 exact string

db.log.detailed              u:object_r:sqlite_log_prop:s0 exact bool
db.log.slow_query_threshold  u:object_r:sqlite_log_prop:s0 exact int
db.log.slow_query_threshold. u:object_r:sqlite_log_prop:s0 prefix int

# SOC related props
ro.soc.manufacturer u:object_r:soc_prop:s0 exact string
ro.soc.model        u:object_r:soc_prop:s0 exact string

# set to true when running rollback tests to disable fallback-to-copy when enabling rollbacks
# to detect failures where hard linking should work otherwise
persist.rollback.is_test u:object_r:rollback_test_prop:s0 exact bool

# bootanimation properties
ro.bootanim.quiescent.enabled u:object_r:bootanim_config_prop:s0 exact bool

# dck properties
ro.gms.dck.eligible_wcc u:object_r:dck_prop:s0 exact int
ro.gms.dck.se_capability u:object_r:dck_prop:s0 exact int

# virtualization service properties
virtualizationservice.state.last_cid u:object_r:virtualizationservice_prop:s0 exact uint

# composd properties
composd.vm.art.memory_mib.config u:object_r:composd_vm_art_prop:s0 exact uint
composd.vm.vendor.memory_mib.config u:object_r:composd_vm_vendor_prop:s0 exact int

# properties for the virtual Face HAL
persist.vendor.face.virtual.type u:object_r:virtual_face_hal_prop:s0 exact string
persist.vendor.face.virtual.strength u:object_r:virtual_face_hal_prop:s0 exact string
persist.vendor.face.virtual.enrollments u:object_r:virtual_face_hal_prop:s0 exact string
persist.vendor.face.virtual.features u:object_r:virtual_face_hal_prop:s0 exact string
persist.vendor.face.virtual.lockout_enable u:object_r:virtual_face_hal_prop:s0 exact bool
persist.vendor.face.virtual.lockout_timed_enable u:object_r:virtual_face_hal_prop:s0 exact bool
persist.vendor.face.virtual.lockout_timed_threshold u:object_r:virtual_face_hal_prop:s0 exact int
persist.vendor.face.virtual.lockout_timed_duration u:object_r:virtual_face_hal_prop:s0 exact int
persist.vendor.face.virtual.lockout_permanent_threshold u:object_r:virtual_face_hal_prop:s0 exact int
vendor.face.virtual.no_human_face_detected u:object_r:virtual_face_hal_prop:s0 exact bool
vendor.face.virtual.enrollment_hit u:object_r:virtual_face_hal_prop:s0 exact int
vendor.face.virtual.next_enrollment u:object_r:virtual_face_hal_prop:s0 exact string
vendor.face.virtual.authenticator_id u:object_r:virtual_face_hal_prop:s0 exact int
vendor.face.virtual.challenge u:object_r:virtual_face_hal_prop:s0 exact int
vendor.face.virtual.lockout u:object_r:virtual_face_hal_prop:s0 exact bool
vendor.face.virtual.operation_authenticate_fails u:object_r:virtual_face_hal_prop:s0 exact bool
vendor.face.virtual.operation_detect_interaction_fails u:object_r:virtual_face_hal_prop:s0 exact bool
vendor.face.virtual.operation_enroll_fails u:object_r:virtual_face_hal_prop:s0 exact bool
vendor.face.virtual.operation_authenticate_latency u:object_r:virtual_face_hal_prop:s0 exact string
vendor.face.virtual.operation_detect_interaction_latency u:object_r:virtual_face_hal_prop:s0 exact string
vendor.face.virtual.operation_enroll_latency u:object_r:virtual_face_hal_prop:s0 exact string
vendor.face.virtual.operation_authenticate_duration u:object_r:virtual_face_hal_prop:s0 exact int

# properties for the virtual Fingerprint HAL
persist.vendor.fingerprint.virtual.type u:object_r:virtual_fingerprint_hal_prop:s0 exact string
persist.vendor.fingerprint.virtual.enrollments u:object_r:virtual_fingerprint_hal_prop:s0 exact string
persist.vendor.fingerprint.virtual.lockout u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
persist.vendor.fingerprint.virtual.authenticator_id u:object_r:virtual_fingerprint_hal_prop:s0 exact int
persist.vendor.fingerprint.virtual.sensor_location u:object_r:virtual_fingerprint_hal_prop:s0 exact string
persist.vendor.fingerprint.virtual.sensor_id u:object_r:virtual_fingerprint_hal_prop:s0 exact int
persist.vendor.fingerprint.virtual.sensor_strength u:object_r:virtual_fingerprint_hal_prop:s0 exact int
persist.vendor.fingerprint.virtual.max_enrollments u:object_r:virtual_fingerprint_hal_prop:s0 exact int
persist.vendor.fingerprint.virtual.navigation_guesture u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
persist.vendor.fingerprint.virtual.detect_interaction u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
persist.vendor.fingerprint.virtual.udfps.display_touch u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
persist.vendor.fingerprint.virtual.udfps.control_illumination u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
persist.vendor.fingerprint.virtual.lockout_enable u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
persist.vendor.fingerprint.virtual.lockout_timed_threshold u:object_r:virtual_fingerprint_hal_prop:s0 exact int
persist.vendor.fingerprint.virtual.lockout_timed_duration u:object_r:virtual_fingerprint_hal_prop:s0 exact int
persist.vendor.fingerprint.virtual.lockout_permanent_threshold u:object_r:virtual_fingerprint_hal_prop:s0 exact int
vendor.fingerprint.virtual.enrollment_hit u:object_r:virtual_fingerprint_hal_prop:s0 exact int
vendor.fingerprint.virtual.next_enrollment u:object_r:virtual_fingerprint_hal_prop:s0 exact string
vendor.fingerprint.virtual.challenge u:object_r:virtual_fingerprint_hal_prop:s0 exact int
vendor.fingerprint.virtual.operation_authenticate_fails u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
vendor.fingerprint.virtual.operation_detect_interaction_fails u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
vendor.fingerprint.virtual.operation_enroll_fails u:object_r:virtual_fingerprint_hal_prop:s0 exact bool
vendor.fingerprint.virtual.operation_authenticate_latency u:object_r:virtual_fingerprint_hal_prop:s0 exact string
vendor.fingerprint.virtual.operation_detect_interaction_latency u:object_r:virtual_fingerprint_hal_prop:s0 exact string
vendor.fingerprint.virtual.operation_enroll_latency u:object_r:virtual_fingerprint_hal_prop:s0 exact string
vendor.fingerprint.virtual.operation_authenticate_duration u:object_r:virtual_fingerprint_hal_prop:s0 exact int

# properties for tuner
ro.tuner.lazyhal    u:object_r:tuner_config_prop:s0 exact bool
tuner.server.enable u:object_r:tuner_server_ctl_prop:s0 exact bool

# Adaptive haptics settings property
vibrator.adaptive_haptics.enabled u:object_r:adaptive_haptics_prop:s0 exact string

# UVC Gadget property
ro.usb.uvc.enabled      u:object_r:usb_uvc_enabled_prop:s0 exact bool

# System UI notification properties
persist.sysui.notification.ranking_update_ashmem u:object_r:persist_sysui_ranking_update_prop:s0 exact bool
persist.sysui.notification.builder_extras_override u:object_r:persist_sysui_builder_extras_prop:s0 exact bool

# Properties for Quick Start setup.
ro.quick_start.oem_id u:object_r:quick_start_prop:s0 exact string
ro.quick_start.device_id u:object_r:quick_start_prop:s0 exact string

# Properties for sensor service
sensors.aosp_low_power_sensor_fusion.maximum_rate u:object_r:sensors_config_prop:s0 exact uint

# Properties for game manager service
persist.graphics.game_default_frame_rate.enabled  u:object_r:game_manager_config_prop:s0 exact bool

# Properties for app archiving
pm.archiving.enabled      u:object_r:pm_archiving_enabled_prop:s0 exact bool

