SETGID

Section: Linux Programmer's Manual (2)
Updated: 2014-09-21
Index JM Home Page roff page
 

名前

setgid - グループ識別(identity)を設定する  

書式

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

int setgid(gid_t gid);  

説明

setgid() は呼び出し元のプロセスの実効 (effective) グループID を設定する。 もしスーパーユーザーによって呼び出された場合は、 実 (real) グループID と保存 (saved) set-group-ID も設定される。

Linux において、 setgid() は _POSIX_SAVED_IDS をもった POSIX 版のように実装されている。 これは set-user-ID-root でない set-group-ID プログラムにそのグループの 特権の全て落とし、特権の必要ない仕事をし、本来の実効グループID に 安全な方法で再び戻すことを許す。  

返り値

成功した場合は 0 が返される。エラーの場合は -1 が返され、 errno が適切に設定される。  

エラー

EINVAL
gid で指定されたグループ ID がこのユーザー名前空間では有効ではない。
EPERM
呼び出し元のプロセスに権限がなく (CAP_SETGID ケーパビリティがなく)、かつ gid が呼び出し元のプロセスの実グループID と保存セットグループID のどちらとも一致しない。
 

準拠

SVr4, POSIX.1-2001.  

注意

元々の Linux の setgid() システムコールは 16 ビットのグループ ID だけに対応していた。 その後、Linux 2.4 で、32 ビットの ID に対応した setgid32() が追加された。 glibc の setgid() のラッパー関数は カーネルバージョンによるこの違いを吸収している。  

関連項目

getgid(2), setegid(2), setregid(2), capabilities(7), credentials(7), user_namespaces(7)  

この文書について

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


 

Index

名前
書式
説明
返り値
エラー
準拠
注意
関連項目
この文書について

This document was created by man2html, using the manual pages.
Time: 15:33:27 GMT, March 14, 2017