tcsetsid()

Make a terminal device a controlling device

Synopsis:

#include <termios.h>

int tcsetsid( int fd,
              pid_t pid );

Arguments:

fd
A file descriptor that's associated with the device that you want to make a controlling device.
pid
The ID of the process that you want to associate with the controlling device.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The tcsetsid() function makes the terminal device associated with the file descriptor argument fd into a controlling terminal that's associated with the process pid. If successful, this call causes subsequent hangup conditions on the terminal device fd to generate a SIGHUP signal on the given process.

This call is equivalent to calling ioctl( fd, TIOCSCTTY ) to set the controlling terminal to the current process. You can clear the controlling terminal by passing -1 as fd.

Returns:

0
Success.
-1
Failure; errno is set.

Errors:

EBADF
Invalid file descriptor.
EINVAL
The argument pid is invalid.
ENOSYS, ENOTTY
The argument fd isn't associated with a terminal device.

Classification:

QNX Neutrino

Safety:
Cancellation point No
Interrupt handler No
Signal handler No
Thread Yes

See also:

ioctl(), tcgetsid()