summaryrefslogtreecommitdiff
path: root/lib/libc/stdlib
diff options
context:
space:
mode:
authordholland <dholland@NetBSD.org>2012-01-02 15:55:29 +0000
committerdholland <dholland@NetBSD.org>2012-01-02 15:55:29 +0000
commit5e71b065bda719a36f5d0e9ae0122e36becd671d (patch)
tree6f493d4ef6d85ef1fc861a77f15a83996f0f73c5 /lib/libc/stdlib
parentf3d4e434b094f663d52f9813a831c9b2195e3583 (diff)
Clarify the behavior of exit(x) for out-of-range x. PR 45769
Diffstat (limited to 'lib/libc/stdlib')
-rw-r--r--lib/libc/stdlib/exit.320
1 files changed, 14 insertions, 6 deletions
diff --git a/lib/libc/stdlib/exit.3 b/lib/libc/stdlib/exit.3
index 27ee4d93106..7668f62a354 100644
--- a/lib/libc/stdlib/exit.3
+++ b/lib/libc/stdlib/exit.3
@@ -1,4 +1,4 @@
-.\" $NetBSD: exit.3,v 1.14 2003/08/07 16:43:39 agc Exp $
+.\" $NetBSD: exit.3,v 1.15 2012/01/02 15:55:29 dholland Exp $
.\"
.\" Copyright (c) 1990, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
@@ -33,7 +33,7 @@
.\"
.\" from: @(#)exit.3 8.1 (Berkeley) 6/4/93
.\"
-.Dd August 11, 2002
+.Dd January 2, 2012
.Dt EXIT 3
.Os
.Sh NAME
@@ -78,11 +78,19 @@ Following this,
.Fn exit
calls
.Xr _exit 2 .
-Note that typically
-.Xr _exit 2
-only passes the lower 8 bits of
+.Sh RESTRICTIONS
+Standard C guarantees only that the values zero,
+.Dv EXIT_SUCCESS ,
+and
+.Dv EXIT_FAILURE
+produce meaningful results.
+POSIX extends this to guarantee that the
+least significant 8 bits of
.Fa status
-on to the parent, thus negative values have less meaning.
+are preserved and returned to the parent via
+.Xr wait 2 .
+Values outside the supported range 0-255 are bitwise-truncated; therefore,
+negative values should not be used.
.Sh RETURN VALUES
The
.Fn exit