This is the instructions to adding the signal handler snippet to a MUD based on the SocketMud(tm) code. It should be noted that the event-patch for SocketMud(tm) is required before this snippet will work. 1. Add signal.o to Makefile under O_FILES 2. Add the following line to mud.h (anywhere will do fine) void init_sigguard ( void ); 3. Add a call to init_sigguard() in the main() function, somewhere before game_loop() is called. This will initialize the sigguard. 4. Add the following line to event.h #define EVENT_GAME_SIGGUARD 2 Now simply do a clean compile of the MUD and restart it. To test the two new signal handlers, attempt to send signal 11 (SIGSEGV) and signal 15 (SIGTERM) to the MUD. Just remember to wait at least 10 seconds after the MUD has booted, to make sure the sigguard has been enabled. $ ps uax $ kill -11 [pid] $ kill -15 [pid] The first command allows you to find the pid, the next two will send the two signals. The first should force the MUD to do a copyover, the second will force the MUD to do a safe shutdown, saving all players.