GETSID(2)

名前
getsid - セッション ID を取得する。

書式
#include <sys/types.h>
#include <unistd.h>

pid_t getsid(pid_t pid);

    glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

getsid():
    _XOPEN_SOURCE >= 500
        || /* glibc 2.12 以降: */ _POSIX_C_SOURCE >= 200809L

説明
getsid(0) は呼び出し元のプロセスのセッション ID を返す。 getsid() はプロセス ID が pid のプロセスのセッション ID を返す。 pid が 0 の場合、 getsid() は呼び出し元プロセスのセッション ID を返す。

返り値
成功すると、セッション ID が返される。 エラーの場合、(pid_t) -1 が返され、 errno が適切に設定される。

エラー

EPERM
    プロセス ID pid のプロセスは存在するが、呼び出し元のプロセスと同じセッションではなく、 さらに実装がこの状態をエラーと判断した場合。

ESRCH
    プロセス ID が pid のプロセスがない。

バージョン
このシステムコールは Linux バージョン 2.0 以降で利用可能である。

準拠
POSIX.1-2001, POSIX.1-2008, SVr4.

注意
Linux は EPERM を返さない。

セッションとセッション ID の説明は credentials(7) を参照。

関連項目
getpgid(2), setsid(2), credentials(7)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。