commit:     9671bfb441d3b4606c944fceb142ff772309f677
Author:     Guido Trentalancia <guido <AT> trentalancia <DOT> net>
AuthorDate: Sat Feb 11 20:13:40 2017 +0000
Commit:     Jason Zaman <perfinion <AT> gentoo <DOT> org>
CommitDate: Fri Feb 17 08:38:49 2017 +0000
URL:        
https://gitweb.gentoo.org/proj/hardened-refpolicy.git/commit/?id=9671bfb4

cups/lpd: read permission for cupsd_var_run_t socket files

Introduce a new interface in the cups module to read cups socket
files and call such interface from the lpd module.

Thanks to Christpher PeBenito for revising this patch.

Signed-off-by: Guido Trentalancia <guido <AT> trentalancia.net>

 policy/modules/contrib/cups.if | 19 +++++++++++++++++++
 policy/modules/contrib/lpd.te  |  1 +
 2 files changed, 20 insertions(+)

diff --git a/policy/modules/contrib/cups.if b/policy/modules/contrib/cups.if
index bd6b77f4..1fb79e2b 100644
--- a/policy/modules/contrib/cups.if
+++ b/policy/modules/contrib/cups.if
@@ -129,6 +129,25 @@ interface(`cups_read_pid_files',`
 
 ########################################
 ## <summary>
+##     Read cups socket files.
+## </summary>
+## <param name="domain">
+##     <summary>
+##     Domain allowed access.
+##     </summary>
+## </param>
+#
+interface(`cups_read_sock_files',`
+       gen_require(`
+               type cupsd_var_run_t;
+       ')
+
+       files_search_pids($1)
+       allow $1 cupsd_var_run_t:sock_file read_sock_file_perms;
+')
+
+########################################
+## <summary>
 ##     Execute cups_config in the
 ##     cups config domain.
 ## </summary>

diff --git a/policy/modules/contrib/lpd.te b/policy/modules/contrib/lpd.te
index 87984710..480b5e7e 100644
--- a/policy/modules/contrib/lpd.te
+++ b/policy/modules/contrib/lpd.te
@@ -295,6 +295,7 @@ optional_policy(`
        cups_read_config(lpr_t)
        cups_stream_connect(lpr_t)
        cups_read_pid_files(lpr_t)
+       cups_read_sock_files(lpr_t)
 ')
 
 optional_policy(`

Reply via email to