Commit Graph

96 Commits

Author SHA1 Message Date
mycroft
d24c4d31e1 Make the curproc link executable. 1997-10-30 09:14:07 +00:00
fvdl
ce56587f15 Bump last argument to VOP_READDIR to off_t (from u_long). 1997-10-10 02:01:05 +00:00
enami
b4ae3706db Use the same indentation as other two place, sys_ptrace() and
procfs_control().

Ok'ed by Jason R. Thorpe.
1997-09-13 04:25:35 +00:00
christos
4fb8bf7262 PR/4098: Alan Barrett: Fix diagnostic printf formatting. 1997-09-10 13:44:20 +00:00
thorpej
a79a3ca472 Fix a reversed argument which caused procfs_checkioperm() to always return
"OK".  Add a few comments to avoid further confusion.
1997-08-27 08:52:51 +00:00
explorer
945beb8d63 Move procfs_checkioperm() from procvs_subr.c to procfs_mem.c, since _subr is
not included in a kernel without procfs, and it seems wrong to pull
all of procfs_subr.c in for just that one function.  Perhaps this
should go into a new file instead?
1997-08-13 04:01:22 +00:00
thorpej
f9777e4a1c Fix the procfs hole described on current-users, similar to a fix for
FreeBSD by Sean Eric Fagan, but a bit different.  This makes the checks
in the same places as sef's FreeBSD patch, but does not hardcode the
"kmem" group into the kernel, and also does a check identical to the
(3) and (4) checks in the NetBSD ptrace(2):

	(1) it's not owned by you, or is set-id on exec (unless
	    you're root), or

	(2) it's init, which controls the security level of the
	    entire system, and the system was not compiled with
	    permanently insecure mode turned on.
1997-08-12 22:47:18 +00:00
mycroft
2ee8bc2b79 Don't allow writes to init's memory or registers while in secure mode. 1997-06-25 11:32:15 +00:00
mycroft
e3f99a9397 Pass the vnode type to vaccess(), and use it when checking VEXEC. Make sure
that the mode bits passed to vaccess() and returned by foo_getattr() contain
only permission bits.
1997-05-08 16:19:43 +00:00
mycroft
4d213ec5e7 Need stat.h. 1997-05-05 07:34:09 +00:00
mycroft
1e3c14a909 Eliminate bogus uses of V{READ,WRITE,EXEC}. Use S_I[RWX]{USR,GRP,OTH} where
appropriate.
1997-05-05 07:13:57 +00:00
mycroft
701f15db33 Reinstate P_FSTRACE, with different semantics:
* Never send a SIGCHLD to the parent if P_FSTRACE is set.
* Do not permit mixing ptrace(2) and procfs; only permit using the one that
  was attached.
1997-04-28 04:49:27 +00:00
mycroft
8a33a13c65 Minor code cleanup. 1997-04-28 03:49:57 +00:00
mycroft
217c4e14ea Fix several deficiencies, as compared to ptrace(2):
* Did not check for P_SUGID on ATTACH.
* Did not check for tracing of init on ATTACH.
* Did not turn off single-step mode on RUN or DETACH.
* Might have screwed up reparenting in some cases.
* Allowed anyone to detach the process.
1997-04-28 02:28:39 +00:00
cgd
90688fce27 Change the second and third args to struct vfsops' (*vfs_mount)() to
'const char *', and 'void *', respectively.  The second arg is taken directly
from user arguments, and is const there, so must be const in the prototypes
and functions.  The third arg is also taken directly from user arguments.
It doesn't have to be changed, but since it's cleaner to keep the type
the same as the user arg's type, and I'm already making the 'const char *'
change...
1996-12-22 10:10:12 +00:00
cgd
a67c0b16b8 define path name string variables that we should not (and, thankfully, do
not) modify as 'const char *' rather 'char *'.
1996-10-25 21:57:58 +00:00
cgd
eaa37ec87a remove bogus cast of second arg to bcmp(). (nm_name is a const char*,
and was being unnecessarily cast to 'char *'; -Wcast-qual.)
1996-10-25 21:52:02 +00:00
christos
92a808f167 backout previous kprintf changes 1996-10-13 02:21:25 +00:00
christos
60d201973e printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:46:11 +00:00
mycroft
2bc736661a Implement poll(2). 1996-09-07 12:40:22 +00:00
mycroft
c52352c819 Add a set of generic file system operations that most file systems use.
Also, fix some time stamp bogosities.
1996-09-01 23:47:48 +00:00
mycroft
95f26583aa Add a missing PHOLD()/PRELE() pair. 1996-06-11 01:49:38 +00:00
christos
da749d6e09 Fix printf format follies. 1996-03-16 23:52:42 +00:00
mycroft
183aec8fa8 GC *_nullop(). Minor nits. 1996-02-13 13:12:48 +00:00
christos
19dc07be15 close PR/2063: procfs_rw prototyped twice with different prototypes 1996-02-12 15:01:41 +00:00
christos
631ccba638 miscfs prototype changes 1996-02-09 22:39:56 +00:00
mycroft
fce3e0874f Fix vop_link, vop_symlink, and vop_remove semantics in several ways:
* Change the argument names to vop_link so they actually make sense.
* Implement vop_link and vop_symlink for all file systems, so they do proper
  cleanup.
* Require the file system to decide whether or not linking and unlinking of
  directories is allowed, and disable it for all current file systems.
1996-02-09 18:47:48 +00:00
mycroft
53fccab940 Fix vop_link, vop_symlink, and vop_remove semantics in several ways:
* Change the argument names to vop_link so they actually make sense.
* Implement vop_link and vop_symlink for all file systems, so they do proper
  cleanup.
* Require the file system to decide whether or not linking and unlinking of
  directories is allowed, and disable it for all current file systems.
1996-02-09 14:45:36 +00:00
mycroft
d60bb4a465 Use the index number as the cookie, rather than multiplying by UIO_MX. 1995-10-09 14:03:32 +00:00
mycroft
bcaf2bca34 Add support for cookies, mostly from Greg Hudson. 1995-10-09 11:18:51 +00:00
mycroft
36a94a031a Lock the process in core before operating on it. 1995-08-13 09:05:51 +00:00
cgd
8f62c773e8 don't assume the f_fsnamelen is nul-truncated or longer than MFSNAMELEN 1995-06-18 14:45:14 +00:00
jtc
95ded74f58 Moved egid credential from cr_groups[0] to new field cr_gid. POSIX.1
requires that sgid executables and the setuid() syscall *not* change
the supplemental group list.
1995-06-01 22:43:30 +00:00
cgd
13f5026553 fix timeval vs. timespec warnings 1995-04-15 01:56:43 +00:00
briggs
6efcd1b6d4 KERNEL -> _KERNEL 1995-03-29 21:57:43 +00:00
mycroft
2f805fa51b copy*str() should use size_t. 1995-03-09 12:05:21 +00:00
mycroft
597bdad3df Return EROFS rather than ENOENT in many cases. Also some cosmetic cleanup. 1995-02-03 16:18:46 +00:00
mycroft
e9017fd132 Clean up the code to frob mnt_stat a (tiny) bit. 1995-01-18 09:34:24 +00:00
chopps
ce22a1a443 initialize variable as pointed out by David Jones <dej@qpoint.torfree.net>
this should fix pr #699
1995-01-05 07:10:54 +00:00
mycroft
609063ce2b Format police. 1994-12-27 19:05:12 +00:00
ws
2f0fb8ee09 Implement and use a common access checking routine 1994-12-24 16:44:12 +00:00
mycroft
814ba0fc30 Call foo_statfs() from a common place when mounting. 1994-12-15 20:00:14 +00:00
mycroft
7276c4ed44 Remove a_fp. 1994-12-14 18:45:21 +00:00
christos
a1dbf4aaa5 fixed struct comment 1994-11-14 06:08:21 +00:00
cgd
6ac2bbfc35 be more careful with types, also pull in headers where necessary. 1994-10-30 21:43:03 +00:00
cgd
be8c7b9d80 light clean; make sure headers are properly included, types are OK, etc. 1994-10-29 07:58:24 +00:00
cgd
6b86130410 update for new syscall args description mechanism 1994-10-20 04:22:35 +00:00
mycroft
76e0a7d0f4 Fix typo. 1994-09-15 03:47:19 +00:00
mycroft
cab4d25c24 stat the file system at mount time, for `df -n', et al. 1994-09-15 03:42:37 +00:00
mycroft
2f710a54ee Convert process, file, and namei lists and hash tables to use queue.h. 1994-08-30 03:04:28 +00:00