written by Mike Frysinger https://sourceforge.net/tracker/?func=detail&aid=3132053&group_id=5616&atid=305616 Rather than using the fork function (which doesnt work on nommu systems), simply use the daemon() function instead (which does work). this should work the same before and after for all systems. --- a/irattach/util.c +++ b/irattach/util.c @@ -156,21 +156,10 @@ void fork_now(int ttyfd) { - int ret; int i; - if ((ret = fork()) > 0) - exit(0); - - if (ret == -1) - syslog(LOG_INFO, "forking: %m"); - if (setsid() < 0) - syslog(LOG_INFO, "detaching from tty: %m"); - - if ((ret = fork()) > 0) { - /* cleanup_files = 0; */ - exit(0); - } + if (daemon(1, 1)) + syslog(LOG_INFO, "daemon: %m"); /* Close all open inherited files! Except for ttyfd! */ for (i = 0; i < 64; i++)