#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include <err.h>
#include "../lpi.h"                 // for getSigname()
                                    // implemented in ../defs.c

void handler(int signo);
void abort1(void);

int
main(int argc, char *argv[])
{
    if (signal(SIGABRT, handler) == SIG_ERR)
        err(EXIT_FAILURE, "signal");

    abort1();
    exit(EXIT_SUCCESS);
}

void
handler(int signo)
{
    printf("signal %s caugth\n", getSigname(signo));
}

void
abort1(void)
{
    raise(SIGABRT);
    signal(SIGABRT, SIG_DFL);
    raise(SIGABRT);
}
