getsid

NAME

getsid - get session ID

SYNOPSIS

#include <unistd.h>

pid_t getsid(pid_t pid);

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

getsid(): _XOPEN_SOURCE >= 500

DESCRIPTION

getsid(0) returns the session ID of the calling process. getsid(p) returns the session ID of the process with process ID p. (The session ID of a process is the process group ID of the session leader.)

RETURN VALUE

On success, a session ID is returned. On error, (pid_t) -1 will be returned, and errno is set appropriately.

ERRORS

EPERM
A process with process ID p exists, but it is not in the same session as the current process, and the implementation considers this an error.
ESRCH
No process with process ID p was found.

CONFORMING TO

SVr4, POSIX.1-2001.

NOTES

Linux does not return EPERM.

Linux has this system call since Linux 1.3.44. There is libc support since libc 5.2.19.

SEE ALSO

getpgid(2), setsid(2), credentials(7)