xref: /minix3/lib/libc/stdlib/exit.3 (revision 84d9c625bfea59e274550651111ae9edfdc40fbd)
1*84d9c625SLionel Sambuc.\" $NetBSD: exit.3,v 1.16 2013/04/26 18:29:55 christos Exp $
22fe8fb19SBen Gras.\"
32fe8fb19SBen Gras.\" Copyright (c) 1990, 1991, 1993
42fe8fb19SBen Gras.\"	The Regents of the University of California.  All rights reserved.
52fe8fb19SBen Gras.\"
62fe8fb19SBen Gras.\" This code is derived from software contributed to Berkeley by
72fe8fb19SBen Gras.\" the American National Standards Committee X3, on Information
82fe8fb19SBen Gras.\" Processing Systems.
92fe8fb19SBen Gras.\"
102fe8fb19SBen Gras.\" Redistribution and use in source and binary forms, with or without
112fe8fb19SBen Gras.\" modification, are permitted provided that the following conditions
122fe8fb19SBen Gras.\" are met:
132fe8fb19SBen Gras.\" 1. Redistributions of source code must retain the above copyright
142fe8fb19SBen Gras.\"    notice, this list of conditions and the following disclaimer.
152fe8fb19SBen Gras.\" 2. Redistributions in binary form must reproduce the above copyright
162fe8fb19SBen Gras.\"    notice, this list of conditions and the following disclaimer in the
172fe8fb19SBen Gras.\"    documentation and/or other materials provided with the distribution.
182fe8fb19SBen Gras.\" 3. Neither the name of the University nor the names of its contributors
192fe8fb19SBen Gras.\"    may be used to endorse or promote products derived from this software
202fe8fb19SBen Gras.\"    without specific prior written permission.
212fe8fb19SBen Gras.\"
222fe8fb19SBen Gras.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
232fe8fb19SBen Gras.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
242fe8fb19SBen Gras.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
252fe8fb19SBen Gras.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
262fe8fb19SBen Gras.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
272fe8fb19SBen Gras.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
282fe8fb19SBen Gras.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
292fe8fb19SBen Gras.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
302fe8fb19SBen Gras.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
312fe8fb19SBen Gras.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
322fe8fb19SBen Gras.\" SUCH DAMAGE.
332fe8fb19SBen Gras.\"
342fe8fb19SBen Gras.\"     from: @(#)exit.3	8.1 (Berkeley) 6/4/93
352fe8fb19SBen Gras.\"
36f14fb602SLionel Sambuc.Dd January 2, 2012
372fe8fb19SBen Gras.Dt EXIT 3
382fe8fb19SBen Gras.Os
392fe8fb19SBen Gras.Sh NAME
402fe8fb19SBen Gras.Nm exit
412fe8fb19SBen Gras.Nd perform normal program termination
422fe8fb19SBen Gras.Sh LIBRARY
432fe8fb19SBen Gras.Lb libc
442fe8fb19SBen Gras.Sh SYNOPSIS
452fe8fb19SBen Gras.In stdlib.h
462fe8fb19SBen Gras.Ft void
472fe8fb19SBen Gras.Fn exit "int status"
482fe8fb19SBen Gras.Sh DESCRIPTION
492fe8fb19SBen Gras.Fn exit
502fe8fb19SBen Grasterminates a process.
512fe8fb19SBen GrasThe
522fe8fb19SBen Gras.Fa status
532fe8fb19SBen Grasvalues
542fe8fb19SBen Gras.Dv EXIT_SUCCESS
552fe8fb19SBen Grasand
562fe8fb19SBen Gras.Dv EXIT_FAILURE
572fe8fb19SBen Grascan be used to indicate successful and unsuccessful
582fe8fb19SBen Grastermination, respectively.
592fe8fb19SBen Gras.Pp
602fe8fb19SBen GrasBefore termination it performs the following functions in the
612fe8fb19SBen Grasorder listed:
622fe8fb19SBen Gras.Bl -enum -offset indent
632fe8fb19SBen Gras.It
642fe8fb19SBen GrasCall the functions registered with the
652fe8fb19SBen Gras.Xr atexit 3
662fe8fb19SBen Grasfunction, in the reverse order of their registration.
672fe8fb19SBen Gras.It
682fe8fb19SBen GrasFlush all open output streams.
692fe8fb19SBen Gras.It
702fe8fb19SBen GrasClose all open streams.
712fe8fb19SBen Gras.It
722fe8fb19SBen GrasUnlink all files created with the
732fe8fb19SBen Gras.Xr tmpfile 3
742fe8fb19SBen Grasfunction.
752fe8fb19SBen Gras.El
762fe8fb19SBen Gras.Pp
772fe8fb19SBen GrasFollowing this,
782fe8fb19SBen Gras.Fn exit
792fe8fb19SBen Grascalls
802fe8fb19SBen Gras.Xr _exit 2 .
81f14fb602SLionel Sambuc.Sh RESTRICTIONS
82f14fb602SLionel SambucStandard C guarantees only that the values zero,
83f14fb602SLionel Sambuc.Dv EXIT_SUCCESS ,
84f14fb602SLionel Sambucand
85f14fb602SLionel Sambuc.Dv EXIT_FAILURE
86f14fb602SLionel Sambucproduce meaningful results.
87f14fb602SLionel SambucPOSIX extends this to guarantee that the
88f14fb602SLionel Sambucleast significant 8 bits of
892fe8fb19SBen Gras.Fa status
90f14fb602SLionel Sambucare preserved and returned to the parent via
91f14fb602SLionel Sambuc.Xr wait 2 .
92f14fb602SLionel SambucValues outside the supported range 0-255 are bitwise-truncated; therefore,
93f14fb602SLionel Sambucnegative values should not be used.
942fe8fb19SBen Gras.Sh RETURN VALUES
952fe8fb19SBen GrasThe
962fe8fb19SBen Gras.Fn exit
972fe8fb19SBen Grasfunction
982fe8fb19SBen Grasnever returns.
992fe8fb19SBen Gras.Sh SEE ALSO
1002fe8fb19SBen Gras.Xr _exit 2 ,
101*84d9c625SLionel Sambuc.Xr at_quick_exit 3 ,
1022fe8fb19SBen Gras.Xr atexit 3 ,
1032fe8fb19SBen Gras.Xr intro 3 ,
104*84d9c625SLionel Sambuc.Xr quick_exit 3 ,
1052fe8fb19SBen Gras.Xr tmpfile 3
1062fe8fb19SBen Gras.Sh STANDARDS
1072fe8fb19SBen GrasThe
1082fe8fb19SBen Gras.Fn exit
1092fe8fb19SBen Grasfunction
1102fe8fb19SBen Grasconforms to
1112fe8fb19SBen Gras.St -ansiC .
112