GETSID(2)

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

書式
#include <unistd.h>

pid_t getsid(pid_t pid);

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

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

説明
getsid(0) は呼び出し元のプロセスのセッション ID を返す。 getsid(p) はプロセス ID p を持つプロセスのセッション ID を返す (プロセスのセッション ID は セッションリーダーのプロセスグループ ID である)。

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

エラー

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

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

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

準拠
SVr4, POSIX.1-2001.

注意
Linux は EPERM を返さない。

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

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