1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-29 16:44:03 +00:00
freebsd/sys/compat/svr4
Robert Watson 91421ba234 o Move per-process jail pointer (p->pr_prison) to inside of the subject
credential structure, ucred (cr->cr_prison).
o Allow jail inheritence to be a function of credential inheritence.
o Abstract prison structure reference counting behind pr_hold() and
  pr_free(), invoked by the similarly named credential reference
  management functions, removing this code from per-ABI fork/exit code.
o Modify various jail() functions to use struct ucred arguments instead
  of struct proc arguments.
o Introduce jailed() function to determine if a credential is jailed,
  rather than directly checking pointers all over the place.
o Convert PRISON_CHECK() macro to prison_check() function.
o Move jail() function prototypes to jail.h.
o Emulate the P_JAILED flag in fill_kinfo_proc() and no longer set the
  flag in the process flags field itself.
o Eliminate that "const" qualifier from suser/p_can/etc to reflect
  mutex use.

Notes:

o Some further cleanup of the linux/jail code is still required.
o It's now possible to consider resolving some of the process vs
  credential based permission checking confusion in the socket code.
o Mutex protection of struct prison is still not present, and is
  required to protect the reference count plus some fields in the
  structure.

Reviewed by:	freebsd-arch
Obtained from:	TrustedBSD Project
2001-02-21 06:39:57 +00:00
..
imgact_svr4.c Proc locking. 2001-01-23 21:33:55 +00:00
Makefile Make the target a little bit more generic. 2000-11-01 08:47:34 +00:00
svr4_acl.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_dirent.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_errno.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_exec.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_fcntl.c Back out proc locking to protect p_ucred for obtaining additional 2001-01-27 00:01:31 +00:00
svr4_fcntl.h Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_filio.c Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_filio.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_fuser.h Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_hrt.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_ioctl.c Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_ioctl.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_ipc.c FreeBSD doesn't have p_emuldata, and our stackgap_init() doesn't take an 2001-01-23 21:02:44 +00:00
svr4_ipc.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_misc.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
svr4_mman.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_proto.h Regen. (Fix SYS_exit) 2000-07-29 10:07:38 +00:00
svr4_resource.c Proc locking. 2001-01-23 21:33:55 +00:00
svr4_resource.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_siginfo.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_signal.c Proc locking. 2001-01-23 21:33:55 +00:00
svr4_signal.h Make MINSIGSTKSZ machine dependent, and have the sigaltstack 2000-11-09 08:25:48 +00:00
svr4_socket.c Argh, atomic_store_rel -> atomic_store_rel_int. 2001-01-23 21:40:07 +00:00
svr4_socket.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_sockio.c Use queue macros. 2001-01-23 21:32:02 +00:00
svr4_sockio.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_sockmod.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_stat.c Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_stat.h Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_statvfs.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_stream.c Fix typo: wierd -> weird. 2001-02-06 09:25:10 +00:00
svr4_stropts.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_syscall.h Regen. (Fix SYS_exit) 2000-07-29 10:07:38 +00:00
svr4_syscallnames.c Regen. (Fix SYS_exit) 2000-07-29 10:07:38 +00:00
svr4_sysconfig.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_sysent.c Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_systeminfo.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_sysvec.c Fix typo: seperate -> separate. 2001-02-06 11:21:58 +00:00
svr4_termios.c Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_termios.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_time.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_timod.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_ttold.c Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_ttold.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_types.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_ucontext.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_ulimit.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_ustat.h Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_util.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4_utsname.h Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00
svr4_wait.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
svr4.h Removed bogus include of opt_global.h. opt_global.h is automatically 2000-01-09 12:29:45 +00:00
syscalls.conf $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
syscalls.master Cleanup after repo copy of sys/svr4 to sys/compat/svr4. 2000-08-31 22:54:09 +00:00