TCSETPGRP(3) Library Functions Manual TCSETPGRP(3)

tcsetpgrpset foreground process group ID

Standard C Library (libc, -lc)

#include <unistd.h>

int
tcsetpgrp(int fildes, pid_t pgid_id);

If the process has a controlling terminal, the () function sets the foreground process group ID associated with the terminal device to pgid_id. The terminal device 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_id must be the same as the process group ID of a process in the same session as the calling process.

The tcsetpgrp() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.

The tcsetpgrp() function will fail if:

[]
The fildes argument is not a valid file descriptor.
[]
An invalid value of pgid_id was specified.
[]
The calling process does not have a controlling terminal, or the file represented by fildes is not the controlling terminal, or the controlling terminal is no longer associated with the session of the calling process.
[]
The pgid_id argument does not match the process group ID of a process in the same session as the calling process.

#include <sys/types.h> #include <unistd.h>

The include file <sys/types.h> is necessary.

setpgid(2), setsid(2), tcgetpgrp(3), compat(5)

The tcsetpgrp() function is expected to be compliant with the IEEE Std 1003.1-1988 (“POSIX.1”) specification.

June 4, 1993 macOS 15.2