OSDN Git Service

Update releases for LDP 3.67
[linuxjm/LDP_man-pages.git] / release / man2 / execve.2
index 22fa794..724c16a 100644 (file)
@@ -320,28 +320,23 @@ set\-user\-id プロセスと set\-group\-ID プロセスは \fBptrace\fP(2)  
 .\" Bug filed 30 Apr 2007: http://bugzilla.kernel.org/show_bug.cgi?id=8408
 .\" Bug rejected (because fix would constitute an ABI change).
 .\"
-The result of mounting a filesystem \fInosuid\fP varies across Linux kernel
-versions: some will refuse execution of set\-user\-ID and set\-group\-ID
-executables when this would give the user powers she did not have already
-(and return \fBEPERM\fP), some will just ignore the set\-user\-ID and
-set\-group\-ID bits and \fBexec\fP()  successfully.  On Linux, \fIargv\fP and
-\fIenvp\fP can be specified as NULL.  In both cases, this has the same effect
-as specifying the argument as a pointer to a list containing a single null
-pointer.  \fBDo not take advantage of this misfeature!\fP It is nonstandard and
-nonportable: on most other UNIX systems doing this will result in an error
-(\fBEFAULT\fP).
+ファイルシステムを \fInosuid\fP でマウントした場合に set\-user\-ID/set\-group\-ID の実行ファイルを
+どの様に扱うかは、Linux カーネルのバージョンによって異なる: あるバージョンでは、すでに必要な権限を持っている場合を除いて、 その実行を拒否する
+(そして \fBEPERM\fP を返す)。別のあるバージョンでは set\-user\-ID/set\-group\-ID ビットのみを無視し \fBexec\fP()
+は成功する。 Linux では、 \fIargv\fP と \fIenvp\fP に NULL を指定することができる。 どちらに NULL を指定した場合も、
+これらの引き数にヌルポインタ 1 個だけを含むリストへのポインタを指定したのと同じ効果を持つ。 \fB「この間違った機能を利用しないこと」\fP。
+これは非標準で、移植性もない。 他のほとんどの UNIX システムでは、これを行うとエラー (\fBEFAULT\fP)  になる。
 
 POSIX.1\-2001 は、 \fBsysconf\fP(3)  が返す値はプロセスの生存中は変化しないべきだとしている。 しかしながら、Linux
 2.6.23 以降では、リソース上限 \fBRLIMIT_STACK\fP が変化した場合、 コマンドライン引き数と環境変数を保持するための空間に対する上限が
 変化したことを反映して、 \fB_SC_ARG_MAX\fP が返す値も変化する。
 
 .\"
-In most cases where \fBexecve\fP()  fails, control returns to the original
-executable image, and the caller of \fBexecve\fP()  can then handle the error.
-However, in (rare) cases (typically caused by resource exhaustion), failure
-may occur past the point of no return: the original executable image has
-been torn down, but the new image could not be completely built.  In such
-cases, the kernel kills the process with a \fBSIGKILL\fP signal.
+\fBexecve\fP() が失敗するほとんどの場合、 制御は元の実行可能イメージに戻り、 \fBexecve\fP()
+の呼び出し元がエラーを処理することができる。 しかしながら、 (リソース枯渇が原因となった場合など、まれに)
+呼び出し元に制御が戻る時点を過ぎてからエラーが発生する場合がある。 元の実行可能イメージはすでに破棄されているが、
+新しいイメージが完全には構築されていないという状況である。 このような場合、カーネルはそのプロセスをシグナル \fBSIGKILL\fP で停止 (kill)
+する。
 .SS インタプリタ・スクリプト
 インタプリタスクリプトの 1行目に許されている文字数は、 最大 127 文字である。