setgidのヘルプ・マニュアル
日本語 英語
setgid --help
man setgid
SETGID(2) Linux Programmer’s Manual SETGID(2)
名前
setgid - グループ識別(identity)を設定する
書式
#include
#include
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 に安全な方法で再び戻すことを許す。
返り値
成功した場合はゼロが返される。エラーの場合は -1 が返され、 errno が適切
に設定される。
エラー
EPERM 呼び出し元のプロセスに権限がなく (CAP_SETGID ケーパビリティがな
く)、かつ gid が呼び出し元のプロセスの実効グループID と保存セ ッ
トグループID のどちらとも一致しない。
準拠
SVr4, POSIX.1-2001.
関連項目
getgid(2), setegid(2), setregid(2), capabilities(7), credentials(7)
Linux 2002-03-09 SETGID(2)
SETGID(2) Linux Programmer’s Manual SETGID(2)
NAME
setgid - set group identity
SYNOPSIS
#include
#include
int setgid(gid_t gid);
DESCRIPTION
setgid() sets the effective group ID of the calling process. If the
caller is the superuser, the real GID and saved set-group-ID are also
set.
Under Linux, setgid() is implemented like the POSIX version with the
_POSIX_SAVED_IDS feature. This allows a set-group-ID program that is
not set-user-ID-root to drop all of its group privileges, do some un-
privileged work, and then re-engage the original effective group ID in
a secure manner.
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is
set appropriately.
ERRORS
EPERM The calling process is not privileged (does not have the
CAP_SETGID capability), and gid does not match the effective
group ID or saved set-group-ID of the calling process.
CONFORMING TO
SVr4, POSIX.1-2001.
SEE ALSO
getgid(2), setegid(2), setregid(2), capabilities(7), credentials(7)
COLOPHON
This page is part of release 3.22 of the Linux man-pages project. A
description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
Linux 2002-03-09 SETGID(2)