Gentoo Archives: gentoo-commits

From: Jason Zaman <perfinion@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/hardened-refpolicy:master commit in: policy/modules/contrib/
Date: Fri, 31 Jul 2015 14:18:25
Message-Id: 1438330143.0e8ef804e3c6409094334dda3b320bcfd5bf29b8.perfinion@gentoo
1 commit: 0e8ef804e3c6409094334dda3b320bcfd5bf29b8
2 Author: Jason Zaman <jason <AT> perfinion <DOT> com>
3 AuthorDate: Tue Jul 28 14:46:43 2015 +0000
4 Commit: Jason Zaman <perfinion <AT> gentoo <DOT> org>
5 CommitDate: Fri Jul 31 08:09:03 2015 +0000
6 URL: https://gitweb.gentoo.org/proj/hardened-refpolicy.git/commit/?id=0e8ef804
7
8 android: add sdk in /opt and sysfs
9
10 adb needs to be able to read sysfs to find the USB device
11
12 policy/modules/contrib/android.fc | 4 ++++
13 policy/modules/contrib/android.if | 5 +++++
14 policy/modules/contrib/android.te | 11 +++++++++--
15 3 files changed, 18 insertions(+), 2 deletions(-)
16
17 diff --git a/policy/modules/contrib/android.fc b/policy/modules/contrib/android.fc
18 index a16fc47..af98311 100644
19 --- a/policy/modules/contrib/android.fc
20 +++ b/policy/modules/contrib/android.fc
21 @@ -4,3 +4,7 @@ HOME_DIR/\.gradle(/.*)? gen_context(system_u:object_r:android_home_t,s0)
22
23 /opt/android-studio/bin/studio.sh gen_context(system_u:object_r:android_java_exec_t,s0)
24
25 +/opt/android-sdk-update-manager/platform-tools/adb -- gen_context(system_u:object_r:android_tools_exec_t,s0)
26 +/opt/android-sdk-update-manager/platform-tools/fastboot -- gen_context(system_u:object_r:android_tools_exec_t,s0)
27 +/opt/android-sdk-update-manager/tools/android -- gen_context(system_u:object_r:android_java_exec_t,s0)
28 +/opt/android-sdk-update-manager(/.*)? gen_context(system_u:object_r:android_sdk_t,s0)
29
30 diff --git a/policy/modules/contrib/android.if b/policy/modules/contrib/android.if
31 index f0173d5..a50093a 100644
32 --- a/policy/modules/contrib/android.if
33 +++ b/policy/modules/contrib/android.if
34 @@ -23,6 +23,7 @@ interface(`android_role',`
35 type android_tmp_t;
36 type android_java_t;
37 type android_java_exec_t;
38 + type android_sdk_t;
39 ')
40
41 role $1 types android_tools_t;
42 @@ -38,6 +39,10 @@ interface(`android_role',`
43 manage_files_pattern($2, android_home_t, android_home_t)
44 manage_lnk_files_pattern($2, android_home_t, android_home_t)
45
46 + list_dirs_pattern($2, android_sdk_t, android_sdk_t)
47 + read_files_pattern($2, android_sdk_t, android_sdk_t)
48 + read_lnk_files_pattern($2, android_sdk_t, android_sdk_t)
49 +
50 userdom_user_home_dir_filetrans($2, android_home_t, dir, ".android")
51 userdom_user_home_dir_filetrans($2, android_home_t, dir, ".AndroidStudioBeta")
52 userdom_user_home_dir_filetrans($2, android_home_t, dir, ".AndroidStudio")
53
54 diff --git a/policy/modules/contrib/android.te b/policy/modules/contrib/android.te
55 index a76061f..930c6b3 100644
56 --- a/policy/modules/contrib/android.te
57 +++ b/policy/modules/contrib/android.te
58 @@ -28,6 +28,8 @@ type android_home_t; # customizable
59 userdom_user_home_content(android_home_t)
60 userdom_user_home_dir_filetrans(android_tools_t, android_home_t, { dir file })
61
62 +type android_sdk_t;
63 +files_type(android_sdk_t)
64
65 ############################
66 #
67 @@ -55,6 +57,7 @@ corenet_tcp_bind_adb_port(android_tools_t)
68 corenet_tcp_bind_generic_node(android_tools_t)
69 corenet_tcp_connect_adb_port(android_tools_t)
70
71 +dev_read_sysfs(android_tools_t)
72 dev_rw_generic_usb_dev(android_tools_t)
73
74 userdom_manage_user_home_content_dirs(android_tools_t)
75 @@ -75,10 +78,14 @@ allow android_java_t self:tcp_socket { accept listen };
76
77 can_exec(android_java_t, android_home_t)
78 can_exec(android_java_t, android_java_exec_t)
79 +can_exec(android_java_t, android_sdk_t)
80
81 manage_dirs_pattern(android_java_t, android_home_t, android_home_t)
82 manage_files_pattern(android_java_t, android_home_t, android_home_t)
83
84 +manage_dirs_pattern(android_java_t, android_sdk_t, android_sdk_t)
85 +manage_files_pattern(android_java_t, android_sdk_t, android_sdk_t)
86 +
87 manage_dirs_pattern(android_java_t, android_tmp_t, android_tmp_t)
88 manage_files_pattern(android_java_t, android_tmp_t, android_tmp_t)
89
90 @@ -87,8 +94,8 @@ corecmd_exec_shell(android_java_t)
91
92 corenet_tcp_bind_all_unreserved_ports(android_java_t)
93 corenet_tcp_bind_generic_node(android_java_t)
94 -corenet_tcp_connect_adb_port(android_tools_t)
95 -corenet_tcp_connect_http_port(android_tools_t)
96 +corenet_tcp_connect_adb_port(android_java_t)
97 +corenet_tcp_connect_http_port(android_java_t)
98 corenet_udp_bind_generic_node(android_java_t)
99
100 domain_dontaudit_getattr_all_domains(android_java_t)