Switching to developers list. On 7 Jan 2014, at 13:13, Phil Mayers <p.mayers@IMPERIAL.AC.UK> wrote:
I wonder if stealing the "panic action" code from Samba to automatically fire up GDB would have value? It could be off by default, of course.
The code can be found in samba/ctdb/lib/util/fault.c in the git://git.samba.org/samba.git repo. They setup a signal handler for SIGSEGV, SIGBUS, SIGABRT, and SIGFPE, which calls fault_report(), printing an error message with the signal, binary name and PID. Then then call smb_panic which mangles the panic_action string a bit and then calls system(). It's pretty simple. You should just be able to call GDB to attach to the still running process and figure out what went wrong. Does anyone have any objections to something similar being implemented for FreeRADIUS? It should have big warnings around the panic command config item. WARNING: This may stop the server restarting in the event of a fault. WARNING: DO NOT USE ON PRODUCTION SERVERS! -Arran Arran Cudbard-Bell <a.cudbardb@freeradius.org> FreeRADIUS Development Team FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2