Commit Graph

418 Commits

Author SHA1 Message Date
lukem a19008b17f Explicitly use base 10 when parsing numbers, to enforce the "decimal number"
semantics that the comments referred to and as per dd(1) (which was the
origin of this functionality).
2004-03-05 05:58:29 +00:00
wiz e3fc4b66c3 Spell the plural of suffix "suffixes", not "suffices".
Inspired by PR 24400 by Todd Vierling.
2004-02-13 17:56:17 +00:00
dbj 1d81763357 print max rather than min in error message when number
parsed by strsuftollx is greater than max
2004-01-17 23:02:51 +00:00
jdolecek b02f563aeb improve random number generation by using largest 31-bit prime
as denominator; regenerate the randtbl[] with new generator

patch provided in lib/22853 by KIHARA Hideto; code actually present
in libkern/random.c since 1994/06/03

matches similar change done in glibc in 1995, and FreeBSD & OpenBSD in 1996
2003-11-26 20:44:40 +00:00
lukem 171d653219 Overhaul how `build.sh tools' are used:
*	Rename "config.h" to "nbtool_config.h" and
	HAVE_CONFIG_H to HAVE_NBTOOL_CONFIG_H.
	This makes in more obvious in the source when we're using
	tools/compat/config.h versus "standard autoconf" config.h

    *	Consistently move the inclusion of nbtool_config.h to before
    	<sys/cdefs.h> so that the former can provide __RCSID() (et al),
    	and there's no need to protect those macros any more.

These changes should make it easier to "tool-ify" a program by adding:
	#if HAVE_NBTOOL_CONFIG_H
	#include "nbtool_config.h"
	#endif
to the top of the source files (for the general case).
2003-10-27 00:12:41 +00:00
junyoung e3ac3a4d0c Style fixes to reduce diff size against the FreeBSD version, notably:
- Use NULL where appropriate.
 - No need to pull in stdint.h.
 - Get rid of "register" keywords in the hope that the compiler will
   do a better job for us. :-)
 - Every message ends with a period.
 - MMAP() macro is supposed to return MAP_FAILED rather than -1 if it
   fails.
 - De-__P.
2003-10-05 04:49:46 +00:00
wiz a66ae71844 Slight syncing with OpenBSD version. 2003-09-23 10:26:54 +00:00
itojun 57e4de6099 add warning on realloc() size de-synchronization. from openbsd 2003-09-19 05:36:59 +00:00
wiz 8d66b069c8 Use standard section headers, suggested by jmc@openbsd. Sort sections. 2003-09-10 13:30:16 +00:00
wiz 9e4a539564 Pull over some improvements from OpenBSD's v1.26 of this file, including
SEE ALSO and RETURN VALUES sections.
2003-09-10 09:35:41 +00:00
itojun 0186de22d3 getopt return value has to be held in int, not char. 2003-09-10 00:03:42 +00:00
wiz 185463aee4 Fix typos and declare a missing variable in example. From Quentin Garnier in PR 22733. 2003-09-09 19:31:53 +00:00
wiz dca9ccd375 Use St -isoC-9X instead of St -isoC9X, to be in sync with groff. 2003-09-08 17:54:31 +00:00
wiz c4f582bcc6 Fix typos in comments; from Brian Poole via jmc@openbsd. 2003-09-07 19:06:50 +00:00
agc eb7c1594f1 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22280, verified by myself.
2003-08-07 16:42:00 +00:00
salo 99410184e7 netbsd.org->NetBSD.org 2003-07-26 19:24:24 +00:00
itojun 6f4e912af4 call malloc_init() on first call to free/realloc, to make malloc.conf to
take effect.  in response to PR 22223
2003-07-23 08:15:02 +00:00
wiz e19fe12b03 Remove superfluous comma. 2003-06-27 18:01:08 +00:00
wiz 3e884db9b9 Quote question mark. 2003-06-27 14:03:45 +00:00
uwe 0bbb587407 Add atoll(3) to libnbcompat. We need it when building target's gcc
for a 64-bit target on a 32-bit host.

NB: There seems to be a bug in either gcc itself or the way we import
it, b/c the incorrect #define HAVE_ATOLL is picked from (e.g. for
sparc64) gnu/usr.bin/gcc/arch/sparc64/auto-host.h - so when gen*
auxilary (host) programs are built in gnu/usr.bin/gcc/backend, they
incorrectly pick-up target's HAVE_ATOLL.

For now providing atoll(3) in libnbcompat is a simple and sufficient
workaround.
2003-06-03 03:16:48 +00:00
kleink 4f95ecd71a KNF example: NULL vs. 0, space after switch. 2003-05-29 17:48:49 +00:00
wiz 7a7ee80bcc Misc fixes from jmc@openbsd. 2003-05-10 12:24:54 +00:00
wiz 472351e13d Use
.In header.h
instead of
.Fd #include \*[Lt]header.h\*[Gt]
Much easier to read and write, and supported by groff for ages.
Okayed by ross.
2003-04-16 13:34:34 +00:00
kleink c02f38cf64 Warn if the old unsetenv() is referenced. 2003-04-13 17:39:13 +00:00
kleink aa92e94d2a Observed in other places: move __unsetenv13.c near unsetenv.c, only
group name space wrappers separately.
2003-04-07 17:18:20 +00:00
drochner 1a9947a7d7 unsetenv(3) returns "int" now 2003-04-07 16:29:06 +00:00
drochner 22b67837d4 compile unsetenv(3) into libc or you'll mess up your system 2003-04-07 16:22:43 +00:00
kleink 13dee93fb3 1003.1-2001 has introduced unsetenv() which differs from the current
implementation in not permitting a "name=value" argument.
* Add a conforming __unsetenv13() and do function renaming for
  unsetenv(); preserve old symbol with old behavior.
* Make visible setenv() and unsetenv() for 1003.1-2001 feature selection
  macros; resolves PR standards/20479.
2003-04-07 13:41:13 +00:00
nathanw aa70f03b23 When implementing a recursive mutex, it helps if you remember to
decrement the recursion count.

Fixes the problem of uic dying with a no-next-thread assertion while
building kdeadmin3; reported by Perry Metzger and others on
tech-pkg.
2003-03-19 22:26:47 +00:00
nathanw f60f35f3ab Don't acquire __environ_lock around exec*() calls; nothing requires
that these calls be thread-safe with respect to the environment, and it
causes serious problems for threaded applications which call vfork() and
exec*() (including indirectly, via popen() or system()).

Acquire and release __environ_lock in the parent in popen() and system() to
play safe and provide the child with a stable environment.

__environ_lock should also have an atfork() handler; still under development.
2003-03-04 19:44:09 +00:00
thorpej 65ec6ba6e7 Fix lib/20558:
A dynamically linked program invokes the rtld cleanup routine via
an atexit handler.  This rtld cleanup routine invokes _fini() for
shared libraries, which in-turn invoke __cxa_finalize() with their
DSO handle.  By luck, this happens to work okay for non-threaded
programs, but for a threaded program, this leads to deadlock (sometimes
manifested as an assertion failure, if the program didn't actually
create any threads).

Fixed by teaching __cxa_finalize() that it can be recursively invoked,
adjusting the handler list manipulation accordingly.
2003-03-04 18:09:48 +00:00
bjh21 22ebd2b34b Add _Exit(), for C99 and POSIX-2001.
Proposed on tech-userlevel to a resounding silence in April last year.
2003-03-01 15:59:02 +00:00
thorpej 26be93fa6f Rewrite atexit(3), and add support for __cxa_atexit()/__cxa_finalize(),
as specified by the C++ ABI for Itanium.  Despite the ABI document's name,
many of the items in it are implemented for other architectures.

See the following URL for a reference:

	http://www.codesourcery.com/cxx-abi/abi.html#dso-dtor

Fixes lib/18379 (from Joel Baker).
2003-03-01 04:19:37 +00:00
itohy ca348cd671 Use definition in "namespace.h" to rename functions, not home grown. 2003-02-08 07:27:51 +00:00
heinz 077e910e6d Provide some more details for papers by Bentley/M.D. McIlroy and by
P.M. McIlroy (after short e-mail conversation with M.D. McIlroy on
www@).
2003-01-29 22:12:53 +00:00
dsl c673281c37 Fix lib/17248 properly
'ls -l-' now reports unknown option -- -
'env -' and 'su -' both work ok
(change approved by christos)
2003-01-20 09:06:35 +00:00
christos af26d1a576 s/_REENT/_REENTRANT/ 2003-01-18 17:20:04 +00:00
thorpej 3fdac2b8c5 Merge the nathanw_sa branch. 2003-01-18 10:52:16 +00:00
chris 5e606f5b98 Add a couple of missing THREAD_UNLOCK's, for the error exit path.
No functional change on Mainline, however SA branch probably needs this.
2002-12-09 14:14:59 +00:00
wiz 454f40b755 a <-> an fixes. 2002-11-29 19:19:39 +00:00
lukem 6ca5b5bb68 add strsuftoll(3) and strsuftollx(3) - parse a string for a number
with an optional suffix, product (two numbers separated by `x'), and
provide range checking
2002-11-29 12:58:14 +00:00
enami b37113ebab Fix indent in sample code. 2002-11-15 04:38:55 +00:00
thorpej d6e3c04143 Fix signed/unsigned comparison warnings. 2002-11-11 20:34:10 +00:00
thorpej 1289029f10 Fix signed/unsigned comparison warnings. 2002-11-11 17:56:11 +00:00
lukem 9df13b15cf pull in config.h (et al) for libnbcompat 2002-10-06 12:07:28 +00:00
wiz 8e21934b43 Grammar fixes and markup improvements. 2002-10-02 10:54:19 +00:00
wiz 7b55d02525 completely with only one "el". 2002-10-02 10:50:04 +00:00
wiz 6569c5c509 New sentence, new line. From Robert Elz. 2002-10-01 17:22:00 +00:00
wiz 60bfa780a0 Mark up NULL and ENOMEM. 2002-08-20 16:15:38 +00:00
wiz 64f4287d6d Remove superfluous double quotes and a superfluous Ns. 2002-08-20 15:30:07 +00:00
yamt c5caadcfd8 bring in EXAMPLES and a note.
from openbsd.
2002-08-11 07:05:41 +00:00
yamt 6410ff3c05 bring in EXAMPLES from OpenBSD. 2002-08-11 06:53:39 +00:00
yamt 8acd3a715f - more description about realloc.
- mention errno.
- add FILES section for malloc.conf.
from openbsd.
2002-08-11 06:12:45 +00:00
yamt 145cf30b9f fix sample code. from openbsd. 2002-08-10 17:25:01 +00:00
yamt 1060c75faa result of getenv should be treated as read-only.
from OpenBSD.
2002-08-10 17:14:50 +00:00
yamt 0010f8875d bump .Dd . 2002-08-10 17:10:11 +00:00
yamt 9d36ca1fbf note only 8 bits of exit-status is passed.
from OpenBSD.
2002-08-10 17:09:27 +00:00
yamt 120c9b3256 note that alloca can't report error.
from OpenBSD.
2002-08-10 16:55:18 +00:00
yamt 14e693f16b bump .Dd for my previous commit. 2002-08-10 16:51:26 +00:00
yamt cd575f9fb2 note that abort(3) causes streams flushed and closed.
from OpenBSD.
2002-08-10 16:47:54 +00:00
jdolecek 06a4a82134 restore the previous form of the condition checking malloc() return value, which
was changed in previous revision
2002-07-31 12:57:36 +00:00
itojun 891518d386 allow calloc(0, x) and calloc(x, 0). sync w/openbsd 2002-07-31 09:26:49 +00:00
itojun c68c6aa7e0 die if integer overflow. from openbsd 2002-07-30 09:45:02 +00:00
yamt 673cbedc13 import CAVEATS sections from OpenBSD.
with little tweak by me.
2002-07-10 14:37:12 +00:00
wiz 4dc035fd8a Undo last two, until I have time to take a good look at the problems. 2002-06-21 09:56:33 +00:00
wiz ec1956ee4e According to POSIX, "-" (the string) is an exception and should not
be parsed as option. Restore behaviour broken by previous commit.
Mirrors second part of patch from lib/17248.
2002-06-13 21:18:50 +00:00
wiz d2d91a9170 Fix '-' handling. POSIX only recognizes "--" as end-of-options.
Problem noted in lib/17248 by David Laight, including a patch.
Part of this patch was used.
2002-06-13 20:49:00 +00:00
fredette 02ac1ae2f0 Added hppa support (some of it incomplete) to lib/csu, lib/libc,
and lib/libkvm.
2002-06-06 20:31:19 +00:00
wiz 919948e5f4 Fix SYNOPSIS, noted by Martin Macok on tech-userlevel. 2002-06-03 12:01:43 +00:00
wiz bf5ec17026 Remove #ifdef Bad_float_h and #ifndef __STDC__ parts (unneeded). 2002-05-26 15:04:08 +00:00
zuntum 0f1273fc58 Xref fabs(3)
OK'd by Jaromir Dolecek
2002-04-28 11:52:43 +00:00
ross 9856438e91 generate & symbolically 2002-02-07 09:24:04 +00:00
ross 814f296b77 Generate <>& symbolically. 2002-02-07 07:00:09 +00:00
tv 9fbd88883c Roll in fixes to permit cross-compiling from non-NetBSD hosts. This
round has been tested on Solaris/x86 and Linux hosts.

* Add host tools cap_mkdb, ctags, m4, uudecode.
* Protect __RCSID() and __COPYRIGHT() better.
* Reduce the number of places that need to include "config.h", to keep
  sources closer to their "vanilla" versions.
* Add more compat #defines and autoconf-checked functions.
2002-01-31 22:43:33 +00:00
tv a328e34106 Make almost all tools compile and run properly on non-NetBSD hosts. (In
particular, most tools now run correctly on Solaris 7.)
2002-01-29 10:20:28 +00:00
wiz bae3b2f44b Punctuation fixes. 2002-01-28 02:07:57 +00:00
kleink f100d16fcf C99: support INF, INFINITY, NAN and NAN(n-char-sequence-opt) arguments. 2002-01-28 00:10:04 +00:00
wiz 626980860b Use .Pp instead of empty lines. 2002-01-15 02:37:56 +00:00
wiz a62d4fbf73 Use Aq for email address. 2002-01-15 02:37:32 +00:00
thorpej 10b6bfb636 Make a note about the alignment requirement of the state array
passed to initstate(3).  This is actually documented in comments
in the code.
2002-01-08 02:19:56 +00:00
thorpej 3181978909 Make this actually work on LP64 platforms. It has been broken
since some "cleanups" in the master (UCB?) version of this file
were made in 1994 (which assumed the size of long is 4 bytes).

This fixes krb5-enabled logins on the Alpha.
2002-01-08 02:11:39 +00:00
thorpej 846f87dbb9 Use __sh__ instead of __sh3__. 2001-12-15 03:39:53 +00:00
lukem 50f5afd52e fix WARNS=2 (-Wshadow) warnings 2001-11-04 13:57:29 +00:00
kleink e8befb717e Inspired by Stevens' APUE and the implementation example in XSH:
* Don't return if wait()ing for the child is interrupted.
* Fix a race condition for the parent's SIG{INT,QUIT} disposition.
* While we're here, convert from using signal(3) to sigaction(2).
2001-10-31 13:31:26 +00:00
wiz 4e59d26612 Drop unnecessary whitespace and .Pp, sort SEE ALSO, sort sections,
and some minor fixes.
2001-09-16 01:31:51 +00:00
enami 0af73d03a2 Sort SEE ALSO and remove trailing comma. 2001-09-16 01:09:18 +00:00
fvdl a067632dd5 Add x86_64 to the list of if defined(blah) for endian determination
(surely this can be done in a better way).
2001-06-19 22:08:07 +00:00
assar 12df1a8eb8 remove confusing comparison with srand (it does not return the old seed)
use .Sh AUTHORS and .An for author
2001-06-09 01:43:53 +00:00
simonb 8e610505cb Add sradixsort to the NAME section. 2001-06-07 13:17:09 +00:00
mycroft d44a3af5c0 Add an underscore for consistency. 2001-05-10 06:10:35 +00:00
kleink 714d58eb51 For consistency add a _DIAGASSERT() case, and remove some cruft. 2001-05-07 08:32:20 +00:00
kleink b03ace75dd Add a _DIAGASSERT() case, and remove some cruft. 2001-05-07 08:29:25 +00:00
kleink cb31d8175c Use <stddef.h> rather than <stdio.h> if it's just NULL that's wanted. 2001-05-07 08:26:13 +00:00
lukem 3b2a77c393 need stdio.h for NULL... 2001-05-07 02:51:59 +00:00
christos b2126f94bb More fixes:
1. use uintptr_t instead of u_long
2. check for overflow in map_pages and malloc_pages
3. bring in fixes from FreeBSD [int -> size_t, and a missing THREAD_UNLOCK]
4. rewrite map_pages to use sbrk() only to grow memory (avoids extra syscall
   and elides bug in brk(2) that ross is fixing)
5. restore the break point to its original value if the mmap(2) for the page
   directory or the alignment sbrk breaks.

reviewed by: chuq and ross
tested by: make build and reboot
Now memtest nearly works; unfortunately there is no way currently to lower
the break point as we free, so memtest keeps trying to reduce memory when
mlock() fails and that does not work.
2001-05-06 04:48:41 +00:00
christos fa27739cb4 PR/12810: Chris ?: malloc core-dumps when given large number as the argument.
This is because integer overflow occurs in the computation of the size of
the page directory array. We now detect that, and return ENOMEM.
2001-05-03 15:35:12 +00:00
kleink fe3c9ceaf7 * Move definitions of exact-width integer types from <machine/types.h>
to <sys/types.h> and <sys/stdint.h>.
* Add a new C99 <stdint.h> header, which provides integer types of
  explicit width, related limits and integer constant macros.
* Extend <inttypes.h> to provide <stdint.h> definitions and format
  macros for printf() and scanf().
* Add C99 strtoimax() and strtoumax() functions.
* Use the latter within scanf().
* Add C99 %j, %t and %z printf()/scanf() conversions for
  intmax_t, pointer-type and size_t arguments.
2001-04-28 15:41:28 +00:00
joda 77dec036c1 don't claim that options are illegal, cf lib/12715 2001-04-24 09:07:43 +00:00
cgd e8c9c330a8 document EXIT_SUCCESS and EXIT_FAILURE, since they've been around
since ANSI and (for portability, since ANSI) in some circles they're
the preferred exit status codes.
2001-03-22 01:37:46 +00:00
kleink 77fbd9fe1c Sprinkle some restrict qualifiers. 2001-03-21 22:42:28 +00:00