##########################
# 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
ro.misctrl.             u:object_r:misctrl_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

# Prop indicates the apex that bundles input configuration files (*.idc,*.kl,*.kcm)
input_device.config_file.apex    u:object_r:input_device_config_prop:s0 exact string

# 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 AudioPolicyManager to configure whether
# to enable spatialization for stereo channel mask
ro.audio.stereo_spatialization_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

# Boolean property used in libaudiohal@aidl to check if the SoC vendor
# provides an implementation of IHalAdapterVendorExtension interface.
# See b/323989070 for the discussion why this approach was chosen.
ro.audio.ihaladaptervendorextension_enabled u:object_r:system_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.leaudio_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.sco.managed_by_audio                       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_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
persist.bootanim.color1     u:object_r:bootanim_system_prop:s0 exact int
persist.bootanim.color2     u:object_r:bootanim_system_prop:s0 exact int
persist.bootanim.color3     u:object_r:bootanim_system_prop:s0 exact int
persist.bootanim.color4     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

# Properties for ThreadNetworkService
threadnetwork.country_code u:object_r:threadnetwork_config_prop:s0 exact string

# Properties for crashrecovery
crashrecovery.attempting_factory_reset u:object_r:crashrecovery_prop:s0 exact bool
crashrecovery.attempting_reboot u:object_r:crashrecovery_prop:s0 exact bool
crashrecovery.boot_mitigation_count u:object_r:crashrecovery_prop:s0 exact int
crashrecovery.boot_mitigation_start u:object_r:crashrecovery_prop:s0 exact int
crashrecovery.max_rescue_level_attempted u:object_r:crashrecovery_prop:s0 exact int
crashrecovery.rescue_boot_count u:object_r:crashrecovery_prop:s0 exact int
crashrecovery.rescue_boot_start u:object_r:crashrecovery_prop:s0 exact int
persist.crashrecovery.enable_rescue u:object_r:crashrecovery_prop:s0 exact bool
persist.crashrecovery.last_factory_reset u:object_r:crashrecovery_prop:s0 exact int
