From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id AD0EA138CC5 for ; Wed, 25 Mar 2015 15:55:47 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 2C5C7E07F1; Wed, 25 Mar 2015 15:55:47 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id B3F3BE07F1 for ; Wed, 25 Mar 2015 15:55:46 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 8B1F8340897 for ; Wed, 25 Mar 2015 15:55:45 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 105081483F for ; Wed, 25 Mar 2015 15:55:39 +0000 (UTC) From: "Jason Zaman" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Jason Zaman" Message-ID: <1427298725.d4ff30bdc377f3dea934af1b478cdf86d33a7589.perfinion@gentoo> Subject: [gentoo-commits] proj/hardened-refpolicy:master commit in: policy/modules/contrib/ X-VCS-Repository: proj/hardened-refpolicy X-VCS-Files: policy/modules/contrib/dnsmasq.te policy/modules/contrib/virt.fc policy/modules/contrib/virt.if policy/modules/contrib/virt.te X-VCS-Directories: policy/modules/contrib/ X-VCS-Committer: perfinion X-VCS-Committer-Name: Jason Zaman X-VCS-Revision: d4ff30bdc377f3dea934af1b478cdf86d33a7589 X-VCS-Branch: master Date: Wed, 25 Mar 2015 15:55:39 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 9f196535-b2f2-4181-8549-6bcbd8eb431f X-Archives-Hash: 13eb5b25b5726850874f64eebc47a98b Message-ID: <20150325155539.KzGJiGKSeY5qqNcVob4iLj1V66e49U05D2fY0FY8gAs@z> commit: d4ff30bdc377f3dea934af1b478cdf86d33a7589 Author: Jason Zaman perfinion com> AuthorDate: Wed Mar 25 02:24:46 2015 +0000 Commit: Jason Zaman gentoo org> CommitDate: Wed Mar 25 15:52:05 2015 +0000 URL: https://gitweb.gentoo.org/proj/hardened-refpolicy.git/commit/?id=d4ff30bd introduce virt_leaseshelper_t policy/modules/contrib/dnsmasq.te | 1 + policy/modules/contrib/virt.fc | 1 + policy/modules/contrib/virt.if | 20 ++++++++++++++++++++ policy/modules/contrib/virt.te | 23 +++++++++++++++++++++++ 4 files changed, 45 insertions(+) diff --git a/policy/modules/contrib/dnsmasq.te b/policy/modules/contrib/dnsmasq.te index fbfe09f..eb3c7f8 100644 --- a/policy/modules/contrib/dnsmasq.te +++ b/policy/modules/contrib/dnsmasq.te @@ -127,4 +127,5 @@ optional_policy(` virt_manage_lib_files(dnsmasq_t) virt_read_pid_files(dnsmasq_t) virt_pid_filetrans(dnsmasq_t, dnsmasq_var_run_t, { dir file }) + virt_domtrans_leaseshelper(dnsmasq_t) ') diff --git a/policy/modules/contrib/virt.fc b/policy/modules/contrib/virt.fc index a4f20bc..b38007b 100644 --- a/policy/modules/contrib/virt.fc +++ b/policy/modules/contrib/virt.fc @@ -18,6 +18,7 @@ HOME_DIR/VirtualMachines/isos(/.*)? gen_context(system_u:object_r:virt_content_t /usr/libexec/libvirt_lxc -- gen_context(system_u:object_r:virtd_lxc_exec_t,s0) /usr/libexec/qemu-bridge-helper gen_context(system_u:object_r:virt_bridgehelper_exec_t,s0) +/usr/libexec/libvirt_leaseshelper -- gen_context(system_u:object_r:virt_leaseshelper_exec_t,s0) /usr/bin/virsh -- gen_context(system_u:object_r:virsh_exec_t,s0) /usr/bin/virt-sandbox-service.* -- gen_context(system_u:object_r:virsh_exec_t,s0) diff --git a/policy/modules/contrib/virt.if b/policy/modules/contrib/virt.if index c8bc302..7c97c87 100644 --- a/policy/modules/contrib/virt.if +++ b/policy/modules/contrib/virt.if @@ -193,6 +193,26 @@ interface(`virt_domtrans_bridgehelper',` ######################################## ## +## Execute a domain transition to +## run virt bridgehelper. +## +## +## +## Domain allowed to transition. +## +## +# +interface(`virt_domtrans_leaseshelper',` + gen_require(` + type virt_leaseshelper_t, virt_leaseshelper_exec_t; + ') + + corecmd_search_bin($1) + domtrans_pattern($1, virt_leaseshelper_exec_t, virt_leaseshelper_t) +') + +######################################## +## ## Execute bridgehelper in the bridgehelper ## domain, and allow the specified role ## the bridgehelper domain. diff --git a/policy/modules/contrib/virt.te b/policy/modules/contrib/virt.te index 6332b0f..0d50107 100644 --- a/policy/modules/contrib/virt.te +++ b/policy/modules/contrib/virt.te @@ -166,6 +166,12 @@ domain_type(virt_bridgehelper_t) domain_entry_file(virt_bridgehelper_t, virt_bridgehelper_exec_t) role virt_bridgehelper_roles types virt_bridgehelper_t; +type virt_leaseshelper_t; +type virt_leaseshelper_exec_t; +domain_type(virt_leaseshelper_t) +domain_entry_file(virt_leaseshelper_t, virt_leaseshelper_exec_t) +role system_r types virt_leaseshelper_t; + type virtd_lxc_t; type virtd_lxc_exec_t; init_system_domain(virtd_lxc_t, virtd_lxc_exec_t) @@ -1220,3 +1226,20 @@ corenet_rw_tun_tap_dev(virt_bridgehelper_t) userdom_search_user_home_dirs(virt_bridgehelper_t) userdom_use_user_ptys(virt_bridgehelper_t) + +######################################## +# +# Leaseshelper local policy +# + +allow virt_leaseshelper_t virtd_t:fd use; +allow virt_leaseshelper_t virtd_t:fifo_file write_fifo_file_perms; + +manage_dirs_pattern(virt_leaseshelper_t, virt_var_lib_t, virt_var_lib_t) +manage_files_pattern(virt_leaseshelper_t, virt_var_lib_t, virt_var_lib_t) +files_var_lib_filetrans(virt_leaseshelper_t, virt_var_lib_t, { file dir }) + +manage_files_pattern(virt_leaseshelper_t, virt_var_run_t, virt_var_run_t) +files_pid_filetrans(virt_leaseshelper_t, virt_var_run_t, file) + +kernel_dontaudit_read_system_state(virt_leaseshelper_t)