I have written an application where i have registered number of signal handler for different signals in linux .
After process receives the signal the control is transferred to the signal handler i had registered. In this signal handler i do some work which i need to do, and then i would like to call the default signal hander i.e SIF_DFL
or SIG_IGN
.
However, SIG_DFL
and SIG_ING
are both macros which expand to numeric values 0 and 1 respectively, which are invalid function addresses.
IS there any way i can call default actions i.e SIG_DFL
or SIG_IGN
?
In order to achieve the effect of SIG_DFL
or SIG_ING
i call exit(1) and do nothing , respectively . But for signals like SIGSEGV
i also would like to have core dump .
In general i would want to my default behavior to be same as SIG_DFL
and ignore behavior same SIG_IGN
, the way Operating system would do .