diff --git a/src/sbbs3/sbbscon.c b/src/sbbs3/sbbscon.c
index 03aea3a1081b4b9d52e29b61b569e57b9cd7685b..3e7227ef01e6dd9161cfaef394e2c85d1aa9d09a 100644
--- a/src/sbbs3/sbbscon.c
+++ b/src/sbbs3/sbbscon.c
@@ -109,11 +109,9 @@ static void lputs(char *str)
 }
 
 #ifdef __unix__
-
 /**********************************************************
 * Change uid of the calling process to the user if specified
 * **********************************************************/
-
 BOOL do_setuid() 
 {
 	uid_t new_uid;
@@ -122,12 +120,14 @@ BOOL do_setuid()
 	if(new_uid_name==NULL)	/* unspecified */
 		return TRUE;
 	if((pw_entry=getpwnam(new_uid_name)) && (new_uid=pw_entry->pw_uid))
-		if(!setuid(new_uid)) 
+		if(!setuid(new_uid)) {
+			lputs("setuid SUCCESSFUL");
 			return TRUE;
+		}
 
+	lputs("!setuid FAILED");
 	return FALSE;
 }
-
 #endif   /* __unix__ */
 
 static void thread_up(BOOL up)
@@ -588,18 +588,7 @@ int main(int argc, char** argv)
 		}
 	}
 
-	_beginthread((void(*)(void*))bbs_thread,0,&bbs_startup);
-	_beginthread((void(*)(void*))ftp_server,0,&ftp_startup);
-	_beginthread((void(*)(void*))mail_server,0,&mail_startup);
-	_beginthread((void(*)(void*))services_thread,0,&services_startup);
-
 #ifdef __unix__
-	// Set up QUIT-type signals so they clean up properly.
-	signal(SIGHUP, _sighandler_quit);
-	signal(SIGINT, _sighandler_quit);
-	signal(SIGQUIT, _sighandler_quit);
-	signal(SIGABRT, _sighandler_quit);
-	signal(SIGTERM, _sighandler_quit);
 
 	if(getuid())  /*  are we running as a normal user?  */
 		fprintf(stderr,
@@ -616,7 +605,22 @@ int main(int argc, char** argv)
 	
 	else
 		printf("*** Successfully changed to user %s.\n", new_uid_name);
-	
+
+#endif
+
+	_beginthread((void(*)(void*))bbs_thread,0,&bbs_startup);
+	_beginthread((void(*)(void*))ftp_server,0,&ftp_startup);
+	_beginthread((void(*)(void*))mail_server,0,&mail_startup);
+	_beginthread((void(*)(void*))services_thread,0,&services_startup);
+
+#ifdef __unix__
+	// Set up QUIT-type signals so they clean up properly.
+	signal(SIGHUP, _sighandler_quit);
+	signal(SIGINT, _sighandler_quit);
+	signal(SIGQUIT, _sighandler_quit);
+	signal(SIGABRT, _sighandler_quit);
+	signal(SIGTERM, _sighandler_quit);
+
 	if(!isatty(fileno(stdin)))			/* redirected */
 		select(0,NULL,NULL,NULL,NULL);	/* so wait here until signaled */
 	else								/* interactive */