diff options
| author | Lennart Poettering <lennart@poettering.net> | 2004-12-14 14:20:52 +0000 | 
|---|---|---|
| committer | Lennart Poettering <lennart@poettering.net> | 2004-12-14 14:20:52 +0000 | 
| commit | bc5b917f93f39215b54593cc45228e97e14daec3 (patch) | |
| tree | 942de8d524cda452ab29c009a5ae6accfbb1756d | |
| parent | a370e6e7635d4a0b50c5c884974764c890959a48 (diff) | |
do mor daemonizing work
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@323 fefdeb5f-60dc-0310-8127-8f9354f1896f
| -rw-r--r-- | polyp/main.c | 11 | 
1 files changed, 11 insertions, 0 deletions
| diff --git a/polyp/main.c b/polyp/main.c index 43a48f6b..f033c38e 100644 --- a/polyp/main.c +++ b/polyp/main.c @@ -35,6 +35,7 @@  #include <memblock.h>  #include <limits.h>  #include <fcntl.h> +#include <sys/ioctl.h>  #ifdef HAVE_LIBWRAP  #include <syslog.h> @@ -241,6 +242,7 @@ int main(int argc, char *argv[]) {      if (conf->daemonize) {          pid_t child; +        int tty_fd;          if (pa_stdio_acquire() < 0) {              pa_log(__FILE__": failed to acquire stdio.\n"); @@ -292,6 +294,15 @@ int main(int argc, char *argv[]) {          open("/dev/null", O_RDONLY);          open("/dev/null", O_WRONLY);          open("/dev/null", O_WRONLY); +         +        signal(SIGTTOU, SIG_IGN); +        signal(SIGTTIN, SIG_IGN); +        signal(SIGTSTP, SIG_IGN); +         +        if ((tty_fd = open("/dev/tty", O_RDWR)) >= 0) { +            ioctl(tty_fd, TIOCNOTTY, (char*) 0); +            close(tty_fd); +        }      }      chdir("/"); | 
