]> git.ipfire.org Git - people/stevee/selinux-policy.git/blob - policy/modules/services/networkmanager.te
trunk: remove redundant shared lib calls.
[people/stevee/selinux-policy.git] / policy / modules / services / networkmanager.te
1
2 policy_module(networkmanager, 1.11.0)
3
4 ########################################
5 #
6 # Declarations
7 #
8
9 type NetworkManager_t;
10 type NetworkManager_exec_t;
11 init_daemon_domain(NetworkManager_t, NetworkManager_exec_t)
12
13 type NetworkManager_initrc_exec_t;
14 init_script_file(NetworkManager_initrc_exec_t)
15
16 type NetworkManager_log_t;
17 logging_log_file(NetworkManager_log_t)
18
19 type NetworkManager_tmp_t;
20 files_tmp_file(NetworkManager_tmp_t)
21
22 type NetworkManager_var_run_t;
23 files_pid_file(NetworkManager_var_run_t)
24
25 type wpa_cli_t;
26 type wpa_cli_exec_t;
27 init_system_domain(wpa_cli_t, wpa_cli_exec_t)
28
29 ########################################
30 #
31 # Local policy
32 #
33
34 # networkmanager will ptrace itself if gdb is installed
35 # and it receives a unexpected signal (rh bug #204161)
36 allow NetworkManager_t self:capability { kill setgid setuid dac_override net_admin net_raw net_bind_service ipc_lock };
37 dontaudit NetworkManager_t self:capability { sys_tty_config sys_ptrace };
38 allow NetworkManager_t self:process { ptrace setcap setpgid getsched signal_perms };
39 allow NetworkManager_t self:fifo_file rw_fifo_file_perms;
40 allow NetworkManager_t self:unix_dgram_socket { sendto create_socket_perms };
41 allow NetworkManager_t self:unix_stream_socket create_stream_socket_perms;
42 allow NetworkManager_t self:netlink_route_socket create_netlink_socket_perms;
43 allow NetworkManager_t self:tcp_socket create_stream_socket_perms;
44 allow NetworkManager_t self:udp_socket create_socket_perms;
45 allow NetworkManager_t self:packet_socket create_socket_perms;
46
47 allow NetworkManager_t wpa_cli_t:unix_dgram_socket sendto;
48
49 can_exec(NetworkManager_t, NetworkManager_exec_t)
50
51 manage_files_pattern(NetworkManager_t, NetworkManager_log_t, NetworkManager_log_t)
52 logging_log_filetrans(NetworkManager_t, NetworkManager_log_t, file)
53
54 rw_sock_files_pattern(NetworkManager_t, NetworkManager_tmp_t, NetworkManager_tmp_t)
55 files_search_tmp(NetworkManager_t)
56
57 manage_dirs_pattern(NetworkManager_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
58 manage_files_pattern(NetworkManager_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
59 manage_sock_files_pattern(NetworkManager_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
60 files_pid_filetrans(NetworkManager_t,NetworkManager_var_run_t, { dir file sock_file })
61
62 kernel_read_system_state(NetworkManager_t)
63 kernel_read_network_state(NetworkManager_t)
64 kernel_read_kernel_sysctls(NetworkManager_t)
65 kernel_load_module(NetworkManager_t)
66
67 corenet_all_recvfrom_unlabeled(NetworkManager_t)
68 corenet_all_recvfrom_netlabel(NetworkManager_t)
69 corenet_tcp_sendrecv_all_if(NetworkManager_t)
70 corenet_udp_sendrecv_all_if(NetworkManager_t)
71 corenet_raw_sendrecv_all_if(NetworkManager_t)
72 corenet_tcp_sendrecv_all_nodes(NetworkManager_t)
73 corenet_udp_sendrecv_all_nodes(NetworkManager_t)
74 corenet_raw_sendrecv_all_nodes(NetworkManager_t)
75 corenet_tcp_sendrecv_all_ports(NetworkManager_t)
76 corenet_udp_sendrecv_all_ports(NetworkManager_t)
77 corenet_udp_bind_all_nodes(NetworkManager_t)
78 corenet_udp_bind_isakmp_port(NetworkManager_t)
79 corenet_udp_bind_dhcpc_port(NetworkManager_t)
80 corenet_tcp_connect_all_ports(NetworkManager_t)
81 corenet_sendrecv_isakmp_server_packets(NetworkManager_t)
82 corenet_sendrecv_dhcpc_server_packets(NetworkManager_t)
83 corenet_sendrecv_all_client_packets(NetworkManager_t)
84
85 dev_read_sysfs(NetworkManager_t)
86 dev_read_rand(NetworkManager_t)
87 dev_read_urand(NetworkManager_t)
88
89 fs_getattr_all_fs(NetworkManager_t)
90 fs_search_auto_mountpoints(NetworkManager_t)
91
92 mls_file_read_all_levels(NetworkManager_t)
93
94 selinux_dontaudit_search_fs(NetworkManager_t)
95
96 corecmd_exec_shell(NetworkManager_t)
97 corecmd_exec_bin(NetworkManager_t)
98
99 domain_use_interactive_fds(NetworkManager_t)
100 domain_read_confined_domains_state(NetworkManager_t)
101 domain_dontaudit_read_all_domains_state(NetworkManager_t)
102
103 files_read_etc_files(NetworkManager_t)
104 files_read_etc_runtime_files(NetworkManager_t)
105 files_read_usr_files(NetworkManager_t)
106
107 init_read_utmp(NetworkManager_t)
108 init_domtrans_script(NetworkManager_t)
109
110 logging_send_syslog_msg(NetworkManager_t)
111
112 miscfiles_read_localization(NetworkManager_t)
113 miscfiles_read_certs(NetworkManager_t)
114
115 modutils_domtrans_insmod(NetworkManager_t)
116
117 seutil_read_config(NetworkManager_t)
118
119 sysnet_domtrans_ifconfig(NetworkManager_t)
120 sysnet_domtrans_dhcpc(NetworkManager_t)
121 sysnet_signal_dhcpc(NetworkManager_t)
122 sysnet_read_dhcpc_pid(NetworkManager_t)
123 sysnet_delete_dhcpc_pid(NetworkManager_t)
124 sysnet_search_dhcp_state(NetworkManager_t)
125 # in /etc created by NetworkManager will be labelled net_conf_t.
126 sysnet_manage_config(NetworkManager_t)
127 sysnet_etc_filetrans_config(NetworkManager_t)
128
129 userdom_dontaudit_use_unpriv_user_fds(NetworkManager_t)
130 userdom_dontaudit_use_unpriv_users_ttys(NetworkManager_t)
131 # Read gnome-keyring
132 userdom_read_unpriv_users_home_content_files(NetworkManager_t)
133
134 sysadm_dontaudit_search_home_dirs(NetworkManager_t)
135
136 optional_policy(`
137 bind_domtrans(NetworkManager_t)
138 bind_manage_cache(NetworkManager_t)
139 bind_signal(NetworkManager_t)
140 ')
141
142 optional_policy(`
143 bluetooth_dontaudit_read_helper_files(NetworkManager_t)
144 ')
145
146 optional_policy(`
147 consoletype_exec(NetworkManager_t)
148 ')
149
150 optional_policy(`
151 dbus_system_bus_client_template(NetworkManager, NetworkManager_t)
152 dbus_connect_system_bus(NetworkManager_t)
153 ')
154
155 optional_policy(`
156 howl_signal(NetworkManager_t)
157 ')
158
159 optional_policy(`
160 nis_use_ypbind(NetworkManager_t)
161 ')
162
163 optional_policy(`
164 nscd_socket_use(NetworkManager_t)
165 nscd_signal(NetworkManager_t)
166 ')
167
168 optional_policy(`
169 openvpn_domtrans(NetworkManager_t)
170 openvpn_signal(NetworkManager_t)
171 ')
172
173 optional_policy(`
174 ppp_domtrans(NetworkManager_t)
175 ppp_read_pid_files(NetworkManager_t)
176 ppp_signal(NetworkManager_t)
177 ')
178
179 optional_policy(`
180 seutil_sigchld_newrole(NetworkManager_t)
181 ')
182
183 optional_policy(`
184 udev_read_db(NetworkManager_t)
185 ')
186
187 optional_policy(`
188 # Read gnome-keyring
189 unconfined_read_home_content_files(NetworkManager_t)
190 ')
191
192 optional_policy(`
193 vpn_domtrans(NetworkManager_t)
194 vpn_signal(NetworkManager_t)
195 ')
196
197 ########################################
198 #
199 # wpa_cli local policy
200 #
201 allow wpa_cli_t self:capability dac_override;
202 allow wpa_cli_t self:unix_dgram_socket create_socket_perms;
203
204 allow wpa_cli_t NetworkManager_t:unix_dgram_socket sendto;
205
206 manage_sock_files_pattern(wpa_cli_t, NetworkManager_tmp_t, NetworkManager_tmp_t)
207 files_tmp_filetrans(wpa_cli_t, NetworkManager_tmp_t, sock_file)
208
209 list_dirs_pattern(wpa_cli_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
210 rw_sock_files_pattern(wpa_cli_t, NetworkManager_var_run_t, NetworkManager_var_run_t)
211
212 init_dontaudit_use_fds(wpa_cli_t)
213 init_use_script_ptys(wpa_cli_t)
214
215 miscfiles_read_localization(wpa_cli_t)
216
217 term_dontaudit_use_console(wpa_cli_t)