.\" the source, must acknowledge the copyright and authors of this work.
.\"
.\" Modified, 2003-05-26, Michael Kerrisk, <mtk.manpages@gmail.com>
+.\"*******************************************************************
.\"
-.\" Japanese Version Copyright (c) 1997 HANATAKA Shinya
-.\" all rights reserved.
-.\" Translated 1997-08-30, HANATAKA Shinya <hanataka@abyss.rim.or.jp>
-.\" Updated & Modified 2004-05-22, Yuichi SATO <ysato444@yahoo.co.jp>
-.\" Updated & Modified 2005-01-04, Yuichi SATO
-.\" Updated & Modified 2005-09-03, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
-.\" Updated & Modified 2005-11-04, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\" This file was generated with po4a. Translate the source file.
.\"
-.\"WORD: effective user ID 実効ユーザーID
-.\"WORD: real user ID 実ユーザーID
-.\"WORD: saved set-user-ID 保存セットユーザーID
-.\"WORD: effective group ID 実効グループID
-.\"WORD: real group ID 実グループID
-.\"WORD: saved group ID 保存グループID
-.\"
-.TH SETRESUID 2 2007-07-26 "Linux" "Linux Programmer's Manual"
+.\"*******************************************************************
+.TH SETRESUID 2 2010\-11\-22 Linux "Linux Programmer's Manual"
.SH 名前
setresuid, setresgid \- ユーザやグループの 実、実効、保存 ID を設定する
.SH 書式
-.BR "#define _GNU_SOURCE" " /* feature_test_macros(7) 参照 */"
+\fB#define _GNU_SOURCE\fP /* feature_test_macros(7) 参照 */
.br
-.B #include <unistd.h>
+\fB#include <unistd.h>\fP
.sp
-.BI "int setresuid(uid_t " ruid ", uid_t " euid ", uid_t " suid );
+\fBint setresuid(uid_t \fP\fIruid\fP\fB, uid_t \fP\fIeuid\fP\fB, uid_t \fP\fIsuid\fP\fB);\fP
.br
-.BI "int setresgid(gid_t " rgid ", gid_t " egid ", gid_t " sgid );
+\fBint setresgid(gid_t \fP\fIrgid\fP\fB, gid_t \fP\fIegid\fP\fB, gid_t \fP\fIsgid\fP\fB);\fP
.SH 説明
-.BR setresuid ()
-は呼び出し元のプロセスの実 (real) ユーザーID、実効 (effective) ユーザーID、
-保存 set-user-ID を設定する。
+\fBsetresuid\fP() は呼び出し元のプロセスの実 (real) ユーザーID、実効 (effective) ユーザーID、 保存
+set\-user\-ID を設定する。
-非特権ユーザーのプロセスは、その実 UID、実効 UID、保存 set-user-ID を、
-現在の実 UID、現在の実効 UID、現在の保存 set-user-ID
-のどれかに変更することができる:
+非特権ユーザーのプロセスは、その実 UID、実効 UID、保存 set\-user\-ID を、 現在の実 UID、現在の実効 UID、現在の保存
+set\-user\-ID のどれかに変更することができる:
-特権プロセス (Linux では \fBCAP_SETUID\fP ケーパビリティ (capability) を持つ
-プロセス) は、実 UID、実効 UID、保存 set-user-ID を任意の値に設定できる。
+特権プロセス (Linux では \fBCAP_SETUID\fP ケーパビリティ (capability) を持つ プロセス) は、実 UID、実効
+UID、保存 set\-user\-ID を任意の値に設定できる。
引き数のどれかが \-1 の場合はその値は変更されずに残される。
-実 UID、実効 UID、保存 set-user-ID にどんな変更が行われたかに関わらず、
-ファイルシステム UID は常に実効 UID (可能であれば変更後の新しい実効 UID)
-と同じ値に設定される。
+実 UID、実効 UID、保存 set\-user\-ID にどんな変更が行われたかに関わらず、 ファイルシステム UID は常に実効 UID
+(可能であれば変更後の新しい実効 UID) と同じ値に設定される。
-全く同じように、
-.BR setresgid ()
-は呼び出し元のプロセスの実 GID、実効 GID、保存 set-group-ID を設定する
-(さらにファイルシステム GID を実効 GID と同じ値に修正する)。
-非特権プロセスは同様の制限を受ける。
+全く同じように、 \fBsetresgid\fP() は呼び出し元のプロセスの実 GID、実効 GID、保存 set\-group\-ID を設定する
+(さらにファイルシステム GID を実効 GID と同じ値に修正する)。 非特権プロセスは同様の制限を受ける。
.SH 返り値
-成功した場合は 0 が返される。エラーの場合は \-1 が返され、
-.I errno
-が適切に設定される。
+成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。
.SH エラー
-.TP
-.B EAGAIN
-.I uid
-が現在のユーザー ID と違う値で、
-この呼び出しにより ユーザー ID が
-リソース上限
-.B RLIMIT_NPROC
+.TP
+\fBEAGAIN\fP
+\fIuid\fP が現在のユーザー ID と違う値で、 この呼び出しにより ユーザー ID が リソース上限 \fBRLIMIT_NPROC\fP
を超えてしまう。
-.TP
-.B EPERM
-呼び出したプロセスが特権を持たないのに
-(\fBCAP_SETUID\fP ケーパビリティを持たないのに)、
-ID を許されていない値に変更しようとした。
+.TP
+\fBEPERM\fP
+呼び出したプロセスが特権を持たないのに (\fBCAP_SETUID\fP ケーパビリティを持たないのに)、 ID を許されていない値に変更しようとした。
.SH バージョン
Linux ではバージョン 2.1.44 より利用可能になった。
.SH 準拠
-これらのコールは非標準である。
-HP-UX や BSD 系のいくつかにも存在する。
+これらのコールは非標準である。 HP\-UX や BSD 系のいくつかにも存在する。
.SH 注意
-HP-UX や FreeBSD では
-.I <unistd.h>
-にプロトタイプが存在する。
-Linux では、glibc 2.3.2 以降で
-プロトタイプが提供されている。
+HP\-UX や FreeBSD では \fI<unistd.h>\fP にプロトタイプが存在する。
+Linux では、glibc 2.3.2 以降で プロトタイプが提供されている。
+
+元々の Linux の \fBsetresuid\fP() と \fBsetresgid\fP() システムコールは
+16 ビットのグループ ID だけに対応していた。
+その後、Linux 2.4 で、32 ビットの ID に対応した
+\fBsetresuid32\fP() と \fBsetresgid32\fP() が追加された。
+glibc の \fBsetresuid\fP() と \fBsetresgid\fP() のラッパー関数は
+カーネルバージョンによるこの違いを吸収している。
.SH 関連項目
-.BR getresuid (2),
-.BR getuid (2),
-.BR setfsgid (2),
-.BR setfsuid (2),
-.BR setreuid (2),
-.BR setuid (2),
-.BR capabilities (7),
-.BR credentials (7)
+\fBgetresuid\fP(2), \fBgetuid\fP(2), \fBsetfsgid\fP(2), \fBsetfsuid\fP(2),
+\fBsetreuid\fP(2), \fBsetuid\fP(2), \fBcapabilities\fP(7), \fBcredentials\fP(7)