NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | ATTRIBUTES | SUMMARY OF TRUSTED SOLARIS CHANGES | SEE ALSO
#include <unistd.h>pid_t getpid(void);
The getpid() function returns the process ID of the calling process.
The getpgrp() function returns the process group ID of the calling process.
The getppid() function returns the parent process ID of the calling process.
The getpgid() function returns the process group ID of the process whose process ID is equal to pid, or the process group ID of the calling process, if pid is equal to 0.
Upon successful completion, these functions return the process group ID. Otherwise, getpgid() returns (pid_t)-1 and sets errno to indicate the error.
The getpgid() function will fail if:
The process whose process ID is equal to pid is not in the same session as the calling process, and the implementation does not allow access to the process group ID of that process from the calling process.
There is no process with a process ID equal to pid. Or, the calling process does not have MAC read access to the target process, and does not have PRIV_PROC_MAC_READ
overriding privilege. Or, the calling process' real or effective user ID does not match the real or saved user ID of the target process, and does not have PRIV_PROC_OWNER
overriding
privilege.
The getpgid() function may fail if:
The value of the pid argument is invalid.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
MT-Level | Async-Signal-Safe |
MAC and DAC policies are added to the getpgid() command. To avoid covert channel issues, the Trusted Solaris environment does not distinguish between failures due to policy and those due to nonexistence of the target process.
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | ATTRIBUTES | SUMMARY OF TRUSTED SOLARIS CHANGES | SEE ALSO