--- freem/src/mumps.c	2025/03/09 19:50:47	1.4
+++ freem/src/mumps.c	2025/03/31 20:01:13	1.9
@@ -1,5 +1,5 @@
 /*
- *   $Id: mumps.c,v 1.4 2025/03/09 19:50:47 snw Exp $
+ *   $Id: mumps.c,v 1.9 2025/03/31 20:01:13 snw Exp $
  *    main module of freem
  *
  *  
@@ -24,6 +24,21 @@
  *   along with FreeM.  If not, see <https://www.gnu.org/licenses/>.
  *
  *   $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
+ *
+ *   Revision 1.6  2025/03/24 16:04:49  snw
+ *   Force daemon into foreground on OS/2
+ *
+ *   Revision 1.5  2025/03/22 21:44:32  snw
+ *   Make the startup messages fewer and add environment name to direct-mode prompt
+ *
  *   Revision 1.4  2025/03/09 19:50:47  snw
  *   Second phase of REUSE compliance and header reformat
  *
@@ -438,6 +453,14 @@ int main (int argc, char **argv, char **
         }
     }
 #endif
+
+#if defined(__OS2__)
+    if (run_daemon == TRUE && nofork == FALSE) {
+        printf ("freem:  running on OS/2; daemon must be run with --nofork or -k\r\n");
+        exit (1);
+    }
+#endif
+    
     snprintf (config_file, 4096, "%s/freem/%s/freem.conf", SYSCONFDIR, shm_env);
     
     if (run_daemon == TRUE && geteuid() == 0) {
@@ -463,6 +486,9 @@ int main (int argc, char **argv, char **
             
             d_uid = d_user->pw_uid;
         }
+        else {
+            d_uid = 0;
+        }
         
     }
     
@@ -884,10 +910,11 @@ int main (int argc, char **argv, char **
 	snprintf (version, 255, "Copyright (C) 2014, 2020, 2021, 2023, 2025 Coherent Logic Development LLC\r\n\r\n\201");
 	write_m (version);
 
+        /*
         printf ("Environment:       \t%s\r\n", shm_env);
         printf ("Environment Daemon:\tPID %d\r\n", shm_config->hdr->first_process);
         printf ("Interpreter Process:\tPID %d\r\n", pid);
-        
+        */
 
     }
     else {