OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man2 / setreuid.2
index aa04580..ece000f 100644 (file)
 .\"          2004-07-04 by aeb
 .\"          2004-05-27 by Michael Kerrisk
 .\"
-.\" Japanese Version Copyright (c) 1997 HANATAKA Shinya
-.\"         all rights reserved.
-.\" Translated Fri Dec 12 00:18:45 JST 1997
-.\"         by HANATAKA Shinya <hanataka@abyss.rim.or.jp>
-.\" Updated & Modified Mon Jun  4 19:11:44 JST 2001
-.\"         by Yuichi SATO <ysato@h4.dion.ne.jp>
-.\" Updated & Modified Wed Jan  5 00:37:49 JST 2005
-.\"         by Yuichi SATO <ysato444@yahoo.co.jp>
-.\" Updated 2010-04-23, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v3.24
+.\"*******************************************************************
 .\"
-.\"WORD:       effective user ID       実効ユーザーID
-.\"WORD:       real user ID            実ユーザーID
-.\"WORD:       saved user ID           保存ユーザーID
-.\"WORD:       super-user              スーパー・ユーザー
+.\" This file was generated with po4a. Translate the source file.
 .\"
-.TH SETREUID 2 2010-09-20 "Linux" "Linux Programmer's Manual"
+.\"*******************************************************************
+.TH SETREUID 2 2010\-11\-22 Linux "Linux Programmer's Manual"
 .SH 名前
 setreuid, setregid \- 実 (real) と実効 (effective) ユーザー (グループ) ID を設定する
 .SH 書式
-.B #include <sys/types.h>
+\fB#include <sys/types.h>\fP
 .br
-.B #include <unistd.h>
+\fB#include <unistd.h>\fP
 .sp
-.BI "int setreuid(uid_t " ruid ", uid_t " euid );
+\fBint setreuid(uid_t \fP\fIruid\fP\fB, uid_t \fP\fIeuid\fP\fB);\fP
 .br
-.BI "int setregid(gid_t " rgid ", gid_t " egid );
+\fBint setregid(gid_t \fP\fIrgid\fP\fB, gid_t \fP\fIegid\fP\fB);\fP
 .sp
 .in -4n
-glibc 向けの機能検査マクロの要件
-.RB ( feature_test_macros (7)
-参照):
+glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7)  参照):
 .in
 .sp
-.BR setreuid (),
-.BR setregid ():
+\fBsetreuid\fP(), \fBsetregid\fP():
 .RS 4
 .ad l
-_BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 ||
-_XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
+_BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
 .ad
 .RE
 .SH 説明
-.BR setreuid ()
-は呼び出し元のプロセスの実 (real) ユーザー ID と
-実効 (effective) ユーザー ID を設定する。
+\fBsetreuid\fP()  は呼び出し元のプロセスの実 (real) ユーザー ID と 実効 (effective) ユーザー ID を設定する。
 
-実ユーザー ID や実効ユーザー ID に \-1 を与えた場合、
-システムはその ID を変更しない。
+実ユーザー ID や実効ユーザー ID に \-1 を与えた場合、 システムはその ID を変更しない。
 
-非特権プロセスは実効ユーザー ID を実ユーザー ID または実効ユーザー ID または
-保存 set-user-ID にしか設定できない。
+非特権プロセスは実効ユーザー ID を実ユーザー ID または実効ユーザー ID または 保存 set\-user\-ID にしか設定できない。
 
-非特権ユーザーは、実ユーザー ID を実ユーザー ID または
-実効ユーザー ID にしか設定できない。
+非特権ユーザーは、実ユーザー ID を実ユーザー ID または 実効ユーザー ID にしか設定できない。
 
-実ユーザーID が設定されたり、実効ユーザーID が前の実ユーザーID と
-異った値に設定された場合、保存 set-user-ID には新しい実効ユーザーID
-の値が設定される。
+実ユーザーID が設定されたり、実効ユーザーID が前の実ユーザーID と 異った値に設定された場合、保存 set\-user\-ID
+には新しい実効ユーザーID の値が設定される。
 
-これと全く同様に、
-.BR setregid ()
-は呼び出し元のプロセスの実グループ ID と実効グループ ID を設定し、
+これと全く同様に、 \fBsetregid\fP()  は呼び出し元のプロセスの実グループ ID と実効グループ ID を設定し、
 上記の説明で「ユーザー」を「グループ」に読み替えたことが成り立つ。
 .SH 返り値
-成功した場合は 0 が返される。エラーの場合は \-1 が返され、
-.I errno
-が適切に設定される。
+成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。
 .SH エラー
-.TP
-.B EPERM
-呼び出し元のプロセスに特権がなく
-(Linux では
-.BR setreuid ()
-の場合に
-.B CAP_SETUID
-ケーパビリティ (capability) がなく、
-.BR setregid ()
-の場合に
-.B CAP_SETGID
-ケーパビリティがない)、
-以下のいずれでもない変更が指定された:
-(i) 実効ユーザー (グループ) ID と実ユーザー (グループ) ID を入れ換える。
-(ii) 片方の値を他方に設定する。
-(iii) 実効ユーザー (グループ) ID に保存 set-user-ID (保存 set-group-ID)
+.TP 
+\fBEPERM\fP
+呼び出し元のプロセスに特権がなく (Linux では \fBsetreuid\fP()  の場合に \fBCAP_SETUID\fP ケーパビリティ
+(capability) がなく、 \fBsetregid\fP()  の場合に \fBCAP_SETGID\fP ケーパビリティがない)、
+以下のいずれでもない変更が指定された: (i) 実効ユーザー (グループ) ID と実ユーザー (グループ) ID を入れ換える。 (ii)
+片方の値を他方に設定する。 (iii) 実効ユーザー (グループ) ID に保存 set\-user\-ID (保存 set\-group\-ID)
 の値を設定する。
 .SH 準拠
-POSIX.1-2001, 4.3BSD
-.RB ( setreuid ()
-と
-.BR setregid ()
-関数コールは 4.2BSD で登場した)。
+POSIX.1\-2001, 4.3BSD (\fBsetreuid\fP()  と \fBsetregid\fP()  関数コールは 4.2BSD で登場した)。
 .SH 注意
-実効ユーザー (グループ) ID を保存ユーザー (グループ) ID に
-設定することが、Linux 1.1.37 (1.1.38) から可能になった。
+実効ユーザー (グループ) ID を保存ユーザー (グループ) ID に 設定することが、Linux 1.1.37 (1.1.38) から可能になった。
 
-POSIX.1 では、非特権プロセスに対して Linux 上で認められている ID の変更の
-全パターンを規定しているわけではない。
-.BR setreuid ()
-では、実効ユーザ ID を実ユーザ ID もしくは保存 set-user-ID と
-同じ値にすることができるが、
-非特権プロセスが実ユーザ ID を実ユーザ ID、実効ユーザ ID、
-保存 set-user-ID のどの値にも設定できるかは規定されていない。
-.BR setregid ()
-では、実グループ ID を保存 set-group-ID と同じ値に変更でき、
-実効グループ ID を実グループ ID や保存 set-group-ID と同じ値に変更できる。
-どのような ID の変更が認められているかの正確な詳細は
-実装ごとに異なる。
+POSIX.1 では、非特権プロセスに対して Linux 上で認められている ID の変更の 全パターンを規定しているわけではない。
+\fBsetreuid\fP()  では、実効ユーザ ID を実ユーザ ID もしくは保存 set\-user\-ID と 同じ値にすることができるが、
+非特権プロセスが実ユーザ ID を実ユーザ ID、実効ユーザ ID、 保存 set\-user\-ID のどの値にも設定できるかは規定されていない。
+\fBsetregid\fP()  では、実グループ ID を保存 set\-group\-ID と同じ値に変更でき、 実効グループ ID を実グループ ID
+や保存 set\-group\-ID と同じ値に変更できる。 どのような ID の変更が認められているかの正確な詳細は 実装ごとに異なる。
 
-POSIX.1 では、これらのシステムコールが保存 set-user-ID や
-保存 set-group-ID に与える影響については規定していない。
+POSIX.1 では、これらのシステムコールが保存 set\-user\-ID や 保存 set\-group\-ID に与える影響については規定していない。
+
+元々の Linux の \fBsetreuid\fP() と \fBsetregid\fP() システムコールは
+16 ビットのグループ ID だけに対応していた。
+その後、Linux 2.4 で、32 ビットの ID に対応した
+\fBsetreuid32\fP() と \fBsetregid32\fP() が追加された。
+glibc の \fBsetreuid\fP() と \fBsetregid\fP() のラッパー関数は
+カーネルバージョンによるこの違いを吸収している。
 .SH 関連項目
-.BR getgid (2),
-.BR getuid (2),
-.BR seteuid (2),
-.BR setgid (2),
-.BR setresuid (2),
-.BR setuid (2),
-.BR capabilities (7)
+\fBgetgid\fP(2), \fBgetuid\fP(2), \fBseteuid\fP(2), \fBsetgid\fP(2), \fBsetresuid\fP(2),
+\fBsetuid\fP(2), \fBcapabilities\fP(7)