X-Git-Url: http://git.osdn.net/view?p=linuxjm%2FLDP_man-pages.git;a=blobdiff_plain;f=draft%2Fman2%2Fseteuid.2;h=4fb3e4f97f7e1cab46c9df2806513ccf1c0e37b3;hp=2060e47329139318cbbe8a77e6e41d443c0cc50b;hb=83f9e5d087c3464d5131604d3c9893479e6228eb;hpb=ad24a8da2d0555b45e75db36ccc1b56d01cc68e6 diff --git a/draft/man2/seteuid.2 b/draft/man2/seteuid.2 index 2060e473..4fb3e4f9 100644 --- a/draft/man2/seteuid.2 +++ b/draft/man2/seteuid.2 @@ -31,7 +31,15 @@ .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* -.TH SETEUID 2 2012\-07\-02 Linux "Linux Programmer's Manual" +.\" +.\" Japanese Version Copyright (c) 2001, 2005 Yuichi SATO +.\" all rights reserved. +.\" Translated 2001-06-04, Yuichi SATO +.\" Updated & Modified 2005-01-04, Yuichi SATO +.\" Updated 2010-04-23, Akihiro MOTOKI , LDP v3.24 +.\" Updated 2013-05-06, Akihiro MOTOKI +.\" +.TH SETEUID 2 2014\-09\-21 Linux "Linux Programmer's Manual" .SH 名前 seteuid, setegid \- 実効ユーザー ID や 実効グループ ID を設定する .SH 書式 @@ -65,9 +73,13 @@ _BSD_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L || _XOPEN_SOURCE\ >=\ 600 \fBsetegid\fP() は「ユーザー」ではなく「グループ」に対して全く同じことを行う。 .SH 返り値 成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。 + +\fI注意\fP: 呼び出し元が UID 0 であっても \fBseteuid\fP() が失敗する場合がある。 \fBseteuid\fP() +からのリターンが失敗かどうかの確認を省略することは重大なセキュリティ上のエラーとなる。 .SH エラー -.\" .TP -.\" .B EINVAL +.TP +\fBEINVAL\fP +対象のユーザー ID かグループ ID がこのユーザー名前空間では有効ではない。 .TP \fBEPERM\fP 呼び出し元のプロセスに特権がなく、 \fIeuid\fP (\fIegid\fP) が実ユーザー (グループ) ID、または実効ユーザー (グループ) ID、 @@ -80,20 +92,22 @@ _BSD_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L || _XOPEN_SOURCE\ >=\ 600 実効ユーザー (グループ) ID を保存 set\-user\-ID (保存 set\-group\-ID) に 設定できるのは、Linux 1.1.37 (1.1.38) 以降である。 全てのシステムにおいて \fB_POSIX_SAVED_IDS\fP をチェックすべきである。 .LP -libc4, libc5, glibc 2.0 では、 \fBseteuid(\fP\fIeuid\fP\fB)\fP は \fBsetreuid(\-1,\fP\fI -euid\fP\fB)\fP と等価であり、保存 set\-user\-ID を変更するかもしれない。 glibc 2.1 では、 -\fBsetresuid(\-1,\fP\fI euid\fP\fB, \-1)\fP と等価であり、保存 set\-user\-ID 変更しない。 同様のことが -\fBsetegid\fP() にも言えるが、 glibc 2.2 か 2.3 で、 実装が \fBsetregid(\-1,\fP\fI egid\fP\fB)\fP から -\fBsetresgid(\-1,\fP\fI egid\fP\fB, \-1)\fP へ変更された点だけが違う (どの glibc -バージョンで変更が行われたかは、ハードウェアアーキテクチャによって異なる)。 +glibc 2.0 では、 \fBseteuid(\fP\fIeuid\fP\fB)\fP は \fBsetreuid(\-1,\fP\fI euid\fP\fB)\fP と等価であり、保存 +set\-user\-ID を変更するかもしれない。 glibc 2.1 では、 \fBsetresuid(\-1,\fP\fI euid\fP\fB, \-1)\fP +と等価であり、保存 set\-user\-ID 変更しない。 同様のことが \fBsetegid\fP() にも言えるが、 glibc 2.2 か 2.3 で、 +実装が \fBsetregid(\-1,\fP\fI egid\fP\fB)\fP から \fBsetresgid(\-1,\fP\fI egid\fP\fB, \-1)\fP +へ変更された点だけが違う (どの glibc バージョンで変更が行われたかは、ハードウェアアーキテクチャーによって異なる)。 -POSIX.1 では、 \fBseteuid\fP() (\fBsetegid\fP()) で、 \fIeuid\fP (\fIegid\fP) として現在の実効ユーザ -(グループ) ID と同じ値を指定可能である 必要はないとされており、いくつかの実装では \fIeuid\fP (\fIegid\fP) として現在の実効ユーザ +POSIX.1 では、 \fBseteuid\fP() (\fBsetegid\fP()) で、 \fIeuid\fP (\fIegid\fP) として現在の実効ユーザー +(グループ) ID と同じ値を指定可能である 必要はないとされており、いくつかの実装では \fIeuid\fP (\fIegid\fP) として現在の実効ユーザー (グループ) ID と同じ値を 指定することができない。 +.SS "C ライブラリとカーネル ABI の違い" +Linux では、 \fBseteuid\fP() と \fBsetegid\fP() は、それぞれ \fBsetreuid\fP(2) と +\fBsetresgid\fP(2) を呼び出すライブラリ関数として実装されている。 .SH 関連項目 \fBgeteuid\fP(2), \fBsetresuid\fP(2), \fBsetreuid\fP(2), \fBsetuid\fP(2), -\fBcapabilities\fP(7), \fBcredentials\fP(7) +\fBcapabilities\fP(7), \fBcredentials\fP(7), \fBuser_namespaces\fP(7) .SH この文書について -この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.52 の一部 +この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man\-pages/ に書かれている。