diff --git a/policy/modules/contrib/bind.te b/policy/modules/contrib/bind.te index fa107dc6a4..36d23195eb 100644 --- a/policy/modules/contrib/bind.te +++ b/policy/modules/contrib/bind.te @@ -116,6 +116,7 @@ read_files_pattern(named_t, named_zone_t, named_zone_t) read_lnk_files_pattern(named_t, named_zone_t, named_zone_t) allow named_t named_zone_t:file map; +kernel_io_uring_rw(named_t) kernel_read_kernel_sysctls(named_t) kernel_read_system_state(named_t) kernel_read_network_state(named_t) @@ -280,6 +281,7 @@ allow ndc_t named_conf_t:lnk_file read_lnk_file_perms; allow ndc_t named_zone_t:dir search_dir_perms; +kernel_io_uring_rw(ndc_t) kernel_read_system_state(ndc_t) kernel_read_kernel_sysctls(ndc_t) diff --git a/policy/modules/kernel/kernel.if b/policy/modules/kernel/kernel.if index b913af36c0..953e8efb1a 100644 --- a/policy/modules/kernel/kernel.if +++ b/policy/modules/kernel/kernel.if @@ -4619,3 +4619,20 @@ interface(`kernel_io_uring_use',` kernel_io_uring_use_inherited($1) allow $1 io_uring_t:anon_inode create; ') + +######################################## +## +## Allow the domain to read and write to the io_uring API. +## +## +## +## Domain allowed access. +## +## +# +interface(`kernel_io_uring_rw',` + gen_require(` + type io_uring_t; + ') + allow $1 io_uring_t:anon_inode common_anon_inode_perms; +')