]> git.ipfire.org Git - people/stevee/selinux-policy.git/blob - policy/modules/services/networkmanager.te
trunk: version bumps for previous commit.
[people/stevee/selinux-policy.git] / policy / modules / services / networkmanager.te
1
2 policy_module(networkmanager,1.6.1)
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_var_run_t;
14 files_pid_file(NetworkManager_var_run_t)
15
16 ########################################
17 #
18 # Local policy
19 #
20
21 # networkmanager will ptrace itself if gdb is installed
22 # and it receives a unexpected signal (rh bug #204161)
23 allow NetworkManager_t self:capability { kill setgid setuid sys_nice dac_override net_admin net_raw net_bind_service ipc_lock };
24 dontaudit NetworkManager_t self:capability { sys_tty_config sys_ptrace };
25 allow NetworkManager_t self:process { ptrace setcap setpgid getsched signal_perms };
26 allow NetworkManager_t self:fifo_file rw_fifo_file_perms;
27 allow NetworkManager_t self:unix_dgram_socket { sendto create_socket_perms };
28 allow NetworkManager_t self:unix_stream_socket create_stream_socket_perms;
29 allow NetworkManager_t self:netlink_route_socket create_netlink_socket_perms;
30 allow NetworkManager_t self:tcp_socket create_stream_socket_perms;
31 allow NetworkManager_t self:udp_socket create_socket_perms;
32 allow NetworkManager_t self:packet_socket create_socket_perms;
33
34 manage_dirs_pattern(NetworkManager_t,NetworkManager_var_run_t,NetworkManager_var_run_t)
35 manage_files_pattern(NetworkManager_t,NetworkManager_var_run_t,NetworkManager_var_run_t)
36 manage_sock_files_pattern(NetworkManager_t,NetworkManager_var_run_t,NetworkManager_var_run_t)
37 files_pid_filetrans(NetworkManager_t,NetworkManager_var_run_t, { dir file sock_file })
38
39 kernel_read_system_state(NetworkManager_t)
40 kernel_read_network_state(NetworkManager_t)
41 kernel_read_kernel_sysctls(NetworkManager_t)
42 kernel_load_module(NetworkManager_t)
43
44 corenet_non_ipsec_sendrecv(NetworkManager_t)
45 corenet_tcp_sendrecv_all_if(NetworkManager_t)
46 corenet_udp_sendrecv_all_if(NetworkManager_t)
47 corenet_raw_sendrecv_all_if(NetworkManager_t)
48 corenet_tcp_sendrecv_all_nodes(NetworkManager_t)
49 corenet_udp_sendrecv_all_nodes(NetworkManager_t)
50 corenet_raw_sendrecv_all_nodes(NetworkManager_t)
51 corenet_tcp_sendrecv_all_ports(NetworkManager_t)
52 corenet_udp_sendrecv_all_ports(NetworkManager_t)
53 corenet_udp_bind_all_nodes(NetworkManager_t)
54 corenet_udp_bind_isakmp_port(NetworkManager_t)
55 corenet_udp_bind_dhcpc_port(NetworkManager_t)
56 corenet_tcp_connect_all_ports(NetworkManager_t)
57 corenet_sendrecv_isakmp_server_packets(NetworkManager_t)
58 corenet_sendrecv_dhcpc_server_packets(NetworkManager_t)
59 corenet_sendrecv_all_client_packets(NetworkManager_t)
60
61 dev_read_sysfs(NetworkManager_t)
62 dev_read_rand(NetworkManager_t)
63 dev_read_urand(NetworkManager_t)
64
65 fs_getattr_all_fs(NetworkManager_t)
66 fs_search_auto_mountpoints(NetworkManager_t)
67
68 mls_file_read_up(NetworkManager_t)
69
70 selinux_dontaudit_search_fs(NetworkManager_t)
71
72 corecmd_exec_shell(NetworkManager_t)
73 corecmd_exec_bin(NetworkManager_t)
74
75 domain_use_interactive_fds(NetworkManager_t)
76 domain_read_confined_domains_state(NetworkManager_t)
77 domain_dontaudit_read_all_domains_state(NetworkManager_t)
78
79 files_read_etc_files(NetworkManager_t)
80 files_read_etc_runtime_files(NetworkManager_t)
81 files_read_usr_files(NetworkManager_t)
82
83 init_read_utmp(NetworkManager_t)
84 init_domtrans_script(NetworkManager_t)
85
86 libs_use_ld_so(NetworkManager_t)
87 libs_use_shared_libs(NetworkManager_t)
88
89 logging_send_syslog_msg(NetworkManager_t)
90
91 miscfiles_read_localization(NetworkManager_t)
92 miscfiles_read_certs(NetworkManager_t)
93
94 modutils_domtrans_insmod(NetworkManager_t)
95
96 seutil_read_config(NetworkManager_t)
97
98 sysnet_domtrans_ifconfig(NetworkManager_t)
99 sysnet_domtrans_dhcpc(NetworkManager_t)
100 sysnet_signal_dhcpc(NetworkManager_t)
101 sysnet_read_dhcpc_pid(NetworkManager_t)
102 sysnet_delete_dhcpc_pid(NetworkManager_t)
103 sysnet_search_dhcp_state(NetworkManager_t)
104 # in /etc created by NetworkManager will be labelled net_conf_t.
105 sysnet_manage_config(NetworkManager_t)
106 sysnet_etc_filetrans_config(NetworkManager_t)
107
108 userdom_dontaudit_use_unpriv_user_fds(NetworkManager_t)
109 userdom_dontaudit_search_sysadm_home_dirs(NetworkManager_t)
110 userdom_dontaudit_use_unpriv_users_ttys(NetworkManager_t)
111
112 ifdef(`targeted_policy', `
113 term_dontaudit_use_unallocated_ttys(NetworkManager_t)
114 term_dontaudit_use_generic_ptys(NetworkManager_t)
115 files_dontaudit_read_root_files(NetworkManager_t)
116 # Read gnome-keyring
117 userdom_read_generic_user_home_content_files(NetworkManager_t)
118
119 optional_policy(`
120 unconfined_rw_pipes(NetworkManager_t)
121 ')
122 ')
123
124 optional_policy(`
125 bind_domtrans(NetworkManager_t)
126 bind_manage_cache(NetworkManager_t)
127 bind_signal(NetworkManager_t)
128 ')
129
130 optional_policy(`
131 bluetooth_dontaudit_read_helper_files(NetworkManager_t)
132 ')
133
134 optional_policy(`
135 consoletype_exec(NetworkManager_t)
136 ')
137
138 optional_policy(`
139 gen_require(`
140 class dbus send_msg;
141 ')
142
143 allow NetworkManager_t self:dbus send_msg;
144
145 dbus_system_bus_client_template(NetworkManager,NetworkManager_t)
146 dbus_connect_system_bus(NetworkManager_t)
147 dbus_send_system_bus(NetworkManager_t)
148 ')
149
150 optional_policy(`
151 howl_signal(NetworkManager_t)
152 ')
153
154 optional_policy(`
155 nis_use_ypbind(NetworkManager_t)
156 ')
157
158 optional_policy(`
159 nscd_socket_use(NetworkManager_t)
160 nscd_signal(NetworkManager_t)
161 ')
162
163 optional_policy(`
164 ppp_domtrans(NetworkManager_t)
165 ppp_read_pid_files(NetworkManager_t)
166 ppp_signal(NetworkManager_t)
167 ')
168
169 optional_policy(`
170 seutil_sigchld_newrole(NetworkManager_t)
171 ')
172
173 optional_policy(`
174 udev_read_db(NetworkManager_t)
175 ')
176
177 optional_policy(`
178 vpn_domtrans(NetworkManager_t)
179 vpn_signal(NetworkManager_t)
180 ')