getsid − get session ID
Standard C library (libc, −lc)
#include <unistd.h>
pid_t getsid(pid_t pid);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
getsid():
_XOPEN_SOURCE >= 500
|| /* Since glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
getsid() returns the session ID of the process with process ID pid. If pid is 0, getsid() returns the session ID of the calling process.
On success, a session ID is returned. On error, (pid_t) −1 is returned, and errno is set to indicate the error.
EPERM |
A process with process ID pid exists, but it is not in the same session as the calling process, and the implementation considers this an error. | ||
ESRCH |
No process with process ID pid was found. |
Linux does not return EPERM.
POSIX.1-2008.
POSIX.1-2001, SVr4. Linux 2.0.
See credentials(7) for a description of sessions and session IDs.
getpgid(2), setsid(2), credentials(7)