Terminal I/O interfaces deal with a general terminal interface for controlling asynchronous communications ports, as shown in the following table.
The following example shows how the server dissociates from the controlling terminal of its invoker in the non-DEBUG mode of operation.Example 20 Dissociating From the Controlling Terminal
(void) close(0); (void) close(1); (void) close(2); (void) open("/", O_RDONLY); (void) dup2(0, 1); (void) dup2(0, 2); setsid();
This operation mode prevents the server from receiving signals from the process group of the controlling terminal. A server cannot send reports of errors to a terminal after the server has dissociated. The dissociated server must log errors with syslog. For more information, see the syslog(3C) man page.