The catch and ignore Commands

DBX mode

signal_command

        : catch_command

        | ignore_command

 

catch_command

        : catch [ signal_id ]

 

ignore_command

        : ignore [ signal_id ]

A catch command with an operand specifies that the debugger should catch and handle the given signal. You can specify the signal by integer number or by standard signal name, with or without the leading "SIG". The catch command is equivalent to the breakpoint command

(idb) catch ILL

or

(idb) stop signal SIGILL

[#1: stop signal SIGILL]

with these exceptions:

An ignore command with an operand specifies that the given signal should not be caught or handled by the debugger; rather, such a signal is passed to your program. The ignore command is equivalent to deleting the breakpoint created by a catch command for that signal:

(idb) ignore SIGILL

A catch command without an operand lists all signals that are currently being handled. Similarly, an ignore command without an operand lists the signals that are currently being ignored. Together, the two lists show all signals known to the debugger.

You can issue these commands immediately after the debugger starts to show which signals are caught and which are ignored by default: 

(idb) catch

INT, ILL, ABRT, FPE, SEGV, TERM, QUIT, TRAP, BUS, SYS, PIPE, URG, STOP, TTIN, TTOU, XCPU, XFSZ, PROF, USR1, USR2, VTALRM

(idb) ignore

RTMIN, RTMIN1, RTMIN2, RTMIN3, RTMIN4, RTMIN5, RTMIN6, RTMIN7, RTMAX, RTMAX7, RTMAX6, RTMAX5, RTMAX4, RTMAX3, RTMAX2, RTMAX1, HUP, KILL, ALRM, TSTP, CONT, CHLD, WINCH, POLL