--- freem/src/mumps.c 2025/03/24 16:07:55 1.7 +++ freem/src/mumps.c 2025/03/31 20:01:13 1.9 @@ -1,5 +1,5 @@ /* - * $Id: mumps.c,v 1.7 2025/03/24 16:07:55 snw Exp $ + * $Id: mumps.c,v 1.9 2025/03/31 20:01:13 snw Exp $ * main module of freem * * @@ -24,6 +24,12 @@ * along with FreeM. If not, see . * * $Log: mumps.c,v $ + * Revision 1.9 2025/03/31 20:01:13 snw + * Set d_uid in daemon + * + * Revision 1.8 2025/03/24 16:10:48 snw + * Print error message and exit on OS/2 if daemon is run without --nofork + * * Revision 1.7 2025/03/24 16:07:55 snw * Force daemon into foreground on OS/2 * @@ -450,8 +456,8 @@ int main (int argc, char **argv, char ** #if defined(__OS2__) if (run_daemon == TRUE && nofork == FALSE) { - printf ("freem: running on OS/2; forcing daemon into foreground\r\n"); - nofork = TRUE; + printf ("freem: running on OS/2; daemon must be run with --nofork or -k\r\n"); + exit (1); } #endif @@ -480,6 +486,9 @@ int main (int argc, char **argv, char ** d_uid = d_user->pw_uid; } + else { + d_uid = 0; + } } @@ -779,10 +788,6 @@ int main (int argc, char **argv, char ** fprintf (stderr, "Coherent Logic Development FreeM version %s\r\n", verstr); fprintf (stderr, "freem: shared memory for environment %s initialized (%ld bytes of shared memory @ '%p')\r\nfreem: system ready\r\n", shm_env, (long) shm_init_size, shm_config->dta); - -#if defined(__OS2__) - fprintf (stderr, "freem: running on OS/2; daemon was forced into the foreground if not explicitly run with --nofork\r\n"); -#endif for (;;) {