getsid - Man Page
get session ID
Library
Standard C library (libc, -lc)
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
|| /* Since glibc 2.12: */ _POSIX_C_SOURCE >= 200809LDescription
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.
Return Value
On success, a session ID is returned. On error, (pid_t) -1 is returned, and errno is set to indicate the error.
Errors
- 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.
Versions
Linux does not return EPERM.
Standards
POSIX.1-2008.
History
POSIX.1-2001, SVr4. Linux 2.0.
Notes
See credentials(7) for a description of sessions and session IDs.
See Also
Referenced By
credentials(7), mksh(1), procenv(1), ps(1), sd_pid_get_owner_uid(3), setsid(2), stress-ng(1), syscalls(2), tcgetsid(3), utmp(5).