diff --git a/app.te b/app.te index b8833dbf1698cccc81d2f795f73408f29841735b..f6b730c3f7f2343e2c72ecf76e7e2c22c2329129 100644 --- a/app.te +++ b/app.te @@ -120,6 +120,9 @@ allow appdomain usbaccessory_device:chr_file { read write getattr }; # For art. allow appdomain dalvikcache_data_file:file execute; +# /data/dalvik-cache/profiles +allow appdomain dalvikcache_profiles_data_file:file write; + # For legacy unlabeled userdata on existing devices. # See discussion of Unlabeled files in domain.te for more information. allow appdomain unlabeled:file x_file_perms; diff --git a/domain.te b/domain.te index c3292459125fda3a43c8a8be544ded6370e79e60..57a5b504a477bd0388fdc7f8ca4b5a44e901e344 100644 --- a/domain.te +++ b/domain.te @@ -100,6 +100,8 @@ allow domain apk_data_file:file r_file_perms; # Read /data/dalvik-cache. allow domain dalvikcache_data_file:dir { search getattr }; allow domain dalvikcache_data_file:file r_file_perms; +allow domain dalvikcache_profiles_data_file:dir { search getattr }; +allow domain dalvikcache_profiles_data_file:file r_file_perms; # Read already opened /cache files. allow domain cache_file:dir r_dir_perms; diff --git a/file.te b/file.te index 6b7eda838f92fdea120310555ff7199cf1f466b7..5dd6c9cbd7545afa218244f38a4081be1ed1d52e 100644 --- a/file.te +++ b/file.te @@ -52,6 +52,8 @@ type apk_private_data_file, file_type, data_file_type; type apk_private_tmp_file, file_type, data_file_type, mlstrustedobject; # /data/dalvik-cache type dalvikcache_data_file, file_type, data_file_type; +# /data/dalvik-cache/profiles +type dalvikcache_profiles_data_file, file_type, data_file_type; # /data/local - writable by shell type shell_data_file, file_type, data_file_type; # /data/gps diff --git a/file_contexts b/file_contexts index dc9148137d97c1f14259a917c0d868c18975bbcb..c136e26df6129f930b45fff513a8b403b504767a 100644 --- a/file_contexts +++ b/file_contexts @@ -168,6 +168,7 @@ /data/drm(/.*)? u:object_r:drm_data_file:s0 /data/gps(/.*)? u:object_r:gps_data_file:s0 /data/dalvik-cache(/.*)? u:object_r:dalvikcache_data_file:s0 +/data/dalvik-cache/profiles(/.*)? u:object_r:dalvikcache_profiles_data_file:s0 /data/anr(/.*)? u:object_r:anr_data_file:s0 /data/app(/.*)? u:object_r:apk_data_file:s0 /data/app/vmdl.*\.tmp u:object_r:apk_tmp_file:s0 diff --git a/installd.te b/installd.te index 3f5e9a13bbb62520a60502c845d9f8d5a21d624b..a2b068796ea7ac59f1353a36f0d6f9c98a438a6a 100644 --- a/installd.te +++ b/installd.te @@ -9,6 +9,8 @@ allow installd self:capability { chown dac_override fowner fsetid setgid setuid allow installd system_data_file:file create_file_perms; allow installd system_data_file:lnk_file create; allow installd dalvikcache_data_file:file create_file_perms; +allow installd dalvikcache_profiles_data_file:dir create_dir_perms; +allow installd dalvikcache_profiles_data_file:file create_file_perms; allow installd data_file_type:dir create_dir_perms; allow installd data_file_type:dir { relabelfrom relabelto }; allow installd data_file_type:{ file_class_set } { getattr unlink };