PERFORCE change 156388 for review
Robert Watson
rwatson at FreeBSD.org
Mon Jan 19 07:15:53 PST 2009
http://perforce.freebsd.org/chv.cgi?CH=156388
Change 156388 by rwatson at rwatson_freebsd_capabilities on 2009/01/19 15:15:21
fork(), wait(), and kill() syscalls no longer required in
capability mode, since we have process descriptor variations on
these that are capability-centric.
Affected files ...
.. //depot/projects/trustedbsd/capabilities/src/sys/kern/capabilities.conf#14 edit
.. //depot/projects/trustedbsd/capabilities/src/sys/kern/init_sysent.c#24 edit
.. //depot/projects/trustedbsd/capabilities/src/sys/kern/syscalls.c#25 edit
.. //depot/projects/trustedbsd/capabilities/src/sys/kern/systrace_args.c#25 edit
.. //depot/projects/trustedbsd/capabilities/src/sys/sys/syscall.h#25 edit
.. //depot/projects/trustedbsd/capabilities/src/sys/sys/syscall.mk#25 edit
.. //depot/projects/trustedbsd/capabilities/src/sys/sys/sysproto.h#25 edit
Differences ...
==== //depot/projects/trustedbsd/capabilities/src/sys/kern/capabilities.conf#14 (text+ko) ====
@@ -38,7 +38,7 @@
## - sys_exit(2), abort2(2) and close(2) are very important.
## - Sorted alphabetically, please keep it that way.
##
-## $P4: //depot/projects/trustedbsd/capabilities/src/sys/kern/capabilities.conf#13 $
+## $P4: //depot/projects/trustedbsd/capabilities/src/sys/kern/capabilities.conf#14 $
##
##
@@ -191,11 +191,6 @@
flock
##
-## Allow fork(2).
-##
-fork
-
-##
## Allow fpathconf(2), subject to capability rights.
##
fpathconf
@@ -356,15 +351,6 @@
kmq_timedsend
##
-## For now, don't allow kill(2) and friends, but in the future we will need
-## something here to allow inter-process signalling and control.
-##
-## XXXRW: Revisit.
-##
-#kill
-#killpg
-
-##
## Allow kqueue(2), we will control use.
##
kqueue
@@ -530,11 +516,6 @@
recvmsg
##
-## Allow rfork(2).
-##
-rfork
-
-##
## Allow real-time scheduling primitives to be used.
##
## XXXRW: These require scoping.
@@ -743,19 +724,6 @@
uuidgen
##
-## Allow vfork(2).
-##
-vfork
-
-##
-## For now, allow wait(2), wait4(2), etc.
-##
-## XXXRW: These require scoping.
-##
-wait
-wait4
-
-##
## Allow I/O-related file descriptors, subject to capability rights.
##
write
==== //depot/projects/trustedbsd/capabilities/src/sys/kern/init_sysent.c#24 (text+ko) ====
@@ -30,12 +30,12 @@
struct sysent sysent[] = {
{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0 }, /* 0 = syscall */
{ AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT, NULL, 0, 0, SYF_CAPENABLED }, /* 1 = exit */
- { 0, (sy_call_t *)fork, AUE_FORK, NULL, 0, 0, SYF_CAPENABLED }, /* 2 = fork */
+ { 0, (sy_call_t *)fork, AUE_FORK, NULL, 0, 0, 0 }, /* 2 = fork */
{ AS(read_args), (sy_call_t *)read, AUE_NULL, NULL, 0, 0, SYF_CAPENABLED }, /* 3 = read */
{ AS(write_args), (sy_call_t *)write, AUE_NULL, NULL, 0, 0, SYF_CAPENABLED }, /* 4 = write */
{ AS(open_args), (sy_call_t *)open, AUE_OPEN_RWTC, NULL, 0, 0, 0 }, /* 5 = open */
{ AS(close_args), (sy_call_t *)close, AUE_CLOSE, NULL, 0, 0, SYF_CAPENABLED }, /* 6 = close */
- { AS(wait_args), (sy_call_t *)wait4, AUE_WAIT4, NULL, 0, 0, SYF_CAPENABLED }, /* 7 = wait4 */
+ { AS(wait_args), (sy_call_t *)wait4, AUE_WAIT4, NULL, 0, 0, 0 }, /* 7 = wait4 */
{ compat(AS(ocreat_args),creat), AUE_CREAT, NULL, 0, 0, 0 }, /* 8 = old creat */
{ AS(link_args), (sy_call_t *)link, AUE_LINK, NULL, 0, 0, 0 }, /* 9 = link */
{ AS(unlink_args), (sy_call_t *)unlink, AUE_UNLINK, NULL, 0, 0, 0 }, /* 10 = unlink */
@@ -94,7 +94,7 @@
{ compat(AS(getkerninfo_args),getkerninfo), AUE_NULL, NULL, 0, 0, 0 }, /* 63 = old getkerninfo */
{ compat(0,getpagesize), AUE_NULL, NULL, 0, 0, SYF_CAPENABLED }, /* 64 = old getpagesize */
{ AS(msync_args), (sy_call_t *)msync, AUE_MSYNC, NULL, 0, 0, SYF_CAPENABLED }, /* 65 = msync */
- { 0, (sy_call_t *)vfork, AUE_VFORK, NULL, 0, 0, SYF_CAPENABLED }, /* 66 = vfork */
+ { 0, (sy_call_t *)vfork, AUE_VFORK, NULL, 0, 0, 0 }, /* 66 = vfork */
{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0 }, /* 67 = obsolete vread */
{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0 }, /* 68 = obsolete vwrite */
{ AS(sbrk_args), (sy_call_t *)sbrk, AUE_SBRK, NULL, 0, 0, SYF_CAPENABLED }, /* 69 = sbrk */
@@ -112,7 +112,7 @@
{ 0, (sy_call_t *)getpgrp, AUE_GETPGRP, NULL, 0, 0, SYF_CAPENABLED }, /* 81 = getpgrp */
{ AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP, NULL, 0, 0, 0 }, /* 82 = setpgid */
{ AS(setitimer_args), (sy_call_t *)setitimer, AUE_SETITIMER, NULL, 0, 0, SYF_CAPENABLED }, /* 83 = setitimer */
- { compat(0,wait), AUE_WAIT4, NULL, 0, 0, SYF_CAPENABLED }, /* 84 = old wait */
+ { compat(0,wait), AUE_WAIT4, NULL, 0, 0, 0 }, /* 84 = old wait */
{ AS(swapon_args), (sy_call_t *)swapon, AUE_SWAPON, NULL, 0, 0, 0 }, /* 85 = swapon */
{ AS(getitimer_args), (sy_call_t *)getitimer, AUE_GETITIMER, NULL, 0, 0, SYF_CAPENABLED }, /* 86 = getitimer */
{ compat(AS(gethostname_args),gethostname), AUE_SYSCTL, NULL, 0, 0, SYF_CAPENABLED }, /* 87 = old gethostname */
@@ -279,7 +279,7 @@
{ AS(ntp_gettime_args), (sy_call_t *)ntp_gettime, AUE_NULL, NULL, 0, 0, SYF_CAPENABLED }, /* 248 = ntp_gettime */
{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0 }, /* 249 = nosys */
{ AS(minherit_args), (sy_call_t *)minherit, AUE_MINHERIT, NULL, 0, 0, SYF_CAPENABLED }, /* 250 = minherit */
- { AS(rfork_args), (sy_call_t *)rfork, AUE_RFORK, NULL, 0, 0, SYF_CAPENABLED }, /* 251 = rfork */
+ { AS(rfork_args), (sy_call_t *)rfork, AUE_RFORK, NULL, 0, 0, 0 }, /* 251 = rfork */
{ AS(openbsd_poll_args), (sy_call_t *)openbsd_poll, AUE_POLL, NULL, 0, 0, SYF_CAPENABLED }, /* 252 = openbsd_poll */
{ 0, (sy_call_t *)issetugid, AUE_ISSETUGID, NULL, 0, 0, SYF_CAPENABLED }, /* 253 = issetugid */
{ AS(lchown_args), (sy_call_t *)lchown, AUE_LCHOWN, NULL, 0, 0, 0 }, /* 254 = lchown */
==== //depot/projects/trustedbsd/capabilities/src/sys/kern/syscalls.c#25 (text+ko) ====
==== //depot/projects/trustedbsd/capabilities/src/sys/kern/systrace_args.c#25 (text+ko) ====
==== //depot/projects/trustedbsd/capabilities/src/sys/sys/syscall.h#25 (text+ko) ====
==== //depot/projects/trustedbsd/capabilities/src/sys/sys/syscall.mk#25 (text+ko) ====
==== //depot/projects/trustedbsd/capabilities/src/sys/sys/sysproto.h#25 (text+ko) ====
More information about the p4-projects
mailing list