tcsetpgrp --
set terminal foreground process group ID
Synopsis
#include <unistd.h>
int tcsetpgrp (int fildes, pid_t pgid);
Description
tcsetpgrp
sets the foreground process group
ID
of the terminal specified by
fildes
to
pgid.
The file associated with fildes must be the controlling terminal
of the calling process and the controlling terminal must be currently
associated with the session of the calling process.
The value of pgid must match a process group
ID
of a process in the same session as the calling process.
Return values
Upon successful completion,
tcsetpgrp
returns a value of 0.
Otherwise, a value of -1 is returned and
errno
is set to indicate the error.
Errors
tcsetpgrp fails if one or more of the following is true:
EBADF
The
fildes
argument is not a valid file descriptor.
EINVAL
The
fildes
argument is a terminal that does not support
tcsetpgrp, or
pgid
is not a valid process group ID.
ENOTTY
The calling process does not have a controlling terminal, or the file is
not the controlling terminal, or the controlling terminal is no longer
associated with the session of the calling process.
EPERM
pgid
does not match the process group
ID
of an existing process in the same session as the calling process.