Commit Graph

1654 Commits

Author SHA1 Message Date
Foxfair Hu
85484fbd41 PR: 10918
Submitted by:	Yung-Jen Hung <winard@u3717a.dorm.ccu.edu.tw>
Reviewed by:	bearscorp.bbs@bbs.life.nthu.edu.tw
_BIG5_sgetrune() in libc doesn't work well, this commit will fix it.
1999-05-07 13:24:58 +00:00
Guy Helmer
a2b79fbea1 writev(2) can return EDESTADDRREQ when attempting to write to a
UNIX domain socket on which connect(2) had been used to set a destination
address and the destination goes away.

PR:		docs/10451
1999-05-04 20:07:44 +00:00
Guy Helmer
badc7a22e9 Show "#include <machine/param.h>" in SYNOPSIS to get declaration of
PAGE_SIZE for sys/shm.h.

PR:		docs/8464
1999-05-04 17:59:29 +00:00
Guy Helmer
ce423e99c5 Note the effect of close(2) on fcntl(2) record locks.
PR:		docs/3522
1999-05-04 17:45:12 +00:00
Doug Rabson
d4af94988c Declare the return address for __divX, __remX so that gdb can step over
calls properly.
1999-05-02 12:05:09 +00:00
Guy Helmer
1e1d43cd38 Document ishexnumber, isideogram, isnumber, isphonogram, isrune,
and isspecial.

PR:		docs/9854
1999-04-29 21:54:20 +00:00
Guy Helmer
275d1ee30b The accept(2) call can fail with EINTR (at least in the threaded context).
PR:		docs/8858
1999-04-29 20:32:54 +00:00
Poul-Henning Kamp
75c1354190 This Implements the mumbled about "Jail" feature.
This is a seriously beefed up chroot kind of thing.  The process
is jailed along the same lines as a chroot does it, but with
additional tough restrictions imposed on what the superuser can do.

For all I know, it is safe to hand over the root bit inside a
prison to the customer living in that prison, this is what
it was developed for in fact:  "real virtual servers".

Each prison has an ip number associated with it, which all IP
communications will be coerced to use and each prison has its own
hostname.

Needless to say, you need more RAM this way, but the advantage is
that each customer can run their own particular version of apache
and not stomp on the toes of their neighbors.

It generally does what one would expect, but setting up a jail
still takes a little knowledge.

A few notes:

   I have no scripts for setting up a jail, don't ask me for them.

   The IP number should be an alias on one of the interfaces.

   mount a /proc in each jail, it will make ps more useable.

   /proc/<pid>/status tells the hostname of the prison for
   jailed processes.

   Quotas are only sensible if you have a mountpoint per prison.

   There are no privisions for stopping resource-hogging.

   Some "#ifdef INET" and similar may be missing (send patches!)

If somebody wants to take it from here and develop it into
more of a "virtual machine" they should be most welcome!

Tools, comments, patches & documentation most welcome.

Have fun...

Sponsored by:   http://www.rndassociates.com/
Run for almost a year by:       http://www.servetheweb.com/
1999-04-28 11:38:52 +00:00
Joerg Wunsch
a44388523d Mention that you can only create a block or char special file using
mknod(2).
1999-04-28 10:04:48 +00:00
Tim Vanderhoek
e21de373a2 Mention that set-id bits are not honoured for shell scripts and
filesystems with the "nosuid" option.  Mention that syscall tracing
is disabled sometimes.

PR:		misc/11328
1999-04-27 03:56:10 +00:00
Warner Losh
dcb0ae4ed8 More egcs warning fixes:
o use braces to avoid potentially ambiguous else
	o don't default to type int (and also remove a useless register
	  modifier).
	o Use parens around assignment values used as truth values.
	o Remove unused function.

Reviewed by: obrien and chuckr
1999-04-25 22:29:30 +00:00
Wes Peters
aba0410b29 Re-fixed to start at 1969 per the actual Posix requirement. Also
fixed a typo on the man page.
1999-04-25 07:28:39 +00:00
Wes Peters
a00b1d8f7a Bring two-digit years up-to-date with POSIX requirements.
70-00 are intepreted in the 20th century; 01-69 in the
21st century.  (Yes, 2000 is the last year of the 20th
century, not the first year of the 21st.)

Submitted by:	Sergey Babkin <babkin@bellatlantic.net>
1999-04-25 01:42:18 +00:00
Poul-Henning Kamp
00c7dcf63e Add missing strings.
PR:		11285
Submitted by:	Chris Costello <chris@calldei.com>
Reviewed by:	phk
1999-04-24 18:28:24 +00:00
Warner Losh
6d34f07c9d Fix all the mipseb Makefiles. They were broken when I checked them in
before.

Added SYS.h for mipseb and mipsel.

I now get part way through building libc in the cross environment that
I have (along with pending mipse[bl] changes to the intree egcs) with
these changes.
1999-04-22 07:16:11 +00:00
John Polstra
6d30b16752 Back out my change from 6 April PDT that added a new dlversion()
function.  It was an ill-considered feature.  It didn't solve the
problem I wanted it to solve.   And it added Yet Another Version
Number that would have to be maintained at every release point.
I'm nuking it now before anybody grows too fond of it.
1999-04-22 01:54:38 +00:00
Guy Helmer
ec407dbb0d Revise for KLD's.
Prompted-By:	Nathan Ahlstrom <nrahlstr@winternet.com>
1999-04-20 20:36:36 +00:00
Peter Wemm
f4e6d58dca vfsload maps into kldload only now, no more fork/exec of modload(8). 1999-04-19 14:28:45 +00:00
Dmitrij Tejblum
88874fcfe6 Document pread() and pwrite().
Obtained from:	NetBSD (mostly)
1999-04-11 21:14:40 +00:00
Nik Clayton
3ef0a1c27c Contains the para
Unlike other filesystem objects, symbolic links do not have an owner,
  group, access mode, times, etc.  Instead, these attributes are taken from
  the directory that contains the link.  The only attributes returned from
  an lstat() that refer to the symbolic link itself are the file type
  (S_IFLNK), size, blocks, and link count (always 1).

This is bogus, and disagrees with the implementation and symlink(7).

Removed it.

PR:		docs/10269
Submitted by:	Tolik <tolik@sibptus.tomsk.ru>
1999-04-10 20:49:27 +00:00
Warner Losh
26ba999e7e Various language and style concerns fixed.
Noted by: bde
1999-04-09 18:26:46 +00:00
Bruce Evans
1dc547e7a9 Fixed missing include in synopsis.
Fixed some mdoc usage errors.
1999-04-09 14:31:59 +00:00
John Polstra
a35ed6d00d Add manpage link for dlversion(3). 1999-04-07 02:59:47 +00:00
John Polstra
14f5fa0596 Add a new function dlversion() which returns the version number of
the dynamic linker in the same form as __FreeBSD_version.  This is
mainly intended for checking the dynamic linker version during a make
world.
1999-04-07 02:43:11 +00:00
Bruce Evans
940b0c98ca Fixed disordering in previous 2 commits. Fixed an English error. 1999-04-05 07:38:07 +00:00
Dmitrij Tejblum
1b30ac5124 Add wrappers for pread and pwrite syscalls. 1999-04-04 21:46:24 +00:00
Warner Losh
2ee878400e Add mkstemps to the man page, and create a link for it.
Obtained from: OpenBSD
Poked in the eye about committing new functions without a manpage: obrien
1999-04-04 21:15:37 +00:00
Warner Losh
06b6a8ab98 Add mkstemps from OpenBSD. This has been in my tree for months and
hasn't caused any problems until the egcs import.  This fix breaks the
world build, but my very next commit will remove mkstemps from the
egcs build.
1999-04-04 20:28:04 +00:00
Doug Rabson
67022433f8 Manpages for the KLD system calls.
PR:		docs/10412
Submitted by:	Chris Costello <chris@calldei.com>
1999-04-04 12:29:31 +00:00
John Polstra
07963c8cbf Fix a macro name typo that made a word disappear. 1999-04-03 22:47:25 +00:00
Poul-Henning Kamp
5b26e84968 Disable the "Hint" option in phkmalloc as default. Recent VM system
changes have made this too expensive.  This gains about 1.25% on
worldstone on my SMP machine.

Swap-less machines, for instance PicoBSDs, and machines which experience
page-out trafic, check with top(1), will probably want to reenable this
with:
	ln -s H /etc/malloc.conf

Suggested by: alc (&dyson ?)
1999-03-28 14:16:05 +00:00
Dag-Erling Smørgrav
9b030d1073 Partial fix for the forking problem: if we can't access the master maps,
try again with the unrestricted map.

PR:		bin/10821
1999-03-27 21:51:33 +00:00
Doug Rabson
a02290da19 Rename when building libc_r. 1999-03-25 18:43:17 +00:00
Peter Wemm
5fe5a4dd73 Fix a (relatively harmless) braino. I confused myself over the for() loop
that counted the number of elements in argv.  The counter is incremented
in the next-iteration section of the loop, not the body, so at termination
it's already "counted" the element that failed the continuation test - in
this case the NULL argv terminator.

Noted by:  bde
1999-03-24 02:43:05 +00:00
Peter Wemm
ce04fea445 Remove last remaining references to malloc/realloc and functions that
call them.  All the execX() libc functions should be vfork() safe now.
Specifically:
- execlp() does the argument count-and-build into a vector from alloca
    (like the others) - buildargv() is no longer used (and gone).
- execvp() uses alloca/strcpy rather than strdup().
- the ENOEXEC handler uses alloca rather than malloc.
- a couple of free() calls removed - alloca works on the local stack and
    the allocations are freed on function exit (which is why buildargv
    wasn't useful - it's alloca() context would disappear on return).
Along the way:
- If alloca() fails (can it?), set errno = ENOMEM explicitly.
- The ENOEXEC recovery routine that trys again with /bin/sh appeared to
    not be terminating the new argv[] array for /bin/sh, allowing it to
    walk off the end of the list.

I dithered a bit about using alloca() even more as it's most commonly
associated with gcc.  However, standalone portable (using malloc) and
machine-specific assembler alloca implementations appear to be available
on just about all the architectures we're likely to want to port to.
alloca will be the least of our problems if ever going to another compiler.
1999-03-23 16:40:34 +00:00
Poul-Henning Kamp
cc7532aaf0 Add a sysctl variable which can help stop chroot(2) escapes.
kern.chroot_allow_open_directories = 0
	chroot(2) fails if there are open directories.

kern.chroot_allow_open_directories = 1 (default)
	chroot(2) fails if there are open directories and the process
	is subject of a previous chroot(2).

kern.chroot_allow_open_directories = anything else
	filedescriptors are not checked.  (old behaviour).

I'm very interested in reports about software which breaks when
running with the default setting.
1999-03-23 14:26:40 +00:00
Joseph Koshy
f5a7833449 Typo fix.
PR:		docs/10733
Submitted by:	Steve Coltrin <spcoltri@io.com>
1999-03-23 05:01:11 +00:00
Warner Losh
43b4fd733d Don't be so selective about which errors cause us to continue and
which ones cause us to fail.  Now all open errors on the databse file
will cause the next file in the list to be tried.

Submitted by: Arne Henrik Juul <arnej@math.ntnu.no>
PR: 4585
1999-03-21 03:45:58 +00:00
Alexander Langer
ee28fadec0 EACESS -> EACCES 1999-03-15 00:14:57 +00:00
Doug Rabson
93263596ac Add support for long long modifier (e.g. %llx, %lld).
Reviewed by: bde
1999-03-11 22:44:02 +00:00
Ollivier Robert
1e06f30845 PID_MAX is now 99999.
PR:		docs/10530
Submitted by:	Ben Smithurst <ben@scientia.demon.co.uk>
1999-03-10 20:55:23 +00:00
Guy Helmer
6e6019dc13 Explain ENXIO error status with respect to fifos.
PR:		docs/8559
1999-03-07 18:45:35 +00:00
Bruce Evans
6da7e7c6fb Don't bogotify the synopsis by attempting to describe err_set_file() there.
Fixed some disorder.
1999-03-05 15:36:23 +00:00
Alexander Langer
1f34b7f3f8 Fixed references to unmount(2) specified as umount.
Submitted by:	Markus Friedl <markus.friedl@informatik.uni-erlangen.de>
		via OpenBSD
1999-03-05 15:16:31 +00:00
Bruce Evans
dcf01d60ba Fixed disordering and incoinsistent style in previous commit. 1999-03-05 13:01:22 +00:00
Bruce Evans
b300c1d8f9 The pseudocode in the synopsis didn't come close to actually
compiling, since <stdio.h> correctly doesn't declare off_t although
the pseudo-prototypes for the new fseeko() and ftello() functions
use it.  Handle this like the corresponding problem for va_list
versus the vprintf() family.

Fixed some English errors.
1999-03-05 12:56:37 +00:00
Bruce Evans
12d9948ac8 Don't use undocumented markup "{}". Use 32767 instead of LINK_MAX to
give bug for bug compatibility with intro.2.
1999-03-05 10:39:50 +00:00
Bruce Evans
07799a2af1 Backed out most of rev.1.4. I didn't submit it; I only submitted a
request for it something like it.  It was poorly worded and too
far from both POSIX wording and normal (mal)practice by referring to
sysconf(_SC_NGROUPS_MAX) instead of {NGROUPS_MAX} or NGROUPS.  POSIX.1
uses curly braces to mark up "symbolic constants or limits [that may
be] defined in certain headers".  Since we don't document this markup,
don't use it.  Just use NGROUPS_MAX.
1999-03-05 10:29:34 +00:00
Poul-Henning Kamp
c40956e25d Use sysctlbyname() instead of sysctl(). 1999-03-05 10:01:24 +00:00
Bruce Evans
5d57729b8a Forgot to add $Id$ and change date in previous commit. 1999-03-05 09:44:59 +00:00
Bruce Evans
abd022381d Changed the type of quotactl()'s 4th arg from char *' to void *'
so that non-sloppy applications can call it without using disgusting
casts to avoid warnings.  The 4th arg is sort of varargs -- it must
sometimes represent a filename, sometimes a struct pointer, and is
sometimes unused.  The arg type is still caddr_t in the kernel.

Obtained from:	mostly from NetBSD
1999-03-05 09:28:33 +00:00
Warner Losh
4afab83f7d These were missing from the previous commit. 1999-03-03 07:08:03 +00:00
Warner Losh
d7ee48f115 Bring in initial libc support for mips. These files were taken from
the OpenBSD tree and should be considered preliminary.  They are here
to facilitate building of the tree.
1999-03-03 07:06:17 +00:00
Guy Helmer
6e062fe1b7 Correct synopsys: getsubopt is declared in unistd.h, not stdlib.h.
PR:		docs/9376
1999-03-02 02:35:57 +00:00
Guy Helmer
42b47d96f0 Mention that getservbyport requires its port parameter to be in
network byte order.

PR:		docs/9376
1999-03-02 02:34:23 +00:00
Guy Helmer
2704b2cb2b Corrected use of backslash escaping in sample code.
PR:		docs/10284
Submitted by:	Alfred Perlstein <bright@cygnus.rush.net>
1999-02-27 00:54:40 +00:00
Tim Vanderhoek
654b249ced Decapitalize function name by prepending with word "The".
PR:		docs/10247
1999-02-26 01:28:06 +00:00
Bruce Evans
ea28904cd5 Fixed tab lossage in previous commit. 1999-02-25 11:27:52 +00:00
Andrey A. Chernov
7a129df7d0 remove ctype.c - unused and confusing 1999-02-23 15:13:51 +00:00
Joseph Koshy
f28529d798 Add a note about ELF executables requiring to be linked with -export-dynamic
for dlsym() searches inside the executable to work.
1999-02-17 02:41:04 +00:00
Bruce Evans
2c404454ac EOPNOTSUPP also applies to fchflags(). 1999-02-15 13:16:02 +00:00
Dag-Erling Smørgrav
9429c06824 Mention that chflags can fail with EOPNOTSUPP. 1999-02-14 13:58:18 +00:00
Andrey A. Chernov
7345cf9025 remove BUGS section, now behaviour is predictable enough 1999-02-13 09:57:58 +00:00
Andrey A. Chernov
9cee5c5b5c more words about return value 1999-02-13 00:04:54 +00:00
Andrey A. Chernov
e7f6db3ccb re-phrase things a bit 1999-02-12 23:52:29 +00:00
Andrey A. Chernov
f0e6ee9f05 fix wrong return result
fix n=0 case
improve manpage
1999-02-12 23:40:41 +00:00
Andrey A. Chernov
be92e0e6cd fix tabs lost apparently in copy&paste 1999-02-12 19:45:53 +00:00
Alexander Langer
43d1df332e Removed occurrences of consecutive repeated words (such as "the the"). 1999-02-12 02:12:08 +00:00
Dmitrij Tejblum
7307d07db6 Added functions fseeko() and ftello() (from susv2).
Fixed fgetpos() and fsetpos() for offsets > 2GB.

PR:		8637
Submitted by:	 Dan Nelson <dnelson@emsphone.com> (adjusted by me a little)
1999-02-08 21:32:38 +00:00
Alexander Langer
255f294aa6 Document type for 'req' argument to clnt_control. 1999-01-31 16:13:25 +00:00
Joseph Koshy
8ad8dc79db Typo: kern.somaxconn' -> kern.ipc.somaxconn'
PR:		docs/9717
Submitted by:	Nathan Dorfman <nathan@rtfm.net>
1999-01-27 05:13:17 +00:00
Joseph Koshy
221188c6cb Clarify format of exit status code. Note when a return code of -1 can
be expected.

PR:		docs/9701
Submitted by:	Marc van Kempen <marc@bowtie.nl>
1999-01-27 03:54:09 +00:00
Julian Elischer
2907af2a96 Mostly remove the VM_STACK OPTION.
This changes the definitions of a few items so that structures are the
same whether or not the option itself is enabled. This allows
people to enable and disable the option without recompilng the world.

As the author says:

|I ran into a problem pulling out the VM_STACK option.  I was aware of this
|when I first did the work, but then forgot about it.  The VM_STACK stuff
|has some code changes in the i386 branch.  There need to be corresponding
|changes in the alpha branch before it can come out completely.

what is done:
|
|1) Pull the VM_STACK option out of the header files it appears in.  This
|really shouldn't affect anything that executes with or without the rest
|of the VM_STACK patches.  The vm_map_entry will then always have one
|extra element (avail_ssize).  It just won't be used if the VM_STACK
|option is not turned on.
|
|I've also pulled the option out of vm_map.c.  This shouldn't harm anything,
|since the routines that are enabled as a result are not called unless
|the VM_STACK option is enabled elsewhere.
|
|2) Add what appears to be appropriate code the the alpha branch, still
|protected behind the VM_STACK switch.  I don't have an alpha machine,
|so we would need to get some testers with alpha machines to try it out.
|
|Once there is some testing, we can consider making the change permanent
|for both i386 and alpha.
|
[..]
|
|Once the alpha code is adequately tested, we can pull VM_STACK out
|everywhere.
|

Submitted by:	"Richard Seaman, Jr." <dick@tar.com>
1999-01-26 02:49:52 +00:00
Julian Elischer
88c5ea4574 Enable Linux threads support by default.
This takes the conditionals out of the code that has been tested by
various people for a while.
ps and friends (libkvm) will need a recompile as some proc structure
changes are made.

Submitted by:	"Richard Seaman, Jr." <dick@tar.com>
1999-01-26 02:38:12 +00:00
Andrew Gallatin
f0f3d5af23 gethostbyname2() was broken for lookups via NIS on FreeBSD/alpha
due to _gethostbynis() setting h.h_length to sizeof(u_long), which
works out to 8 on alphas.  And 8!= NS_INADDRSZ.
1999-01-25 03:26:45 +00:00
Bruce Evans
57687b2e1f Backed out most of previous commit to go with backing out support for
revoke() on non-device files.
1999-01-24 06:43:30 +00:00
Garrett Wollman
6efae010ca Merge from vendor branch: timezone file structure changes and doco.
Fix localtime.c to deal with new magic number field.

Obtained from: ftp://elsie.nci.nih.gov/pub/tzcode1999a.tar.gz
1999-01-21 17:22:59 +00:00
John Polstra
83068b622c Install man page link for strtok_r. 1999-01-19 23:45:48 +00:00
John Polstra
32150a6766 Spell check and minor grammar fix. 1999-01-19 23:42:44 +00:00
Don Lewis
3146a70d74 Document the errno return if the restrictions on the fcntl(F_SETOWN, ...)
argument implemented by the security patch in PR kern/7899 are violated.
PR:		kern/7899
1999-01-19 09:33:14 +00:00
Joseph Koshy
8425e985b7 revoke(2) is supported on regular files under current. Change wording
in manual page that indicated otherwise.

PR:		docs/9517
Submitted by:	David Malone <dwmalone@maths.tcd.ie>
1999-01-18 02:37:03 +00:00
Dag-Erling Smørgrav
a135bdb9a0 Use the correct type for uid and gid in struct passwd. Document it. 1999-01-18 02:14:20 +00:00
Dag-Erling Smørgrav
eec1dbe6ce Make the implementation and documentation agree. Specifically:
- document that sysctl() and sysctlbyname() return 0 on success

 - if the provided buffer is too small, set errno to ENOMEM and return -1
   instead of returning ENOMEM.
1999-01-06 18:11:53 +00:00
Dmitrij Tejblum
de16000123 Make ctime_r, asctime_r, gmtime_r, and localtime_r available in libc. 1999-01-04 20:45:20 +00:00
Garrett Wollman
600c04ff93 Add STANDARDS section.
s/bytes/characters/g to be consistent with Standard C terminology.
Update date and add RCS Id.
1999-01-03 01:07:41 +00:00
Garrett Wollman
5b9e6e493e Fix grammar in the description of timegm() by totally rewriting it. Remove
a potentally inflammatory comment from BUGS, and add a more useful comment
about the lack of reentrancy in the timezone-setting interface.
1999-01-03 00:35:31 +00:00
Bruce Evans
2e4513990b Ignore the fs_spec entry for "/" in /etc/fstab if the device which
is actually mounted on "/" can be determined using statfs() and is
in /dev.  This fixes fsck operating on the wrong device when the
fs_spec entry is only an alias.  The aliased case became more
dangerous when the ROOTSLICE_HUNT hack was committed in mount(8).
ROOTSLICE_HUNT may be unnecessary now.
1999-01-01 14:14:44 +00:00
Bruce Evans
d82478ba84 Updated type of ss_size in struct sigaltstack.
Removed bogus prerequisite <sys/types.h>.
1999-01-01 12:22:11 +00:00
Doug Rabson
6b387220be [This is a null commit to supply the correct log entry]
Rename 'cerror' to '.cerror' so that programs which have a function or
global variable named 'cerror' don't completely break the syscall error
reporting mechanism.
1998-12-23 11:55:42 +00:00
Doug Rabson
b7f762137a Implement fpsetmask() and other fp*() functions. Programs should use
#include <ieeefp.h>

to access these functions instead of the i386 specific

	#include <machine/floatingpoint.h>

Submitted by: Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>
1998-12-23 11:50:52 +00:00
Wes Peters
a8e94191e8 Added documenation for the existing implementation of asctime_r,
ctime_r, gmtime_r, and localtime_r.
1998-12-20 06:22:06 +00:00
Julian Elischer
6626c6045c Reviewed by: Luoqi Chen, Jordan Hubbard
Submitted by:	 "Richard Seaman, Jr." <lists@tar.com>
Obtained from:	linux :-)

Code to allow Linux Threads to run under FreeBSD.

By default not enabled
This code is dependent on the conditional
COMPAT_LINUX_THREADS (suggested by Garret)
This is not yet a 'real' option but will be within some number of hours.
1998-12-19 02:55:34 +00:00
Eivind Eklund
70efdda93d Note that dying on NULL is an implementation detail. 1998-12-17 17:13:47 +00:00
Eivind Eklund
630dc76f4e Restore old semantics (broken in rev 1.47's buffer overflow fix). 1998-12-17 16:31:02 +00:00
Bruce Evans
d529713846 Adjust for kern.ps_strings and PS_STRINGS not being a pointer. This is
an unimprovement here.  I thought it would be an improvement, as in libkvm,
but here we can access the strings directly.

Use sysctlbyname() instead of sysctl() and trust it to give a nonzero
address if it succeeds.
1998-12-16 17:34:05 +00:00
Warner Losh
81e4e6a2d6 Add reminder to return memory allocated by this call.
Obtained from: OpenBSD
1998-12-16 04:39:23 +00:00
Wes Peters
b1e12513fa Reviewed by: JKH
Submitted by:	Wes Peters

Added strtok_r (reentrant) function and man page.
1998-12-14 05:11:26 +00:00
Steve Price
4c1a815f94 Commit out caveat about hardlinks to directories since they are
no longer possible.

PR:		8337
1998-12-13 23:35:01 +00:00
Matthew Dillon
9a0d08d599 PR: docs/9050
Add reference to required include file #include <stdlib.h> for
    getloadavg(3) function call.
1998-12-13 02:34:56 +00:00
John Birrell
b6776b7488 CALL -> PCALL for sigaltstack for libc_r. 1998-12-10 20:36:24 +00:00
Bruce Evans
0fe8d9f3dd Removed unused include of <kvm.h>. It was alarming for libc to apparently
depend on libkvm.

Removed obsolete `#define _NEW_VFSCONF'.
1998-12-07 11:26:28 +00:00
Nate Williams
738006fa2c - Fix modulo bug that was masked by the correct code in libgcc.a which is
used in almost all programs unless a shared library specifically
  ignores libgcc.a.
1998-11-30 20:25:37 +00:00
Joseph Koshy
2d08e623c1 Enable aio_read(2). 1998-11-24 08:15:08 +00:00
Joseph Koshy
5f67a9c8a1 Don't mention exit(3) in explanation; _exit(2) is a better choice. 1998-11-23 03:23:14 +00:00
Joseph Koshy
cbffe59841 Man page for aio_read(2).
Submitted by:	Terry Lambert <terry@whistle.com> on the -doc lists.
1998-11-19 04:07:55 +00:00
Jacques Vidrine
90d1ac3b67 Update to reflect reality.
PR:		kern/8629
1998-11-16 03:49:39 +00:00
Joseph Koshy
bee0365a4a Fix a .Nm -> .Fn fix that was missed in the previous commit.
Pointed-out-by:	Bruce Evans
1998-11-09 06:52:46 +00:00
David Greenman
adcac26551 Added info about non-blocking support. 1998-11-06 19:35:58 +00:00
Joseph Koshy
41a3e3b022 Update manual page to reflect changes in rev 1.12 of
"src/lib/libc/gen/popen.c" --- popen() in the child
now closes any copies of popen()'ed descriptors in the parent.
1998-11-06 07:09:22 +00:00
David Greenman
eff8678df3 Added a manual page for sendfile(2). 1998-11-05 14:43:29 +00:00
Robert Nordier
8d2c3c32bd Include mergesort() in description of errors. 1998-11-04 09:27:03 +00:00
Robert Nordier
df5a1b840e Drop unused labels. 1998-11-04 09:22:07 +00:00
Robert Nordier
7fb5f2bae4 Handle a zero elements argument.
PR:		8566
Submitted by:	Archie Cobbs <archie@whistle.com>
1998-11-04 08:55:34 +00:00
Peter Wemm
86854f0360 A feeble attempt at kld compatability. The mount_* programs assume that
they cannot mount a filesystem that they cannot see in getvfsbyname().
Part 1 of this is a hack, make vfsisloadable() always return true - the
ultimate decider of whether it's loadable or not is kldload() or mount().
Part 2 of this is to have vfsload() call kldload(2) and return success if
it works.  This means that we will use a viable kld module in preference
to an LKM!
Ultimately, the thing to do is remove the hacks to do a vfsload in all the
mount_* commands and let the kernel do it by itself in mount(2).
1998-11-03 15:02:29 +00:00
Jean-Marc Zucconi
65f14a74bd Typo. 1998-10-30 23:50:48 +00:00
Mike Smith
ebed2088fe Prevent buffer overflow in getpwnam()
PR:		bin/8176
Submitted by:	Archie Cobbs <archie@whistle.com>
1998-10-29 23:16:24 +00:00
Robert Nordier
30af884929 Clarify processing of the string argument by psignal(). 1998-10-29 22:17:46 +00:00
Robert Nordier
4a3bc52a9c (Whoops: make it better instead of worse this time). Clarify
processing of the string argument by perror().
1998-10-29 22:08:59 +00:00
Robert Nordier
94cc971811 Clarify processing of the string argument by perror(). 1998-10-29 21:59:38 +00:00
Robert Nordier
e524a581b1 Check for a zero-length as well as a NULL string argument. 1998-10-29 14:40:20 +00:00
Robert Nordier
d223b5868e The man page implies that the string argument to psignal() may be
NULL, in line with perror(3).  However, the code presently checks only
for a zero-length string.  Check for both.
1998-10-29 11:39:39 +00:00
John Polstra
76a2643efb Handle ELF symbols better. This fixes "vmstat -i" for the case
where "/var/db/kvm_kernel.db" doesn't exist.
1998-10-28 06:37:49 +00:00
Bill Fenner
551677729e ('): and ('); -> (:') and (;') 1998-10-26 19:36:38 +00:00
David E. O'Brien
2100aed918 Slight style police.
Add some content from objformat(1).
1998-10-25 13:29:57 +00:00
Andrey A. Chernov
a4beee718b fix unsigned overflow
PR: 8437
1998-10-25 05:06:42 +00:00
Dima Ruban
964b832929 Fix types. 1998-10-21 09:48:35 +00:00
Peter Wemm
ed1bbda829 Revert last change. mkstemp() wasn't to blame, it's nvi. However,
mkstemp() is not behaving as documented.
1998-10-20 15:33:21 +00:00
Peter Wemm
eb356f9af0 Stop mk*temp() from being pathologically stupid in the face of a umask(0);
There are other ways to fix this than wrapping _gettemp(), but this was
the most convenient.

Discovered by: bde
1998-10-20 12:36:36 +00:00
Dag-Erling Smørgrav
af806462dc Fix style issues in execl(), and make execle() vfork()-safe.
Reviewed by:	bde
Approved by:	jkh
1998-10-15 17:14:15 +00:00
Mike Smith
26c51fb453 Conform to POSIX and close any copies of popen() descriptors inherited by a
popen()ed child.

PR:		misc/7810
Submitted by:	Wayne Scott <wscott@ichips.intel.com>
1998-10-15 01:47:40 +00:00
Dag-Erling Smørgrav
7ea577e550 Correct braino in previous commit. I get the pointy hat again. 1998-10-14 20:23:40 +00:00
Dag-Erling Smørgrav
dea625c872 Make execl() vfork()-safe. This should fix potential bugs in rcp,
telnet and tip, and probably a few other apps.

Reviewed by:	bde
Approved by:	jkh
1998-10-14 18:53:36 +00:00
Peter Wemm
0c372549f6 Avoid the need for calling functions that malloc after a vfork(). 1998-10-11 14:11:51 +00:00
Bruce Evans
0890dc6f44 vfork -> fork. The child calls execl() which calls malloc(), so
vfork() can't be used.  We could use alloca() in execl() so that
it can be called between vfork() and execve(), but a "portable"
popen() shouldn't depend on this.  Calling execle() instead of
execl() should be fairly safe, since execle() is supposed to be
callable from signal handlers and signal handlers can't call
malloc().  However, execle() is broken.
1998-10-10 19:30:45 +00:00
Eivind Eklund
b41c848d46 Remove the description of EBADF (that's an implementation detail if I
ever saw one), and move the description of NULL behaviour out to a
'NOTES' section, with an extra note that programs should not rely up
on it.

Kinda-approve-by:	bde (by not replying to the mail with the diff)
1998-10-10 13:31:32 +00:00
Julian Elischer
29595ffd90 Fix a memory leak
PR: 7923
Submitted by: Archie Cobbs <archie@whistle.com>

        The scandir() function returns -1 if it fails.
	In many cases when this happens, it does not free
	the memory that it allocated, resulting in a memory
	leak, or close the directory opened with opendir().
	BAD DOG, BAD!
1998-10-07 01:30:02 +00:00
Doug Rabson
e0ce825e94 64bit portability fixes.
Submitted by: Andrew Gallatin <gallatin@cs.duke.edu>
1998-10-05 18:35:04 +00:00
Eivind Eklund
aef1f383cf program written under FreeBSD -> programs written under FreeBSD
Noticed by:	Alex Nash <nash@mcs.net>
1998-10-03 16:17:30 +00:00
John Birrell
a0aa389007 Delete the XXX comments that refer to spinlock recursion. The malloc/free/
realloc functions check for recursion within the malloc code itself. In
a thread-safe library, the single spinlock ensures that no two threads
go inside the protected code at the same time. The thread implementation
is responsible for ensuring that the spinlock does in fact protect malloc.
There was a window of opportunity in which this was not the case. I'll fix
that with a commit RSN.
1998-09-30 06:13:59 +00:00
Joseph Koshy
7669e9013b `kern.maxproc' is not changeable from sysctl(8).
Reminded by:	Bruce Evans <bde@zeta.org.au>
1998-09-29 05:16:45 +00:00
Eivind Eklund
8bd4c21699 Document that we will core-dump on getting a NULL pointer. 1998-09-28 15:34:24 +00:00
Doug Rabson
f0a3692000 Don't cast int pointers to long pointers when reading labels from
/etc/disktab.
1998-09-26 14:44:06 +00:00
David E. O'Brien
5846581c2e Apply patch to properly sscanf(3) when there is whitespace in the format
string.  From the submitted patch:

Credit for patch:	Chris Torek <torek@bsdi.com>
			Tod Miller  <millert@openbsd.org>

This makes us in line with SunOS 4.1.3_U1, Solaris 2.6, OpenBSD 2.3,
HP-UX 10.20, Irix 5.3.  The previous behavior was in line with Ultrix 4.4.

PR:		bin/7970
Submitted by:	Niall Smart nialls@euristix.ie
1998-09-25 12:20:27 +00:00
Doug Rabson
cea1d019fe Use 8k pagesize on alpha, not 4k. 1998-09-23 21:26:04 +00:00
Alexander Langer
d988805a1f Back out part of previous commit (even though it's technically correct).
Our spinlock implementation allows a particular thread to obtain a lock
multiple times, but release the lock with a single unlock call.  Since
we're detecting recursion, we know the lock is already owned by the
current thread in a previous call and must not be released in the
current call.  This is really far too dependent on this particular
spinlock implementation, so I've added commented out calls to
THREAD_UNLOCK in the appropriate places.  We can activate this code when
spinlock is taught to count each lock operation.
1998-09-20 01:07:50 +00:00
Alexander Langer
366248e086 Correctly back out of free if a recursive call into malloc.c is detected.
Set malloc_func *after* grabbing the thread lock.

Noticed by:	Simon Coggins <simon@oz.org>
1998-09-19 20:55:36 +00:00
Luoqi Chen
ae45749a50 Simplify implementation and eliminate a register preservation problem.
Reviewed by:	Bruce Evans <bde@zeta.org.au>
1998-09-18 05:50:52 +00:00
Poul-Henning Kamp
8d54281ce7 s/yellow pages/NIS/
PR:		7949
Reviewed by:	phk
Submitted by:	Norihiro Kumagai <kuma@jp.freebsd.org>
1998-09-17 08:29:16 +00:00
Joseph Koshy
0a843f2afb Sort table and descriptions.
Pointed out by: bde
1998-09-16 07:25:34 +00:00
Warner Losh
e8420087b0 Replace memory leaking instances of realloc with non-leaking reallocf.
In some cases replace if (a == null) a = malloc(x); else a =
realloc(a, x); with simple reallocf(a, x).  Per ANSI-C, this is
guaranteed to be the same thing.

I've been running these on my system here w/o ill effects for some
time.  However, the CTM-express is at part 6 of 34 for the CAM
changes, so I've not been able to do a build world with the CAM in the
tree with these changes.  Shouldn't impact anything, but...
1998-09-16 04:17:47 +00:00