#include <sys/types.h> #include <unistd.h>
pid_t tcgetpgrp(int fildes);
The tcgetpgrp() function will return the value of the process group ID of the foreground process group associated with the terminal.
If there is no foreground process group, tcgetpgrp() returns a value greater than 1 that does not match the process group ID of any existing process group.
The tcgetpgrp() function is allowed from a process that is a member of a background process group; however, the information may be subsequently changed by a process that is a member of a foreground process group.
Upon successful completion, tcgetpgrp() returns the value of the process group ID of the foreground process associated with the terminal. Otherwise, -1 is returned and errno is set to indicate the error.
The tcgetpgrp() function will fail if:
EBADF The fildes argument is not a valid file descriptor.
ENOTTY The calling process does not have a controlling terminal, or the file is not the controlling terminal.
See attributes(5) for descriptions of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|
|MT-Level||MT-Safe, and Async-Signal-Safe|
setpgid(2), setsid(2), tcsetpgrp(3C), attributes(5), standards(5), termio(7I)