TCSETPGRP(3) BSD Library Functions Manual TCSETPGRP(3)NAMEtcsetpgrp — set foreground process group ID
tcsetpgrp(int fd, pid_t pgrp_id);
If the process has a controlling terminal, the tcsetpgrp function sets
the foreground process group ID associated with the terminal device to
pgrp_id. The terminal device associated with fd must be the controlling
terminal of the calling process and the controlling terminal must be cur‐
rently associated with the session of the calling process. The value of
pgrp_id must be the same as the process group ID of a process in the same
session as the calling process.
Upon successful completion, tcsetpgrp returns a value of zero.
If an error occurs, tcgetpgrp returns -1 and the global variable errno is
set to indicate the error, as follows:
[EBADF] The fd argument is not a valid file descriptor.
[EINVAL] An invalid value of pgrp_id was specified.
[ENOTTY] The calling process does not have a controlling termi‐
nal, or the file represented by fd is not the control‐
ling terminal, or the controlling terminal is no
longer associated with the session of the calling
[EPERM] The pgrp_id argument does not match the process group
ID of a process in the same session as the calling
SEE ALSOsetpgid(3), setsid(2), tcgetpgrp(3)STANDARDS
The tcsetpgprp function is expected to be compliant with the IEEE Std
1003.1-1988 (“POSIX.1”) specification.
BSD September 28, 2021 BSD