|
|
| version 1.10, 2025/04/10 01:24:38 | version 1.14, 2025/04/28 19:38:55 |
|---|---|
| Line 24 | Line 24 |
| * along with FreeM. If not, see <https://www.gnu.org/licenses/>. | * along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
| * | * |
| * $Log$ | * $Log$ |
| * Revision 1.14 2025/04/28 19:38:55 snw | |
| * Add trace mode | |
| * | |
| * Revision 1.13 2025/04/17 14:34:27 snw | |
| * Further logging improvements | |
| * | |
| * Revision 1.12 2025/04/16 17:36:12 snw | |
| * Add FreeBSD shm cleanup script | |
| * | |
| * Revision 1.11 2025/04/13 04:22:43 snw | |
| * Fix snprintf calls | |
| * | |
| * Revision 1.10 2025/04/10 01:24:38 snw | * Revision 1.10 2025/04/10 01:24:38 snw |
| * Remove C++ style comments | * Remove C++ style comments |
| * | * |
| Line 58 | Line 70 |
| #include <string.h> | #include <string.h> |
| #include <sys/types.h> | #include <sys/types.h> |
| #include <sys/wait.h> | #include <sys/wait.h> |
| #include <errno.h> | |
| #include "transact.h" | #include "transact.h" |
| #include "locktab.h" | #include "locktab.h" |
| #include <errno.h> | #include "log.h" |
| #ifdef LIBFREEM | #ifdef LIBFREEM |
| # include "errmsg.h" | # include "errmsg.h" |
| Line 614 short sigint_in_for = FALSE; | Line 627 short sigint_in_for = FALSE; |
| short direct_mode = TRUE; /* are we in direct mode? */ | short direct_mode = TRUE; /* are we in direct mode? */ |
| short extr_types[NESTLEVLS + 1]; /* return types of extrinsic functions */ | short extr_types[NESTLEVLS + 1]; /* return types of extrinsic functions */ |
| char destructors[MAX_DESTRUCTORS][50]; | char destructors[MAX_DESTRUCTORS][OBJ_DSTRSIZE]; |
| int destructor_ct; | int destructor_ct; |
| char private_keys[MAX_PRIVATE_KEYS][255]; | char private_keys[MAX_PRIVATE_KEYS][255]; |
| Line 646 short ipc_pending = 0; /* 1 if an inco | Line 659 short ipc_pending = 0; /* 1 if an inco |
| int strict_mode = 0; | int strict_mode = 0; |
| short first_process = FALSE; | int trace_mode = 0; |
| size_t shm_init_size = 16777216; | |
| short first_process = FALSE; | |
| #if defined(__FreeBSD__) | |
| size_t shm_init_size = 4194304; | |
| #else | |
| size_t shm_init_size = 16777216; | |
| #endif | |
| short inrpt_after_async = FALSE; | short inrpt_after_async = FALSE; |
| void unnew (void) | void unnew (void) |
| Line 731 void m_fatal(char *s) | Line 749 void m_fatal(char *s) |
| if (tp_level) { | if (tp_level) { |
| fprintf (stderr, "freem [FATAL]: memory allocation failure in %s; rolling back %d transactions [errno %d %s]\n", s, tp_level, errno_sav, strerror (errno_sav)); | /* TODO: make this FM_LOG_FATAL (logger will need to do a tp_trollback) */ |
| logprintf (FM_LOG_ERROR, "freem: memory allocation failure in %s; rolling back %d transactions (error code %d [%s])", s, tp_level, errno_sav, strerror (errno_sav)); | |
| tp_trollback (tp_level); | tp_trollback (tp_level); |
| } | } |
| else { | else { |
| fprintf (stderr, "freem [FATAL]: memory allocation failure in %s [errno %d %s]\n", s, errno_sav, strerror (errno_sav)); | logprintf (FM_LOG_FATAL, "freem: memory allocation failure in %s (error code %d [%s])", s, errno_sav, strerror (errno_sav)); |
| } | } |
| exit (3); | exit (3); |