.\" and Copyright 2004, 2005 Michael Kerrisk <mtk.manpages@gmail.com>
.\" based on work by faith@cs.unc.edu
.\"
+.\" %%%LICENSE_START(VERBATIM)
.\" Permission is granted to make and distribute verbatim copies of this
.\" manual provided the copyright notice and this permission notice are
.\" preserved on all copies.
.\"
.\" Formatted or processed versions of this manual, if unaccompanied by
.\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
.\"
.\" Modified, aeb, 960424
.\" Modified Fri Jan 31 17:31:20 1997 by Eric S. Raymond <esr@thyrsus.com>
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
-.TH SIGACTION 2 2012\-04\-26 Linux "Linux Programmer's Manual"
+.TH SIGACTION 2 2013\-02\-12 Linux "Linux Programmer's Manual"
.SH 名前
sigaction \- シグナルの動作の確認と変更
.SH 書式
.sp
.ad l
\fBsigaction\fP(): _POSIX_C_SOURCE\ >=\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE
+
+\fIsiginfo_t\fP: _POSIX_C_SOURCE >= 199309L
.ad b
.SH 説明
\fBsigaction\fP() システムコールは、特定のシグナルを受信した際の プロセスの動作を変更するのに使用される (シグナルの概要については
そのシグナルを無視する \fBSIG_IGN\fP、 シグナルハンドラ関数へのポインタが設定できる。
シグナルハンドラ関数の引き数は一つであり、シグナル番号が引き数として 渡される。
.PP
-\fIsa_flags\fP に \fBSA_SIGINFO\fP が指定された場合、 (\fIsa_handler\fP ではなく)
-\fIsa_sigaction\fP により \fIsignum\fP に対応するシグナルハンドラ関数が指定さ
-れる。指定される関数は、最初の引き数としてシグナル番号を、二番目の引き
-数として \fIsiginfo_t\fP へのポインタを、三番目の引き数として (\fIvoid\ *\fP
-にキャストした) \fIucontext_t\fP へのポインタを受けとる。 (一般的には、
-ハンドラ関数の三番目の引き数が使用されない。\fIucontext_t\fP についての
-詳しい情報は \fBgetcontext\fP(2) を参照。)
+If \fBSA_SIGINFO\fP is specified in \fIsa_flags\fP, then \fIsa_sigaction\fP (instead
+of \fIsa_handler\fP) specifies the signal\-handling function for \fIsignum\fP.
+This function receives the signal number as its first argument, a pointer to
+a \fIsiginfo_t\fP as its second argument and a pointer to a \fIucontext_t\fP (cast
+to \fIvoid\ *\fP) as its third argument. (Commonly, the handler function
+doesn't make any use of the third argument. See \fBgetcontext\fP(3) for
+further information about \fIucontext_t\fP.)
.PP
\fIsa_mask\fP は、シグナル・ハンドラ実行中に禁止 (block) すべきシグナルのマスクを指定する
(ハンドラ実行中のシグナルの禁止は、シグナル・ハンドラが起動されたスレッド のシグナルのマスクに追加することで行われる)。 さらに、
別のシグナル・スタックが利用可能でなければ、デフォルトのスタックが 使用される。 このフラグはシグナルハンドラを設定する際にのみ意味を持つ。
.TP
\fBSA_RESETHAND\fP
-シグナルハンドラが呼ばれる度に、シグナルの動作をデフォルトに戻す。 このフラグはシグナルハンドラを設定する際にのみ意味を持つ。
-\fBSA_ONESHOT\fP はこのフラグと同じ意味だが、廃止されており、非標準である。
+Restore the signal action to the default upon entry to the signal handler.
+This flag is only meaningful when establishing a signal handler.
+\fBSA_ONESHOT\fP is an obsolete, nonstandard synonym for this flag.
.TP
\fBSA_RESTART\fP
いくつかのシステムコールをシグナルの通知の前後で再開できるようにして、 BSD シグナル方式 (semantics) と互換性のある動作を提供する。
.\" (The
.\" .I sa_sigaction
.\" field was added in Linux 2.1.86.)
-シグナルハンドラは一つではなく、三つの引き数を持つ。この場合は \fIsa_handler\fP のかわりに \fIsa_sigaction\fP
-を設定しなければならない このフラグはシグナルハンドラを設定する際にのみ意味を持つ。
+The signal handler takes three arguments, not one. In this case,
+\fIsa_sigaction\fP should be set instead of \fIsa_handler\fP. This flag is only
+meaningful when establishing a signal handler.
.RE
.PP
\fIsa_sigaction\fP のパラメータ \fIsiginfo_t\fP は以下の要素を持つ構造体である:
シグナルハンドラ内から安全に呼び出すことができる、 async\-signal\-safe functions (非同期シングルで安全な関数) の
リストについては \fBsignal\fP(7) を参照。
.SS 非公式
-\fBSA_SIGINFO\fP が導入される前は、 \fIstruct sigcontext\fP 型の二番目の引き数と一緒に \fIsa_handler\fP
-を使用することで、 いくつかの追加の情報を入手することができた。 詳細についてはカーネルソースの関連部分を見てほしい。
-現在はこの使用法は廃止されている。
+Before the introduction of \fBSA_SIGINFO\fP it was also possible to get some
+additional information, namely by using a \fIsa_handler\fP with second argument
+of type \fIstruct sigcontext\fP. See the relevant Linux kernel sources for
+details. This use is obsolete now.
.SH バグ
2.6.13 以前のカーネルでは、 \fIsa_flags\fP に \fBSA_NODEFER\fP を指定した場合、
ハンドラが実行中に配送されたシグナル自身がマスクされなくなるだけでなく、 \fIsa_mask\fP に指定されたシグナルもマスクされなくなる。
\fBsigqueue\fP(3), \fBsigsetops\fP(3), \fBsigvec\fP(3), \fBcore\fP(5),
\fBsignal\fP(7)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.40 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.50 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。