[BACK]Return to exit.c CVS log [TXT][DIR] Up to [local] / sys / arch / zaurus / stand / zboot

Annotation of sys/arch/zaurus/stand/zboot/exit.c, Revision 1.1

1.1     ! nbrk        1: /*     $OpenBSD: exit.c,v 1.4 2005/05/24 20:38:20 uwe Exp $    */
        !             2: /*     $NetBSD: exit.c,v 1.11 1996/12/01 20:22:19 pk Exp $     */
        !             3:
        !             4: /*-
        !             5:  *  Copyright (c) 1993 John Brezak
        !             6:  *  All rights reserved.
        !             7:  *
        !             8:  *  Redistribution and use in source and binary forms, with or without
        !             9:  *  modification, are permitted provided that the following conditions
        !            10:  *  are met:
        !            11:  *  1. Redistributions of source code must retain the above copyright
        !            12:  *     notice, this list of conditions and the following disclaimer.
        !            13:  *  2. Redistributions in binary form must reproduce the above copyright
        !            14:  *     notice, this list of conditions and the following disclaimer in the
        !            15:  *     documentation and/or other materials provided with the distribution.
        !            16:  *  3. The name of the author may not be used to endorse or promote products
        !            17:  *     derived from this software without specific prior written permission.
        !            18:  *
        !            19:  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR `AS IS'' AND ANY EXPRESS OR
        !            20:  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
        !            21:  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
        !            22:  * DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
        !            23:  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
        !            24:  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
        !            25:  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
        !            26:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
        !            27:  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
        !            28:  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
        !            29:  * POSSIBILITY OF SUCH DAMAGE.
        !            30:  */
        !            31:
        !            32: #include <sys/stdarg.h>
        !            33:
        !            34: #include "libsa.h"
        !            35:
        !            36: /* unixcons.c */
        !            37: extern struct termios tioc;
        !            38: extern int            tioc_valid;
        !            39:
        !            40: __dead void
        !            41: panic(const char *fmt, ...)
        !            42: {
        !            43:        extern __dead void uexit(int);
        !            44:        extern void closeall(void);
        !            45:        va_list ap;
        !            46:        static int paniced;
        !            47:
        !            48:        if (!paniced) {
        !            49:                paniced = 1;
        !            50:                closeall();
        !            51:        }
        !            52:
        !            53:        va_start(ap, fmt);
        !            54:        vprintf(fmt, ap);
        !            55:        printf("\n");
        !            56:        va_end(ap);
        !            57: #if 0
        !            58:        _rtt();
        !            59: #else
        !            60:        uexit(0);
        !            61: #endif
        !            62:        /*NOTREACHED*/
        !            63: }
        !            64:
        !            65: void
        !            66: exit(void)
        !            67: {
        !            68:        if (tioc_valid)
        !            69:                (void)tcsetattr(0, TCSADRAIN, &tioc);
        !            70:        uexit(0);
        !            71: }

CVSweb