From owner-p4-projects@FreeBSD.ORG Wed May 5 07:50:23 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 50FA916A4D0; Wed, 5 May 2004 07:50:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0D43316A4CE for ; Wed, 5 May 2004 07:50:23 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E41CE43D41 for ; Wed, 5 May 2004 07:50:22 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.10/8.12.10) with ESMTP id i45EoMGe045764 for ; Wed, 5 May 2004 07:50:22 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.10/8.12.10/Submit) id i45EoLNq045758 for perforce@freebsd.org; Wed, 5 May 2004 07:50:21 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Wed, 5 May 2004 07:50:21 -0700 (PDT) Message-Id: <200405051450.i45EoLNq045758@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 52298 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 May 2004 14:50:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=52298 Change 52298 by areisse@areisse_ibook on 2004/05/05 07:49:42 test some more hooks Affected files ... .. //depot/projects/trustedbsd/sedarwin73/policy/rules#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin73/policy/rules#2 (text+ko) ==== @@ -1,6 +1,7 @@ attribute domain; attribute domain2; attribute file; +attribute xfile; attribute fs; attribute names; @@ -15,6 +16,7 @@ type login_d, domain, domain2; type user_d, domain, domain2; type user_secret_d, domain, domain2; +type protected_d, domain2; type sysadm_d, domain, domain2; type kernel_d, domain, domain2; type security_t; @@ -29,7 +31,8 @@ type zero_device_t; type console_device_t; type random_device_t; -type secret_t; +type secret_t, xfile; +type readonly_t, xfile; type user_port_t; type time_port_t; @@ -88,6 +91,7 @@ role object_r types secret_t; role user_r types user_d; role user_r types user_port_t; +role user_r types protected_d; role user_secret_r types user_secret_d; role sysadm_r types sysadm_d; @@ -96,6 +100,7 @@ allow system_r sysadm_r; allow file fs:filesystem associate; +allow xfile fs:filesystem associate; #allow init_d { bin_t shell_exec_t file_t }:dir_file_class_set rw_file_perms; #allow init_d bin_t:file execute_no_trans; @@ -111,12 +116,12 @@ type_change user_d devpts_t:chr_file user_devpts_t; -allow domain self:mach_port { send make_send copy_send move_recv }; -allow domain kernel_d:mach_port { send make_send copy_send }; -allow domain self:mach_task set_special_port; -allow domain self:mach_names { look_up }; -allow domain root_t:dir { search getattr read }; -allow kernel_d domain:mach_port { send make_send copy_send }; +allow domain2 self:mach_port { send make_send copy_send move_recv }; +allow domain2 kernel_d:mach_port { send make_send copy_send }; +allow domain2 self:mach_task set_special_port; +allow domain2 self:mach_names { look_up }; +allow domain2 root_t:dir { search getattr read }; +allow kernel_d domain2:mach_port { send make_send copy_send }; allow domain2 file:{file lnk_file sock_file} {create_file_perms execute }; allow domain2 file:file execute_no_trans; @@ -126,6 +131,12 @@ allow domain2 {devpts_t user_devpts_t sysadm_devpts_t}:chr_file create_file_perms; allow domain2 domain:process { signal sigkill setsched getsession }; allow domain2 file:{dir file lnk_file sock_file} { relabelfrom relabelto }; +allow domain2 readonly_t:{dir file lnk_file sock_file} { relabelfrom relabelto r_file_perms }; +allow domain2 readonly_t:dir r_dir_perms; +allow protected_d self:process { signal sigkill setsched getsession }; + +domain_trans(user_d,shell_exec_t,protected_d); +allow user_d security_t:security *; domain_auto_trans(init_d,windowserver_exec_t,windowserver_d); domain_auto_trans(systemstarter_d,windowserver_exec_t,windowserver_d); @@ -189,6 +200,7 @@ allow_mach_ipc(windowserver_d,init_d); # for wsloginui allow_mach_ipc(windowserver_d,coreservices_d); # for wsloginui mach_bootstrap_register(windowserver_d,boot_names_t); +allow windowserver_d init_d:mach_names register; allow_mach_ipc(loginwindow_d,coreservices_d); allow_mach_ipc(loginwindow_d,init_d); @@ -233,6 +245,7 @@ allow_mach_ipc(pbs_d,unlabeled_t); allow_mach_ipc(user_d,unlabeled_t); allow_mach_ipc(user_secret_d,unlabeled_t); +allow_mach_ipc(protected_d,unlabeled_t); allow_mach_ipc(lookupd_d,unlabeled_t); allow_mach_ipc(coreservices_d,unlabeled_t); allow_mach_ipc(windowserver_d,unlabeled_t); @@ -291,4 +304,5 @@ ') user_sys_access(user_d,user_names_t); +user_sys_access(protected_d,user_names_t); user_sys_access(user_secret_d,user_names_t); # can't use other names types yet