commit: 6280fcf010aa38352561da281652c8ab9f35bf6a Author: Russell Coker <russell <AT> coker <DOT> com <DOT> au> AuthorDate: Sun Feb 14 03:58:00 2021 +0000 Commit: Jason Zaman <perfinion <AT> gentoo <DOT> org> CommitDate: Sun Mar 21 21:38:23 2021 +0000 URL: https://gitweb.gentoo.org/proj/hardened-refpolicy.git/commit/?id=6280fcf0
blkmapd Patch for the blkmapd daemon that's part of the NFS server. I think this is ready for mergikng. Signed-off-by: Russell Coker <russell <AT> coker.com.au> Signed-off-by: Jason Zaman <perfinion <AT> gentoo.org> policy/modules/services/rpc.fc | 2 ++ policy/modules/services/rpc.te | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/policy/modules/services/rpc.fc b/policy/modules/services/rpc.fc index 6d3c9b68..88d2acaf 100644 --- a/policy/modules/services/rpc.fc +++ b/policy/modules/services/rpc.fc @@ -16,6 +16,7 @@ /usr/lib/systemd/system/nfs.*\.service -- gen_context(system_u:object_r:nfsd_unit_t,s0) /usr/lib/systemd/system/rpc.*\.service -- gen_context(system_u:object_r:rpcd_unit_t,s0) +/usr/sbin/blkmapd -- gen_context(system_u:object_r:blkmapd_exec_t,s0) /usr/sbin/rpc\..* -- gen_context(system_u:object_r:rpcd_exec_t,s0) /usr/sbin/rpc\.idmapd -- gen_context(system_u:object_r:rpcd_exec_t,s0) /usr/sbin/rpc\.gssd -- gen_context(system_u:object_r:gssd_exec_t,s0) @@ -27,6 +28,7 @@ /var/lib/nfs(/.*)? gen_context(system_u:object_r:var_lib_nfs_t,s0) +/run/blkmapd\.pid -- gen_context(system_u:object_r:rpcd_runtime_t,s0) /run/rpc\.statd(/.*)? gen_context(system_u:object_r:rpcd_runtime_t,s0) /run/rpc\.statd\.pid -- gen_context(system_u:object_r:rpcd_runtime_t,s0) /run/sm-notify\.pid -- gen_context(system_u:object_r:rpcd_runtime_t,s0) diff --git a/policy/modules/services/rpc.te b/policy/modules/services/rpc.te index 8059b10c..5cacb381 100644 --- a/policy/modules/services/rpc.te +++ b/policy/modules/services/rpc.te @@ -72,6 +72,14 @@ init_unit_file(nfsd_unit_t) type var_lib_nfs_t; files_mountpoint(var_lib_nfs_t) +rpc_domain_template(blkmapd) + +type blkmapd_runtime_t; +files_runtime_file(blkmapd_runtime_t) +files_runtime_filetrans(blkmapd_t, blkmapd_runtime_t, file, "blkmapd.pid") +allow blkmapd_t blkmapd_runtime_t:file manage_file_perms; + + ######################################## # # Common rpc domain local policy @@ -280,6 +288,17 @@ optional_policy(` mount_exec(nfsd_t) ') +######################################## +# +# BLKMAPD local policy +# + +allow blkmapd_t self:capability sys_rawio; +allow blkmapd_t self:unix_dgram_socket create_socket_perms; + +fs_list_rpc(blkmapd_t) +storage_raw_read_fixed_disk(blkmapd_t) + ######################################## # # GSSD local policy