diff options
Diffstat (limited to 'toys/other/setsid.c')
-rw-r--r-- | toys/other/setsid.c | 29 |
1 files changed, 13 insertions, 16 deletions
diff --git a/toys/other/setsid.c b/toys/other/setsid.c index 0f08cc03..59a1d78f 100644 --- a/toys/other/setsid.c +++ b/toys/other/setsid.c @@ -1,31 +1,28 @@ -/* vi: set sw=4 ts=4: - * - * setsid.c - Run program in a new session ID. +/* setsid.c - Run program in a new session ID. * * Copyright 2006 Rob Landley <rob@landley.net> USE_SETSID(NEWTOY(setsid, "^<1t", TOYFLAG_USR|TOYFLAG_BIN)) config SETSID - bool "setsid" - default y - help - usage: setsid [-t] command [args...] + bool "setsid" + default y + help + usage: setsid [-t] command [args...] - Run process in a new session. + Run process in a new session. - -t Grab tty (become foreground process, receiving keyboard signals) + -t Grab tty (become foreground process, receiving keyboard signals) */ #include "toys.h" void setsid_main(void) { - while (setsid()<0) - if (vfork()) _exit(0); - if (toys.optflags) { - setpgid(0,0); - tcsetpgrp(0, getpid()); - } - xexec(toys.optargs); + while (setsid()<0) if (vfork()) _exit(0); + if (toys.optflags) { + setpgid(0,0); + tcsetpgrp(0, getpid()); + } + xexec(toys.optargs); } |