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.) On error, (pid_t) -1 will be returned, and errno
is set appropriately.
Linux does not return EPERM.
Linux has this system call since Linux 1.3.44. There is libc support since libc
To get the prototype under glibc, define both _XOPEN_SOURCE and
_XOPEN_SOURCE_EXTENDED, or use "#define _XOPEN_SOURCE n" for
some integer n larger than or equal to 500.