Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Indent the rest of the code (examples, buildtools, doc...) except for examples/SMPI...
[simgrid.git] / tools / tesh2 / src / xsignal.c
index 3b0755c..28e8f31 100644 (file)
-/* $Id: signal.c 3483 2007-05-07 11:18:56Z mquinson $ */\r
-\r
-/* signal -- what TESH needs to know about signals                          */\r
-\r
-/* Copyright (c) 2007 Martin Quinson.                                       */\r
-/* All rights reserved.                                                     */\r
-\r
+/* $Id: signal.c 3483 2007-05-07 11:18:56Z mquinson $ */  \r
+    \r
+/* signal -- what TESH needs to know about signals                          */ \r
+    \r
+/* Copyright (c) 2007 Martin Quinson.                                       */ \r
+/* All rights reserved.                                                     */ \r
+    \r
 /* This program is free software; you can redistribute it and/or modify it\r
- * under the terms of the license (GNU LGPL) which comes with this package. */\r
-\r
+ * under the terms of the license (GNU LGPL) which comes with this package. */ \r
+    \r
 #include <xsignal.h>\r
-\r
+    \r
 #ifdef _XBT_WIN32\r
-int\r
-is_an_unhandled_exception(DWORD exit_code);\r
-\r
-typedef struct s_exception_entry\r
-{\r
-       DWORD value;\r
-       const char* signal;\r
-}s_exception_entry_t,* exception_entry_t;\r
-   \r
-static const s_exception_entry_t exceptions[] =\r
-{\r
-       {EXCEPTION_ACCESS_VIOLATION, "SIGSEGV"},\r
-       {EXCEPTION_ARRAY_BOUNDS_EXCEEDED, "SIGSEGV"},\r
-       {EXCEPTION_BREAKPOINT, "SIGTRAP"},\r
-       {EXCEPTION_DATATYPE_MISALIGNMENT, "SIGBUS"},\r
-       {EXCEPTION_FLT_DENORMAL_OPERAND, "SIGFPE"},\r
-       {EXCEPTION_FLT_DIVIDE_BY_ZERO, "SIGFPE"},\r
-       {EXCEPTION_FLT_INEXACT_RESULT, "SIGFPE"},\r
-       {EXCEPTION_FLT_INVALID_OPERATION, "SIGFPE"},\r
-       {EXCEPTION_FLT_OVERFLOW, "SIGFPE"},\r
-       {EXCEPTION_FLT_STACK_CHECK, "SIGFPE"},\r
-       {EXCEPTION_FLT_UNDERFLOW, "SIGFPE"},\r
-       {EXCEPTION_ILLEGAL_INSTRUCTION, "SIGILL"},\r
-       {EXCEPTION_IN_PAGE_ERROR, "SIGSEGV"},\r
-       {EXCEPTION_INT_DIVIDE_BY_ZERO, "SIGFPE"},\r
-       {EXCEPTION_INT_OVERFLOW, "SIGFPE"},\r
-       {EXCEPTION_STACK_OVERFLOW, "SIGILL"},\r
-       {EXCEPTION_SINGLE_STEP, "SIGTRAP"},\r
-       {EXCEPTION_NONCONTINUABLE_EXCEPTION, "SIGILL"},\r
-       {EXCEPTION_PRIV_INSTRUCTION, "SIGILL"}\r
-};\r
-/* number of the entries in the table of exceptions */\r
+int \r is_an_unhandled_exception(DWORD exit_code);
+\r\rtypedef struct s_exception_entry \r {
+  \rDWORD value;
+  \rconst char *signal;
+\r} s_exception_entry_t, *exception_entry_t;
+\r\rstatic const s_exception_entry_t exceptions[] = \r
+    { \r
+{EXCEPTION_ACCESS_VIOLATION, "SIGSEGV"}, \r
+{EXCEPTION_ARRAY_BOUNDS_EXCEEDED, "SIGSEGV"}, \r
+{EXCEPTION_BREAKPOINT, "SIGTRAP"}, \r
+{EXCEPTION_DATATYPE_MISALIGNMENT, "SIGBUS"}, \r
+{EXCEPTION_FLT_DENORMAL_OPERAND, "SIGFPE"}, \r
+{EXCEPTION_FLT_DIVIDE_BY_ZERO, "SIGFPE"}, \r
+{EXCEPTION_FLT_INEXACT_RESULT, "SIGFPE"}, \r
+{EXCEPTION_FLT_INVALID_OPERATION, "SIGFPE"}, \r
+{EXCEPTION_FLT_OVERFLOW, "SIGFPE"}, \r
+{EXCEPTION_FLT_STACK_CHECK, "SIGFPE"}, \r
+{EXCEPTION_FLT_UNDERFLOW, "SIGFPE"}, \r
+{EXCEPTION_ILLEGAL_INSTRUCTION, "SIGILL"}, \r
+{EXCEPTION_IN_PAGE_ERROR, "SIGSEGV"}, \r
+{EXCEPTION_INT_DIVIDE_BY_ZERO, "SIGFPE"}, \r
+{EXCEPTION_INT_OVERFLOW, "SIGFPE"}, \r
+{EXCEPTION_STACK_OVERFLOW, "SIGILL"}, \r
+{EXCEPTION_SINGLE_STEP, "SIGTRAP"}, \r
+{EXCEPTION_NONCONTINUABLE_EXCEPTION, "SIGILL"}, \r{EXCEPTION_PRIV_INSTRUCTION, "SIGILL"} \r
+};
+
+\r
+/* number of the entries in the table of exceptions */ \r
 #define MAX_EXECPTION                  ((unsigned int)19)\r
-\r
-#endif\r
-\r
-typedef struct s_signal_entry {\r
-  const char* name;\r
-  int number;\r
-} s_signal_entry_t,* signal_entry_t;\r
-\r
-static const s_signal_entry_t signals[] = {\r
-       {"SIGHUP"       ,SIGHUP},\r
-       {"SIGINT"       ,SIGINT},\r
-       {"SIGQUIT"      ,SIGQUIT},\r
-       {"SIGILL"       ,SIGILL},\r
-       {"SIGTRAP"      ,SIGTRAP},\r
-       {"SIGABRT"      ,SIGABRT},\r
-       {"SIGFPE"       ,SIGFPE},\r
-       {"SIGKILL"      ,SIGKILL},\r
-       {"SIGBUS"       ,SIGBUS},\r
-       {"SIGSEGV"      ,SIGSEGV},\r
-       {"SIGSYS"       ,SIGSYS},\r
-       {"SIGPIPE"      ,SIGPIPE},\r
-       {"SIGALRM"      ,SIGALRM},\r
-       {"SIGTERM"      ,SIGTERM},\r
-       {"SIGURG"       ,SIGURG},\r
-       {"SIGSTOP"      ,SIGSTOP},\r
-       {"SIGTSTP"      ,SIGTSTP},\r
-       {"SIGCONT"      ,SIGCONT},\r
-       {"SIGCHLD"      ,SIGCHLD},\r
-       {"SIGTTIN"      ,SIGTTIN},\r
-       {"SIGTTOU"      ,SIGTTOU},\r
-       {"SIGIO"        ,SIGIO},\r
-       {"SIGXCPU"      ,SIGXCPU},\r
-       {"SIGXFSZ"      ,SIGXFSZ},\r
-       {"SIGVTALRM",SIGVTALRM},\r
-       {"SIGPROF"      ,SIGPROF},\r
-       {"SIGWINCH"     ,SIGWINCH},\r
-       {"SIGUSR1"      ,SIGUSR1},\r
-       {"SIGUSR2"      ,SIGUSR2},\r
-       {"SIG UNKNOWN"  ,-1}\r
-};\r
-\r
+    \r
+#endif  /* \r */
+    \rtypedef struct s_signal_entry {
+  \rconst char *name;
+  \r int number;
+\r} s_signal_entry_t, *signal_entry_t;
+\r\rstatic const s_signal_entry_t signals[] = { \r
+      {"SIGHUP", SIGHUP}, \r
+    {"SIGINT", SIGINT}, \r
+    {"SIGQUIT", SIGQUIT}, \r
+    {"SIGILL", SIGILL}, \r
+    {"SIGTRAP", SIGTRAP}, \r
+    {"SIGABRT", SIGABRT}, \r
+    {"SIGFPE", SIGFPE}, \r
+    {"SIGKILL", SIGKILL}, \r
+    {"SIGBUS", SIGBUS}, \r
+    {"SIGSEGV", SIGSEGV}, \r
+    {"SIGSYS", SIGSYS}, \r
+    {"SIGPIPE", SIGPIPE}, \r
+    {"SIGALRM", SIGALRM}, \r
+    {"SIGTERM", SIGTERM}, \r
+    {"SIGURG", SIGURG}, \r
+    {"SIGSTOP", SIGSTOP}, \r
+    {"SIGTSTP", SIGTSTP}, \r
+    {"SIGCONT", SIGCONT}, \r
+    {"SIGCHLD", SIGCHLD}, \r
+    {"SIGTTIN", SIGTTIN}, \r
+    {"SIGTTOU", SIGTTOU}, \r
+    {"SIGIO", SIGIO}, \r
+    {"SIGXCPU", SIGXCPU}, \r
+    {"SIGXFSZ", SIGXFSZ}, \r
+    {"SIGVTALRM", SIGVTALRM}, \r
+    {"SIGPROF", SIGPROF}, \r
+    {"SIGWINCH", SIGWINCH}, \r
+    {"SIGUSR1", SIGUSR1}, \r{"SIGUSR2", SIGUSR2}, \r{"SIG UNKNOWN", -1} \r
+};
+
+\r\r
 #ifdef _XBT_WIN32\r
-const char* signal_name(DWORD got, const char* expected) \r
-#else\r
-const char* signal_name(unsigned int got, char *expected) \r
-#endif\r
-{\r
-       int i;\r
-       \r
-       #ifdef _XBT_WIN32\r
-\r
-       for (i=0; i < MAX_EXECPTION; i++)\r
-               if (exceptions[i].value == got)\r
-                       return (exceptions[i].signal);\r
-       #else\r
-       if((got == SIGBUS) && !strcmp("SIGSEGV",expected))\r
-               got = SIGSEGV;\r
-\r
-       for (i=0; signals[i].number != -1; i++)\r
-               if (signals[i].number == got)\r
-                       return (signals[i].name);\r
-       \r
-       #endif\r
-       return bprintf("SIG UNKNOWN (%d)", got);\r
-}\r
-\r
-int\r
-sig_exists(const char* sig_name)\r
-{\r
-       int i;\r
-\r
-       for (i=0; signals[i].number != -1; i++)\r
-               if (!strcmp(signals[i].name, sig_name))\r
-                       return 1; \r
-\r
-       /* not found */\r
-       return 0;\r
-}\r
-\r
-\r
+const char *signal_name(DWORD got, const char *expected) \r
+#else   /* \r */
+const char *signal_name(unsigned int got, char *expected) \r
+#endif  /* \r */
+{
+  \rint i;
+  \r\r
 #ifdef _XBT_WIN32\r
-int\r
-is_an_unhandled_exception(DWORD exit_code)\r
-{\r
-       unsigned int i;\r
-\r
-       for(i = 0; i < MAX_EXECPTION; i++)\r
-               if(exceptions[i].value == exit_code)\r
-                       return 1;\r
-       \r
-       return 0;       \r
-}\r
-#endif\r
+      \rfor (i = 0; i < MAX_EXECPTION; i++)
+    \rif (exceptions[i].value == got)
+      \rreturn (exceptions[i].signal);
+  \r
+#else   /* \r */
+      if ((got == SIGBUS) && !strcmp("SIGSEGV", expected))
+    \rgot = SIGSEGV;
+  \r\rfor (i = 0; signals[i].number != -1; i++)
+    \rif (signals[i].number == got)
+      \rreturn (signals[i].name);
+  \r\r
+#endif  /* \r */
+      return bprintf("SIG UNKNOWN (%d)", got);
+\r}
+
+\r\rint \r sig_exists(const char *sig_name) \r
+{
+  \rint i;
+  \r\rfor (i = 0; signals[i].number != -1; i++)
+    \rif (!strcmp(signals[i].name, sig_name))
+      \rreturn 1;
+  \r\r
+      /* not found */ \r
+      return 0;
+\r}
+
+\r\r\r
+#ifdef _XBT_WIN32\r
+int \r is_an_unhandled_exception(DWORD exit_code) \r
+{
+  \runsigned int i;
+  \r\rfor (i = 0; i < MAX_EXECPTION; i++)
+    \rif (exceptions[i].value == exit_code)
+      \rreturn 1;
+  \r\rreturn 0;
+\r}
+
+\r
+#endif  /* \r */