Commit Graph

189 Commits

Author SHA1 Message Date
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
cgd cf92afd66e New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD' 1994-06-29 06:29:24 +00:00
mycroft 18157b489f Remove an unneeded test. 1994-06-16 06:01:19 +00:00
mycroft 117527f322 Minor update from JSP after merging my changes. 1994-06-15 22:54:38 +00:00
mycroft 76fe13be8e Fix a bug pointed out by JSP. 1994-06-15 14:40:32 +00:00
mycroft cde1d47595 Update to 4.4-Lite fs code, with local changes. 1994-06-08 11:33:09 +00:00
cgd d9f8c89a76 setrun rename 1994-05-07 01:15:38 +00:00
cgd a0a7429482 lots of changes: prototype migration, move lots of variables, definitions,
and structure elements around.  kill some unnecessary type and macro
definitions.  standardize clock handling.  More changes than you'd want.
1994-05-05 05:35:42 +00:00
cgd 17f30a5d0b kill obvious bug; glad to know this was tested! 1994-05-04 05:41:55 +00:00
cgd 4bbabd8e7a Rename a lot of process flags. 1994-05-04 03:41:12 +00:00
cgd d071d1cf05 some prototype cleanup, eliminate/replace bogus types (e.g. quad and
u_quad) -> use better types (e.g. quad_t & u_quad_t in inodes),
some cleanup.
1994-04-25 03:49:27 +00:00
cgd 4917d8beec make fs types consistent over new kernels. also, some proto foo. 1994-04-23 07:54:38 +00:00
cgd 3dda0064a5 Convert mount, vnode, and buf structs to use <sys/queue.h>. Also,
some knf and structure frobbing to do along with it.
1994-04-21 07:47:31 +00:00
cgd 914b690745 forgot these... 1994-04-15 20:49:27 +00:00
cgd 93159ea799 fs types are names now. 1994-04-14 04:05:45 +00:00
cgd 656b05ccf6 be a bit smarter about determining if files shouldn't be seen by the user.
Also, DON'T allow a lookup to succeed on a file that's not visible!
1994-04-12 02:55:51 +00:00
briggs bf860bb2b2 PG_COW -> PG_COPYONWRITE to match earlier changes in vm_page.h. 1994-03-17 04:10:32 +00:00
mycroft 349d681690 Undo last change; executables is `file', not `a.out'. 1994-02-15 13:32:39 +00:00
ws 0cb2a819b2 Rename file -> a.out 1994-02-14 19:08:36 +00:00
ws 4eab6179ba Don't try to show a file for a process if there is none 1994-02-14 19:07:27 +00:00
ws 2df8c5f528 If you add files, be sure to have enough bits to encode an inode number! 1994-02-06 14:01:16 +00:00
cgd 89a86e618e make a fpregs file. 1994-01-28 07:03:16 +00:00
ws 2cee3e073f Make procfs really work for debugging.
Implement not & notepg files in procfs.
1994-01-20 21:22:47 +00:00
ws 5f7ef81c6f Fix ugliness left over from my last mod 1994-01-11 18:02:06 +00:00
ws a24f445d60 Fix sign extension bug 1994-01-10 20:47:39 +00:00
mycroft c4f31d72f8 Add a missing break so my machine doesn't panic. 1994-01-10 04:58:14 +00:00
cgd 64aaba1a4e fix some of my more recent botches, and clean up slightly. 1994-01-09 23:57:56 +00:00
cgd 5c3b96cd71 oops. fix that last 1994-01-09 20:17:06 +00:00
cgd 9f5ed8f1ef minor cleanup; kill a few assignments 1994-01-09 20:10:51 +00:00
ws 6202bab2db Bug fixes and enhancements:
Make NFS serving work (BUT DON'T USE "attach" TO /proc/*/ctl FOR NOW!!!)
Make `curproc' a symbolic link
Add `.' and `..' entries to the directories.
Return better guesses on the size of the files.
1994-01-09 19:44:03 +00:00
cgd e2efe41199 reorganization of ptrace/procfs code 1994-01-08 10:47:02 +00:00
cgd eda5beab5a return size of 'reg' from getattr() 1994-01-05 21:56:02 +00:00
cgd 9d1babb688 fix UFS vs 'real' fs type mixups 1994-01-05 11:07:31 +00:00
cgd 3ff83b3549 make it compile (cleanly) for us 1994-01-05 08:00:05 +00:00
mycroft 3bd8a96c64 Clean up deleted files. 1994-01-05 07:51:37 +00:00
cgd 699e3be9e9 add new procfs code, from Jan-Simon Pendry, jsp@sequent.com.
This is pretty-much "virgin", so that diffs can be done later.
1994-01-05 07:51:08 +00:00
mycroft 0560892d34 Canonicalize all #includes. 1993-12-18 03:48:27 +00:00
cgd 4f10c7ead8 kill volatile warning. 1993-09-16 22:08:30 +00:00
ws 053f138dae Changes to VFS readdir semantics
NFS changes for better cookie support
ISOFS changes for better Rockridge support and support for generation numbers
1993-09-07 15:40:14 +00:00
pk dd119ec84b Implement setattr: mode for process entries; mode + uid/gid for the
PROCFS root directory.
Fixed omission in pfs_root() which came to light as a result of the above:
hold on to vnode for root dir.
1993-08-26 19:01:00 +00:00
mycroft ac815031d0 Um, last change was wrong. Instead, add 3 to the number of inodes (forget
about the root directory, too).
1993-08-25 14:41:19 +00:00
mycroft b3f22bcdcc Subtract to from the free count for `.' and `..', to maintain the fiction that
this is a real file system.
1993-08-25 14:35:20 +00:00
pk 1e37ac6db4 Fixed improperly initialized nfsnode in pfs_lookup() 1993-08-25 09:28:39 +00:00
pk 8dc35fb5d6 Fill inode fields in procfs_statfs(), in stead of block fields 1993-08-24 17:49:16 +00:00
pk 834a44f21f copyright update. 1993-08-24 16:47:23 +00:00
pk 0cbe77737a Rcs Id added. 1993-08-24 16:25:07 +00:00
pk 498189f379 Initial version of a proc filesystem. 1993-08-24 12:59:09 +00:00