From Debian package 0.0.20080702-15
allow initrc_t udev_tbl_t:file unlink and device_t:dir rmdir
Index: policy/modules/system/init.te
===================================================================
--- policy/modules/system/init.te.orig
+++ policy/modules/system/init.te
@@ -303,8 +303,14 @@
dev_delete_lvm_control_dev(initrc_t)
dev_manage_generic_symlinks(initrc_t)
dev_manage_generic_files(initrc_t)
-# Wants to remove udev.tbl:
-dev_delete_generic_symlinks(initrc_t)
+
+optional_policy(`
+ # Wants to remove udev.tbl:
+ dev_delete_generic_symlinks(initrc_t)
+ udev_unlink_table(initrc_t)
+ dev_delete_generic_dirs(initrc_t)
+')
+
dev_getattr_all_blk_files(initrc_t)
dev_getattr_all_chr_files(initrc_t)
# Early devtmpfs
Index: policy/modules/system/udev.if
===================================================================
--- policy/modules/system/udev.if.orig
+++ policy/modules/system/udev.if
@@ -168,6 +168,24 @@
########################################
##
+## Allow process to remove udev table files
+##
+##
+##
+## The type of the process performing this action.
+##
+##
+#
+interface(`udev_unlink_table',`
+ gen_require(`
+ type udev_tbl_t;
+ ')
+
+ allow $1 udev_tbl_t:file unlink;
+')
+
+########################################
+##
## Read the udev device table.
##
##