1# Copyright (c) 2021-2022 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14# avc:  denied  { map } for  pid=1449 comm="write_updater" path="/dev/__parameters__/u:object_r:debug_param:s0" dev="tmpfs" ino=72 scontext=u:r:write_updater:s0 tcontext=u:object_r:debug_param:s0 tclass=file permissive=1
15# avc:  denied  { open } for  pid=1449 comm="write_updater" path="/dev/__parameters__/u:object_r:debug_param:s0" dev="tmpfs" ino=72 scontext=u:r:write_updater:s0 tcontext=u:object_r:debug_param:s0 tclass=file permissive=1
16# avc:  denied  { read } for  pid=1449 comm="write_updater" name="u:object_r:debug_param:s0" dev="tmpfs" ino=72 scontext=u:r:write_updater:s0 tcontext=u:object_r:debug_param:s0 tclass=file permissive=1
17allow write_updater debug_param:file { map open read };
18
19# avc:  denied  { search } for  pid=1449 comm="write_updater" name="by-name" dev="tmpfs" ino=12 scontext=u:r:write_updater:s0 tcontext=u:object_r:dev_block_file:s0 tclass=dir permissive=1
20allow write_updater dev_block_file:dir { search };
21
22# avc:  denied  { search } for  pid=1449 comm="write_updater" name="block" dev="tmpfs" ino=6 scontext=u:r:write_updater:s0 tcontext=u:object_r:dev_block_volfile:s0 tclass=dir permissive=1
23allow write_updater dev_block_volfile:dir { search };
24
25# avc:  denied  { read write } for  pid=1449 comm="write_updater" path="/dev/console" dev="tmpfs" ino=39 scontext=u:r:write_updater:s0 tcontext=u:object_r:dev_console_file:s0 tclass=chr_file permissive=1
26allow write_updater dev_console_file:chr_file { read write };
27
28# avc:  denied  { read } for  pid=1449 comm="write_updater" name="misc" dev="tmpfs" ino=37 scontext=u:r:write_updater:s0 tcontext=u:object_r:updater_block_file:s0 tclass=lnk_file permissive=1
29allow write_updater updater_block_file:lnk_file { read };
30
31# avc:  denied  { read write } for  pid=1497 comm="write_updater" name="mmcblk0p2" dev="tmpfs" ino=35 scontext=u:r:write_updater:s0 tcontext=u:object_r:updater_block_file:s0 tclass=blk_file permissive=1
32# avc:  denied  { open } for  pid=1497 comm="write_updater" path="/dev/block/mmcblk0p2" dev="tmpfs" ino=35 scontext=u:r:write_updater:s0 tcontext=u:object_r:updater_block_file:s0 tclass=blk_file permissive=1
33# avc:  denied  { ioctl } for  pid=1559 comm="write_updater" path="/dev/block/mmcblk0p2" dev="tmpfs" ino=35 ioctlcmd=0x5413 scontext=u:r:write_updater:s0 tcontext=u:object_r:updater_block_file:s0 tclass=blk_file permissive=1
34# avc:  denied  { getattr } for  pid=1559 comm="write_updater" path="/dev/block/mmcblk0p2" dev="tmpfs" ino=35 scontext=u:r:write_updater:s0 tcontext=u:object_r:updater_block_file:s0 tclass=blk_file permissive=1
35allow write_updater updater_block_file:blk_file { read write open ioctl getattr };
36
37# avc:  denied  { search } for  pid=1531 comm="write_updater" name="socket" dev="tmpfs" ino=43 scontext=u:r:write_updater:s0 tcontext=u:object_r:dev_unix_socket:s0 tclass=dir permissive=0
38allow write_updater dev_unix_socket:dir { search };
39
40# avc:  denied  { read } for  pid=591 comm="write_updater" name="u:object_r:persist_param:s0" dev="tmpfs" ino=70 scontext=u:r:write_updater:s0 tcontext=u:object_r:persist_param:s0 tclass=file permissive=1
41# avc:  denied  { open } for  pid=1546 comm="write_updater" path="/dev/__parameters__/u:object_r:persist_param:s0" dev="tmpfs" ino=70 scontext=u:r:write_updater:s0 tcontext=u:object_r:persist_param:s0 tclass=file permissive=1
42#  avc:  denied  { map } for  pid=1546 comm="write_updater" path="/dev/__parameters__/u:object_r:persist_param:s0" dev="tmpfs" ino=70 scontext=u:r:write_updater:s0 tcontext=u:object_r:persist_param:s0 tclass=file permissive=1
43allow write_updater persist_param:file { read open map };
44