Commit Graph

110 Commits

Author SHA1 Message Date
dyoung ca1b22492a Bug fix: filed.fd_ofiles is always a pointer to the open files
table, so always read the table from kernel virtual memory at that
address.  Do not ever try to read the table from filed0.fd_dfiles,
because it just isn't necessary, and sometimes we read a stale
table from there.
2007-09-09 01:26:55 +00:00
tls 4147a3c54a Add new Makefile knob, USE_FORT, which extends USE_SSP by turning on the
FORTIFY_SOURCE feature of libssp, thus checking the size of arguments to
various string and memory copy and set functions (as well as a few system
calls and other miscellany) where known at function entry.  RedHat has
evidently built all "core system packages" with this option for some time.

This option should be used at the top of Makefiles (or Makefile.inc where
this is used for subdirectories) but after any setting of LIB.

This is only useful for userland code, and cannot be used in libc or in
any code which includes the libc internals, because it overrides certain
libc functions with macros.  Some effort has been made to make USE_FORT=yes
work correctly for a full-system build by having the bsd.sys.mk logic
disable the feature where it should not be used (libc, libssp iteself,
the kernel) but no attempt has been made to build the entire system with
USE_FORT and doing so will doubtless expose numerous bugs and misfeatures.

Adjust the system build so that all programs and libraries that are setuid,
directly handle network data (including serial comm data), perform
authentication, or appear likely to have (or have a history of having)
data-driven bugs (e.g. file(1)) are built with USE_FORT=yes by default,
with the exception of libc, which cannot use USE_FORT and thus uses
only USE_SSP by default.  Tested on i386 with no ill results; USE_FORT=no
per-directory or in a system build will disable if desired.
2007-05-28 12:06:17 +00:00
hubertf 53f3b1d56f Xref sockstat(1) 2006-07-29 14:46:13 +00:00
yamt b1af57a6ba remove __POOL_EXPOSE. 2006-05-27 09:14:03 +00:00
yamt 2416177358 tweak for user.h cleanup.
while i'm here, remove unnecessary #include.
2006-05-11 11:56:38 +00:00
mrg 9ce2c843f8 maxfiles -> fstat_maxfiles. (this _KERNEL definition code needs to not
clash with kernel headers....)
2006-05-11 01:21:23 +00:00
jmmv 772e1db686 Adapt to some name changes in the tmpfs_node structure (to fix the build
under vax with gcc 2.95).  Provided by he@.
2006-02-16 14:58:35 +00:00
christos 62bee0ffa5 PR/32788: KAMADA Ken'ichi: add support for tmpfs 2006-02-10 16:01:45 +00:00
christos 553881914b WARNS=3, knf, ansi prototypes 2005-07-17 07:36:26 +00:00
lukem 7157011597 Only compile in IPv6 support if ${USE_INET6} != "no"
MKINET6 is for providing IPv6 infrastructure.
USE_INET6 is for compiling IPv6 support into the programs (needs MKINET6).
2005-01-10 02:58:58 +00:00
atatat 63fae01c7d Slurp in the struct mount at vp->v_mount and the struct specinfo at
vp->v_specinfo to get the proper st_dev and st_rdev numbers.  We're
already picking over the kernel, so let's do it right.  That means
also asserting the file type for the /dev/pts directory (S_IFDIR) and
nodes therein (S_IFCHR).

Remove getptsmajor(), since we no longer need it.  Besides, it was
being used wrongly.
2004-12-14 03:10:23 +00:00
atatat a92869d7ef Cast fst.fileid to unsigned long and print it as such. Inode numbers
are never negative.
2004-12-14 03:09:24 +00:00
christos 09c258b188 Add ptyfs. 2004-12-12 22:41:03 +00:00
itojun b95181fc9b NI_WITHSCOPEID was not picked up by IETF standardization process. 2004-11-16 05:59:32 +00:00
dsl e833833eb1 Add (unsigned char) cast to ctype functions 2004-10-30 17:29:47 +00:00
christos 6bd1d6d4db Replace the statfs() family of system calls with statvfs().
Retain binary compatibility.
2004-04-21 01:05:31 +00:00
aymeric 5f3a5a8279 fix the way the ext2fs-specific size and mode variables are fetched:
they are indirectly gotten from kernel memory and as such should be read
with KVM_READ.
This fixes fstat core dumps when some process holds a reference in a Linux
ext2fs filesystem.
Thanks to Aleksy Schubert (alx.at.mimuw.dot.edu.dot.pl) for debugging this
with me.
2004-04-02 14:22:05 +00:00
fvdl 49ec36daa1 Don't compare integers and NULL. 2003-10-21 02:16:59 +00:00
agc 89aaa1bb64 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22365, verified by myself.
2003-08-07 11:13:06 +00:00
itojun 3c95d355e5 use bounded string op 2003-07-15 05:56:55 +00:00
fvdl 42614ed3f3 Add support for UFS2. UFS2 is an enhanced FFS, adding support for
64 bit block pointers, extended attribute storage, and a few
other things.

This commit does not yet include the code to manipulate the extended
storage (for e.g. ACLs), this will be done later.

Originally written by Kirk McKusick and Network Associates Laboratories for
FreeBSD.
2003-04-02 10:39:19 +00:00
christos 0fcef5865c undo mallocvar.h changes! 2003-02-02 02:35:58 +00:00
tron 3f39a3d045 Include "sys/mallocvar.h" with "_KERNEL" defined in time to avoid
build failure because MALLOC_DECLARE() is not defined.
2003-02-01 18:31:09 +00:00
martin 8010344d66 Make it compile again on LP64 archs.
XXX - we *realy* need some format string macros for size_t/off_t!
2003-01-20 06:20:37 +00:00
dsl 7e2ddd8ef0 Use kvm_getprocs2 so independant of kernel version
(change aggreed by christos)
2003-01-19 18:14:06 +00:00
enami 988be8626f - file ... instead of filename ...
- "An asterisk (``*'')" instead of "A (``*'')" to be more consistient with
  rest of this manpage.
- Fix typo; ``w'' instead of ``''.
- There is no section named Sockets.  There is only SOCKETS.
2002-11-07 13:52:04 +00:00
yamt ebc708387a add VT_LFS case. 2002-10-26 06:03:50 +00:00
jdolecek 879d35cda1 merge rev. 1.50.2.1 (made by lukem):
rudimentary support for for displaying DTYPE_KQUEUE fds
2002-10-23 22:37:11 +00:00
grant be8ae688ae New sentence, new line. 2002-09-30 11:08:56 +00:00
simonb ba31699a83 Add an extra column for inode numbers, and pull back the mode field to
just 5 columns if in "numeric" mode.  Other fields should dynamically
resize, but not today...
2002-02-12 03:28:20 +00:00
ross 2a76afae02 Generate <>& symbolically. I'm avoiding .../dist/... directories for now. 2002-02-08 01:36:18 +00:00
ross 8bd7cb6a69 Edit -mdoc usage.
* There is no -indent option to .Bd or .Bl, although you would
  never know that from its frequent use in this tree. There is a
  "-offset indent" combination that makes sense, and you can certainly
  say "-width indent".

* Also, you can't markup the -width option argument, tho you CAN
  use a callable macro. So "-width Ar filename" doesn't make sense,
  but either "-width Ar" or "-width filename" does, as might something
  like "-width xxfilename" for a little extra space.

* There are a lot of needlessly complex hanging tag macros in man4 used
  to create simple item lists. Those should be simplified one of these
  days before someone copies and edits yet another man4 page.
2002-02-07 03:15:06 +00:00
wiz 5706f55332 Punctuation nit, sort sections. 2001-12-01 19:13:18 +00:00
jdolecek 305085a35d for (new)pipes, print 'n' if it's in nonblocking mode, and 'a' if it's
set to async
2001-11-25 18:49:02 +00:00
lukem 99147a7648 remove #include <ufs/ufs/quota.h> where it was just to appease
<ufs/ufs/inode.h>, since the latter now includes the former.  leave the former
in source that obviously uses specific bits of it (for completeness.)
2001-10-26 05:56:06 +00:00
jdolecek ac2147b9f2 remove accidentaly left debug printf
change the pipe descriptor output to include 'r' or 'w' to explicitly
indicate it's open for reading or writing, similarily to "regular" descriptors
2001-09-28 20:29:04 +00:00
jdolecek 92f9fd86ff the descriptor flags may also contain other stuff besides FWRITE|FREAD,
so do '& FWRITE' instead of '== FWRITE' in the check in pipe-related code
2001-09-28 20:16:43 +00:00
jdolecek 298d03ceba fix comment 2001-07-08 20:24:05 +00:00
wiz f3f6c5b675 `accessible' only has one `a'. 2001-06-19 12:52:20 +00:00
lukem a4224d7f92 convert if ... else if ... tree to a switch 2001-06-17 08:27:57 +00:00
jdolecek 28dbb7357f Add support for DTYPE_PIPE pipes (a.k.a NEW_PIPE) 2001-06-16 12:08:05 +00:00
mrg 7276c20511 don't #define _LKM to work around header lossage; it is no longer necessary. 2001-06-05 09:20:12 +00:00
wiz 7da30c83ac Change xref for vmstat(8) to vmstat(1).
Whitespace, punctuation and spelling fixes while I'm here.
2001-05-06 23:48:31 +00:00
lukem c2b84904ae use %ll_ instead of the less standard %q_ 2001-01-04 23:05:54 +00:00
enami a5989caf7a Redo previous a bit different way so that mount point of top layer is shown
instead of lowest one and ``fstat file-on-upperlayer'' works.
2000-08-14 09:17:11 +00:00
enami 1dccbbfbd2 Print lower vnode if vnode is on a layered filesystem. 2000-08-14 06:03:21 +00:00
sommerfeld 080fdae8fc Bring into line with recent ktrace changes 2000-05-27 15:02:04 +00:00
jdolecek 1371d1b72d add support for msdosfs 2000-02-04 11:02:00 +00:00
jdolecek 0238a51cd0 use dprintf() instead of printf(), as other filesystem modules do 2000-02-04 10:43:34 +00:00
jdolecek 9200b8eabf move the mapping of vnode type to file type to separate function getftype()
and use it where appropriate
2000-02-04 10:35:46 +00:00