getsid(2) — Linux manual page

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | VERSIONS | STANDARDS | HISTORY | NOTES | SEE ALSO

getsid(2)                  System Calls Manual                 getsid(2)

NAME         top

       getsid - get session ID

LIBRARY         top

       Standard C library (libc, -lc)

SYNOPSIS         top

       #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

DESCRIPTION         top

       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         top

       On success, a session ID is returned.  On error, (pid_t) -1 is
       returned, and errno is set to indicate the error.

ERRORS         top

       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         top

       Linux does not return EPERM.

STANDARDS         top

       POSIX.1-2008.

HISTORY         top

       POSIX.1-2001, SVr4.  Linux 2.0.

NOTES         top

       See credentials(7) for a description of sessions and session IDs.

SEE ALSO         top

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

Linux man-pages (unreleased)   2024-05-02                      getsid(2)

Pages that refer to this page: ps(1)setsid(2)syscalls(2)id_t(3type)sd_pid_get_owner_uid(3)tcgetsid(3)utmp(5)credentials(7)