commit:     b655a97dc1dbc580f51f58201bb101b39da39ea0
Author:     Jason Zaman <jason <AT> perfinion <DOT> com>
AuthorDate: Tue Jul 10 15:03:17 2018 +0000
Commit:     Jason Zaman <perfinion <AT> gentoo <DOT> org>
CommitDate: Wed Jul 11 14:41:35 2018 +0000
URL:        
https://gitweb.gentoo.org/proj/hardened-refpolicy.git/commit/?id=b655a97d

Allow map xserver_misc_device_t for nvidia driver

 policy/modules/kernel/devices.if   | 18 ++++++++++++++++++
 policy/modules/services/xserver.if |  1 +
 policy/modules/services/xserver.te |  1 +
 policy/modules/system/init.te      |  1 +
 4 files changed, 21 insertions(+)

diff --git a/policy/modules/kernel/devices.if b/policy/modules/kernel/devices.if
index 3e7f4538..f68d60ab 100644
--- a/policy/modules/kernel/devices.if
+++ b/policy/modules/kernel/devices.if
@@ -5079,6 +5079,24 @@ interface(`dev_rw_xserver_misc',`
        rw_chr_files_pattern($1, device_t, xserver_misc_device_t)
 ')
 
+########################################
+## <summary>
+##     Map X server miscellaneous devices.
+## </summary>
+## <param name="domain">
+##     <summary>
+##     Domain allowed access.
+##     </summary>
+## </param>
+#
+interface(`dev_map_xserver_misc',`
+       gen_require(`
+               type xserver_misc_device_t;
+       ')
+
+       allow $1 xserver_misc_device_t:chr_file map;
+')
+
 ########################################
 ## <summary>
 ##     Read and write to the zero device (/dev/zero).

diff --git a/policy/modules/services/xserver.if 
b/policy/modules/services/xserver.if
index 24caccad..7e13483b 100644
--- a/policy/modules/services/xserver.if
+++ b/policy/modules/services/xserver.if
@@ -82,6 +82,7 @@ interface(`xserver_restricted_role',`
        allow $2 xserver_tmp_t:file { getattr read };
 
        dev_rw_xserver_misc($2)
+       dev_map_xserver_misc($2)
        dev_rw_power_management($2)
        dev_read_input($2)
        dev_read_misc($2)

diff --git a/policy/modules/services/xserver.te 
b/policy/modules/services/xserver.te
index 1202b8e5..2e85c3bd 100644
--- a/policy/modules/services/xserver.te
+++ b/policy/modules/services/xserver.te
@@ -749,6 +749,7 @@ dev_read_raw_memory(xserver_t)
 dev_wx_raw_memory(xserver_t)
 # for other device nodes such as the NVidia binary-only driver
 dev_rw_xserver_misc(xserver_t)
+dev_map_xserver_misc(xserver_t)
 # read events - the synaptics touchpad driver reads raw events
 dev_rw_input_dev(xserver_t)
 dev_rwx_zero(xserver_t)

diff --git a/policy/modules/system/init.te b/policy/modules/system/init.te
index 7ffda24c..a1222272 100644
--- a/policy/modules/system/init.te
+++ b/policy/modules/system/init.te
@@ -635,6 +635,7 @@ dev_delete_generic_symlinks(initrc_t)
 dev_getattr_all_blk_files(initrc_t)
 dev_getattr_all_chr_files(initrc_t)
 dev_rw_xserver_misc(initrc_t)
+dev_map_xserver_misc(initrc_t)
 
 domain_kill_all_domains(initrc_t)
 domain_signal_all_domains(initrc_t)

Reply via email to