Mercurial > hg > toybox
view toys/setsid.c @ 577:2a757e592ff7
Remove strndupa() gnu-ism at Georgi's suggestion, and adjust mdev to compile with new dirtree. (No idea if it works, this command was never finished and needs a lot more work.)
author | Rob Landley <rob@landley.net> |
---|---|
date | Wed, 09 May 2012 06:39:01 -0500 |
parents | 878b94b32866 |
children |
line wrap: on
line source
/* vi: set sw=4 ts=4: * * setsid.c - Run program in a new session ID. * * Copyright 2006 Rob Landley <rob@landley.net> * * Not in SUSv4. USE_SETSID(NEWTOY(setsid, "^<1t", TOYFLAG_USR|TOYFLAG_BIN)) config SETSID bool "setsid" default y help usage: setsid [-t] command [args...] Run process in a new session. -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); }