NAME
abort2 — abort process with diagnosticsLIBRARY
Standard C Library (libc, -lc)SYNOPSIS
#include <stdlib.h> voidabort2(const char *why, int nargs, void **args);
DESCRIPTION
The abort2() system call causes the process to be killed and the specified diagnostic message (with arguments) to be delivered by the kernel to the syslogd(8) daemon. The why argument points to aNUL-
terminated string specifying a reason
of the program's termination (maximum 128 characters long). The
args array contains pointers which will be
logged numerically (with the kernel's
‘%p
’
printf(9) format). The
nargs argument specifies the number of
pointers in args (maximum 16).
The abort2() system call is intended for use in
situations where continuation of a process is impossible or for other
definitive reasons is unwanted, and normal diagnostic channels cannot be
trusted to deliver the message.
RETURN VALUES
The abort2() function never returns. The process is killed withSIGABRT
unless the
arguments to abort2() are invalid, in which case
SIGKILL
is used.
EXAMPLES
#include <stdlib.h> if (weight_kg > max_load) { void *ptrs[3]; ptrs[0] = (void *)(intptr_t)weight_kg; ptrs[1] = (void *)(intptr_t)max_load; ptrs[2] = haystack; abort2("Camel overloaded", 3, ptrs); }
SEE ALSO
abort(3), exit(3)HISTORY
The abort2() system call first appeared in FreeBSD 7.0.AUTHORS
The abort2() system call was designed by Poul-Henning Kamp <[email protected]>. It was implemented by Wojciech A. Koszek <[email protected]>.September 30, 2006 | Debian |