… | |
… | |
1204 | exit (-1); |
1204 | exit (-1); |
1205 | } |
1205 | } |
1206 | |
1206 | |
1207 | /* Signal handlers: */ |
1207 | /* Signal handlers: */ |
1208 | |
1208 | |
1209 | void |
1209 | static void |
1210 | rec_sigabrt (int i) |
1210 | rec_sigabrt (int i) |
1211 | { |
1211 | { |
1212 | signal (SIGABRT, SIG_DFL); |
1212 | signal (SIGABRT, SIG_DFL); |
1213 | |
1213 | |
1214 | LOG (llevError, "SIGABRT received.\n"); |
1214 | LOG (llevError, "SIGABRT received.\n"); |
1215 | cleanup ("SIGABRT received", 1); |
1215 | cleanup ("SIGABRT received", 1); |
1216 | } |
1216 | } |
1217 | |
1217 | |
1218 | void |
1218 | static void |
1219 | rec_sigsegv (int i) |
1219 | rec_sigsegv (int i) |
1220 | { |
1220 | { |
1221 | signal (SIGSEGV, SIG_DFL); |
1221 | signal (SIGSEGV, SIG_DFL); |
1222 | |
1222 | |
1223 | LOG (llevError, "SIGSEGV received.\n"); |
1223 | LOG (llevError, "SIGSEGV received.\n"); |
1224 | cleanup ("SIGSEGV received", 1); |
1224 | cleanup ("SIGSEGV received", 1); |
1225 | } |
1225 | } |
1226 | |
1226 | |
1227 | void |
1227 | static void |
1228 | rec_sigquit (int i) |
1228 | rec_sigquit (int i) |
1229 | { |
1229 | { |
1230 | signal (SIGQUIT, SIG_IGN); |
1230 | signal (SIGQUIT, SIG_IGN); |
1231 | |
1231 | |
1232 | LOG (llevInfo, "SIGQUIT received\n"); |
1232 | LOG (llevInfo, "SIGQUIT received\n"); |
1233 | cleanup ("SIGQUIT received", 1); |
1233 | cleanup ("SIGQUIT received", 1); |
1234 | } |
1234 | } |
1235 | |
1235 | |
1236 | void |
1236 | static void |
1237 | rec_sigbus (int i) |
1237 | rec_sigbus (int i) |
1238 | { |
1238 | { |
1239 | signal (SIGBUS, SIG_DFL); |
1239 | signal (SIGBUS, SIG_DFL); |
1240 | |
1240 | |
1241 | LOG (llevError, "SIGBUS received\n"); |
1241 | LOG (llevError, "SIGBUS received\n"); |
1242 | cleanup ("SIGBUS received", 1); |
1242 | cleanup ("SIGBUS received", 1); |
|
|
1243 | } |
|
|
1244 | |
|
|
1245 | void |
|
|
1246 | reset_signals () |
|
|
1247 | { |
|
|
1248 | signal (SIGABRT, SIG_DFL); |
|
|
1249 | signal (SIGQUIT, SIG_DFL); |
|
|
1250 | signal (SIGSEGV, SIG_DFL); |
|
|
1251 | signal (SIGBUS , SIG_DFL); |
|
|
1252 | signal (SIGINT , SIG_DFL); |
|
|
1253 | signal (SIGTERM, SIG_DFL); |
1243 | } |
1254 | } |
1244 | |
1255 | |
1245 | void |
1256 | void |
1246 | init_signals (void) |
1257 | init_signals (void) |
1247 | { |
1258 | { |