# 2.11BSD#431 - /usr/src/lib/libc/gen/abort.c

##### Functions

    abort             X

       1: /*
       2:  * Copyright (c) 1985, 1993
       3:  *	The Regents of the University of California.  All rights reserved.
       4:  *
       5:  * Redistribution and use in source and binary forms, with or without
       6:  * modification, are permitted provided that the following conditions
       7:  * are met:
       8:  * 1. Redistributions of source code must retain the above copyright
       9:  *    notice, this list of conditions and the following disclaimer.
      10:  * 2. Redistributions in binary form must reproduce the above copyright
      11:  *    notice, this list of conditions and the following disclaimer in the
      12:  *    documentation and/or other materials provided with the distribution.
      13:  * 3. All advertising materials mentioning features or use of this software
      14:  *    must display the following acknowledgement:
      15:  *	This product includes software developed by the University of
      16:  *	California, Berkeley and its contributors.
      17:  * 4. Neither the name of the University nor the names of its contributors
      18:  *    may be used to endorse or promote products derived from this software
      19:  *    without specific prior written permission.
      20:  *
      21:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
      22:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
      23:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
      24:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
      25:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
      26:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
      27:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
      28:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
      29:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
      30:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
      31:  * SUCH DAMAGE.
      32:  */
      33:
      34: #if defined(LIBC_SCCS) && !defined(lint)
      35: static char sccsid[] = "@(#)abort.c	8.1.1 (2.11BSD) 1997/9/9";
      36: #endif /* LIBC_SCCS and not lint */
      37:
      38: #include <signal.h>
      39: #include <stdlib.h>
      40: #include <unistd.h>
      41:
      42: void
      43: abort()
      44: {
      45:     sigset_t mask;
      46:
      47:     sigfillset(&mask);
      48:     /*
      49: 	 * don't block SIGABRT to give any handler a chance; we ignore
      50: 	 * any errors -- X311J doesn't allow abort to return anyway.
      51: 	 */
      52:     sigdelset(&mask, SIGABRT);
      53:     (void)sigprocmask(SIG_SETMASK, &mask, (sigset_t *)NULL);
      54:     (void)kill(getpid(), SIGABRT);
      55:
      56:     /*
      57: 	 * if SIGABRT ignored, or caught and the handler returns, do
      58: 	 * it again, only harder.
      59: 	 */
      60:     (void)signal(SIGABRT, SIG_DFL);
      61:     (void)sigprocmask(SIG_SETMASK, &mask, (sigset_t *)NULL);
      62:     (void)kill(getpid(), SIGABRT);
      63:     exit(1);
      64: }

#### Defined functions

abort defined in line 42; used 114 times

- in /usr/include/stdlib.h line 69
- in /usr/src/bin/csh/alloc.c line 87
- in /usr/src/bin/csh/alloc11.c line 12
- in /usr/src/bin/csh/printf.c line 29
- in /usr/src/bin/csh/sh.dir.c line 335
- in /usr/src/bin/csh/sh.glob.c line 572
- in /usr/src/bin/csh/sh.misc.c line 92
- in /usr/src/bin/sh/blok.c line 103, 109-112(2)
- in /usr/src/bin/tcsh/alloc11.c line 36
- in /usr/src/bin/tcsh/ed.refresh.c line 128
- in /usr/src/bin/tcsh/sh.dir.c line 718-720(2), 730
- in /usr/src/bin/tcsh/sh.glob.c line 596
- in /usr/src/bin/tcsh/sh.types.h line 89, 139
- in /usr/src/bin/tcsh/tc.alloc.c line 151, 197
- in /usr/src/bin/tcsh/tc.os.h line 297-300(2)
- in /usr/src/bin/tcsh/tc.sig.c line 396
- in /usr/src/games/hack/hack.pri.c line 46
- in /usr/src/games/hunt/execute.c line 486
- in /usr/src/games/hunt/hunt.c line 509
- in /usr/src/games/hunt/shots.c line 732
- in /usr/src/games/quiz/quiz.c line 448
- in /usr/src/games/sail/main.c line 78
- in /usr/src/games/sail/sync.c line 107
- in /usr/src/games/warp/move.c line 85
- in /usr/src/games/warp/sig.c line 108, 169
- in /usr/src/games/worms.c line 332
- in /usr/src/lib/c2/c21.c line 739-741(2)
- in /usr/src/lib/libc/gen/malloc.c line 34
- in /usr/src/libexec/ctimed/ctimed.c line 178
- in /usr/src/local/zmodem/sz.c line 339
- in /usr/src/new/PORT/B/src/bed/main.c line 217
- in /usr/src/new/PORT/B/src/bed/node.h line 23
- in /usr/src/new/PORT/B/src/bed/vtrm.c line 355
- in /usr/src/new/PORT/perl.1.0.0/malloc.c line 90
- in /usr/src/new/PORT/perl.1.0.10/malloc.c line 102
- in /usr/src/new/PORT/perl.1.0.16/malloc.c line 102
- in /usr/src/new/jove/jove.c line 154
- in /usr/src/new/kermit5.188/ckcmdb.c line 192, 310-313(2)
- in /usr/src/new/kermit5.188/cku2tm.c line 178
- in /usr/src/new/kermit5.188/ckustr.c line 403
- in /usr/src/new/nntp/xmit/get_tcp_conn.c line 209
- in /usr/src/new/notes/src/misc.c line 251
- in /usr/src/new/notes/src/nfabort.c line 50
- in /usr/src/new/pathalias/arpatxt.c line 228, 272, 282, 314, 533
- in /usr/src/new/pathalias/main.c line 183
- in /usr/src/new/rn/final.c line 74, 152
- in /usr/src/old/dump/dumpmain.c line 213
- in /usr/src/old/dump/dumpoptr.c line 27
- in /usr/src/sbin/dump/dumpmain.c line 365
- in /usr/src/sbin/dump/dumpoptr.c line 31
- in /usr/src/sbin/fsck/utilities.c line 554
- in /usr/src/ucb/Mail/aux.c line 75
- in /usr/src/ucb/Mail/cmd2.c line 372
- in /usr/src/ucb/PORT/pascal/eyacc/ey5.c line 53
- in /usr/src/ucb/PORT/pascal/src/error.c line 35-38(2)
- in /usr/src/ucb/pascal/eyacc/ey5.c line 44
- in /usr/src/ucb/pascal/pi/error.c line 34-37(2)
- in /usr/src/ucb/tn3270/datastream.c line 543, 562
- in /usr/src/ucb/window/scanner.c line 488
- in /usr/src/ucb/window/string.c line 119
- in /usr/src/usr.bin/dc/dc.c line 1818
- in /usr/src/usr.bin/diff3/diff3.c line 412
- in /usr/src/usr.bin/f77/driver.c line 959
- in /usr/src/usr.bin/f77/error.c line 53, 109
- in /usr/src/usr.bin/f77/malloc.c line 6
- in /usr/src/usr.bin/patch/malloc.c line 97, 278
- in /usr/src/usr.bin/patch/patch.c line 562
- in /usr/src/usr.bin/struct/def.h line 3
- in /usr/src/usr.lib/lib2648/newmat.c line 28
- in /usr/src/usr.lib/libI77/f77_abort.c line 65
- in /usr/src/usr.lib/libmp/util.c line 44
- in /usr/src/usr.lib/libstubs/stubs.c line 252
- in /usr/src/usr.lib/libvmf/vmf.c line 371
- in /usr/src/usr.sbin/named/named/storage.c line 62, 97, 104
- in /usr/src/usr.sbin/named/tools/nslookup/subr.c line 156
- in /usr/src/usr.sbin/ntp/ntp_adjust.c line 281
- in /usr/src/usr.sbin/ntp/ntp_proto.c line 492, 500, 533
- in /usr/src/usr.sbin/ntp/ntpd.c line 377, 555, 563, 569, 600, 666, 851, 965
- in /usr/src/usr.sbin/sendmail.MX/src/main.c line 129
- in /usr/src/usr.sbin/sendmail.MX/src/util.c line 150
- in /usr/src/usr.sbin/sendmail/src/main.c line 128
- in /usr/src/usr.sbin/sendmail/src/util.c line 150

#### Defined variables

sccsid defined in line 35; never used

Last modified: 1997-09-10 Generated: 2016-12-26 | Generated by src2html V0.67 page hit count: 603 |