signal(2) manejo de señales en ANSI C

SINOPSIS

#include <signal.h>

typedef void (*sighandler_t)(int);

sighandler_t signal(int signum, sighandler_t handler);

DESCRIPCIÓN

La llamada al sistema signal() instala un nuevo manejador de señales para la señal con número signum. El manejador de señales queda establecido a sighandler que puede ser una función especificada por el usuario o bien SIG_IGN o SIG_DFL.

Cuando llega una señal con número signum ocurre lo siguiente. Si el manejador correspondiente está establecido a SIG_IGN, la señal es ignorada. Si el manejador está establecido a SIG_DFL, se realiza la acción por defecto asociada a la señal (vea signal(7)). Finalmente, si el manejador está establecido a una función sighandler lo primero que se hace es o bien restablecer el manejador a SIG_DFL o un bloqueo de la señal que depende de la implementación, invocando después a sighandler con el argumento signum.

Usar una función manejadora de señales para una señal se llama "atrapar la señal". Las señales