Changing the tty-disconnection code to use setsid().
authorjongfoster <jongfoster@users.sourceforge.net>
Fri, 16 Nov 2001 00:47:43 +0000 (00:47 +0000)
committerjongfoster <jongfoster@users.sourceforge.net>
Fri, 16 Nov 2001 00:47:43 +0000 (00:47 +0000)
jcc.c

diff --git a/jcc.c b/jcc.c
index 8db6195..e48ef4b 100644 (file)
--- a/jcc.c
+++ b/jcc.c
@@ -1,4 +1,4 @@
-const char jcc_rcs[] = "$Id: jcc.c,v 1.55 2001/11/13 20:14:53 jongfoster Exp $";
+const char jcc_rcs[] = "$Id: jcc.c,v 1.56 2001/11/13 20:20:54 jongfoster Exp $";
 /*********************************************************************
  *
  * File        :  $Source: /cvsroot/ijbswa/current/jcc.c,v $
@@ -33,6 +33,9 @@ const char jcc_rcs[] = "$Id: jcc.c,v 1.55 2001/11/13 20:14:53 jongfoster Exp $";
  *
  * Revisions   :
  *    $Log: jcc.c,v $
+ *    Revision 1.56  2001/11/13 20:20:54  jongfoster
+ *    Tabs->spaces, fixing a bug with missing {} around an if()
+ *
  *    Revision 1.55  2001/11/13 20:14:53  jongfoster
  *    Patch for FreeBSD setpgrp() as suggested by Alexander Lazic
  *
@@ -1481,7 +1484,9 @@ int main(int argc, const char *argv[])
 #if defined(unix)
 {
    pid_t pid = 0;
+#if 0
    int   fd;
+#endif
 
    /*
     * we make us a real daemon
@@ -1512,11 +1517,15 @@ int main(int argc, const char *argv[])
       exit( 0 );
    }
    /* child */
+#if 1
+   /* Should be more portable, but not as well tested */
+   setsid();
+#else /* !1 */
 #ifdef __FreeBSD__
    setpgrp(0,0);
-#else
+#else /* ndef __FreeBSD__ */
    setpgrp();
-#endif
+#endif /* ndef __FreeBSD__ */
    fd = open("/dev/tty", O_RDONLY);
    if ( fd )
    {
@@ -1524,6 +1533,7 @@ int main(int argc, const char *argv[])
       ioctl( fd, TIOCNOTTY,0 );
       close ( fd );
    }
+#endif /* !1 */
    /* should close stderr (fd 2) here too, but the test for existence
    ** and load config file is done in listen_loop() and puts
    ** some messages on stderr there.