diff --git a/policy/modules/apps/screen.if b/policy/modules/apps/screen.if
index bfeef2d..ac70bc0 100644
--- a/policy/modules/apps/screen.if
+++ b/policy/modules/apps/screen.if
@@ -69,7 +69,7 @@ template(`screen_role_template',`
 	allow $1_screen_t $3:process signal;
 
 	domtrans_pattern($3, screen_exec_t, $1_screen_t)
-	allow $3 $1_screen_t:process signal;
+	allow $3 $1_screen_t:process { signal sigchld };
 	allow $1_screen_t $3:process signal;
 
 	manage_dirs_pattern($3, screen_home_t, screen_home_t)
@@ -117,6 +117,7 @@ template(`screen_role_template',`
 	fs_search_auto_mountpoints($1_screen_t)
 	fs_getattr_xattr_fs($1_screen_t)
 
+	auth_use_nsswitch($1_screen_t)
 	auth_dontaudit_read_shadow($1_screen_t)
 	auth_dontaudit_exec_utempter($1_screen_t)
 
@@ -129,8 +130,6 @@ template(`screen_role_template',`
 
 	seutil_read_config($1_screen_t)
 
-	sysnet_read_config($1_screen_t)
-
 	userdom_use_user_terminals($1_screen_t)
 	userdom_create_user_pty($1_screen_t)
 	userdom_user_home_domtrans($1_screen_t, $3)
@@ -147,12 +146,4 @@ template(`screen_role_template',`
 		fs_list_nfs($1_screen_t)
 		fs_read_nfs_symlinks($1_screen_t)
 	')
-
-	optional_policy(`
-		nis_use_ypbind($1_screen_t)
-	')
-
-	optional_policy(`
-		nscd_socket_use($1_screen_t)
-	')
 ')
diff --git a/policy/modules/apps/screen.te b/policy/modules/apps/screen.te
index 1a28964..a7b7cf2 100644
--- a/policy/modules/apps/screen.te
+++ b/policy/modules/apps/screen.te
@@ -1,5 +1,5 @@
 
-policy_module(screen, 2.1.0)
+policy_module(screen, 2.1.1)
 
 ########################################
 #