From 3449b18918ac83c6d85cc31b87a3afbfadfceeeb Mon Sep 17 00:00:00 2001 From: rsc Date: Tue, 14 Feb 2006 19:39:30 +0000 Subject: add exticode --- man/man3/exits.3 | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'man/man3/exits.3') diff --git a/man/man3/exits.3 b/man/man3/exits.3 index 62c9e56c..1bab40af 100644 --- a/man/man3/exits.3 +++ b/man/man3/exits.3 @@ -1,6 +1,6 @@ .TH EXITS 3 .SH NAME -exits, _exits, atexit, atexitdont, terminate \- terminate process, process cleanup +exits, _exits, exitcode, atexit, atexitdont \- terminate process, process cleanup .SH SYNOPSIS .B #include .br @@ -13,6 +13,9 @@ void _exits(char *msg) void exits(char *msg) .PP .B +int exitcode(char *msg) +.PP +.B int atexit(void(*)(void)) .PP .B @@ -87,8 +90,19 @@ cancels a previous registration of an exit function. .SH BUGS Because of limitations of Unix, the exit status of a process can only be an 8-bit integer. -Exit status 0 is used for empty exit messages, and 1 for -non-empty messages. +.I Exits +and +.I _exits +treat null or empty exit status as exit code 0 +and call +.I exitcode +to translate any other string into an exit code. +By default, the library provides an +.I exitcode +that maps all messages to 1. +Applications may find it useful to provide their own +implementations of +.I exitcode . .PP Exit codes 97 through 99 are used by the thread library to signal internal synchronization errors between the main program -- cgit v1.2.3