summaryrefslogtreecommitdiff
path: root/compiler/dex/inline_method_analyser.h
diff options
context:
space:
mode:
author Jiakai Zhang <jiakaiz@google.com> 2024-02-27 13:43:15 +0000
committer Jiakai Zhang <jiakaiz@google.com> 2024-02-28 10:31:24 +0000
commitc62d3a210b2e53ee121e9ffbec24702e938cce04 (patch)
treef1ab8ca7ace1e23b91f0dea39211c00487cc5638 /compiler/dex/inline_method_analyser.h
parent5c4f3e5e8b1031ab112e273620e2b2cb89432d57 (diff)
Move the creation of the staging directory to odrefresh.
Historically, the creation of the odrefresh staging directory was done by libartpalette. This was because the operation needs to call setfilecon. However, setfilecon is actually a system API since R, so odrefresh can directly call it. Regarding SELinux policy, the path to the staging directory is not hardcoded in file context. SELinux allows odrefresh to create directories in apex_art_data_file (/data/misc/apexdata/com.android.art) and relabeling any directory from apex_art_data_file to apex_art_staging_data_file. Therefore, odrefresh has sufficient permissions to create the staging directory at /data/misc/apexdata/com.android.art/staging, regardless of what the staging directory path was in libartpalette. This change allows us to perform rename(2) to move a file from the staging directory to the output direcory when odrefresh runs on boot. CompOS changes need to follow to allow the same when odrefresh runs in CompOS. Test: atest odsign_e2e_tests_full Change-Id: Ic9954af2929b2fc5c6bc4258ddf41d3a606387c0
Diffstat (limited to 'compiler/dex/inline_method_analyser.h')
0 files changed, 0 insertions, 0 deletions