New tool idea: Signal Handler Checker
Greetings,
I don't know if dynamorio already has this, but did you ever consider adding a signal handler checker functionality? That means it detects whether a called signal handler registered with, say,
sighandler_t signal(int signum, sighandler_t handler);
does things it shouldn't like
- If a signal handler calls c library functions that are not considered async signal safe.
- If a signal handler leaves registers/memory in an invalid state when it hands back contol to the original thread.
Of course, this is mostly a Linux thing. It would probably help tracking certain errors that are otherwise hard to find due to the non linear program flow.