From owner-man-jp-reviewer@jp.freebsd.org  Sun Feb  4 02:05:10 2001
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id CAA48450;
	Sun, 4 Feb 2001 02:05:10 +0900 (JST)
	(envelope-from owner-man-jp-reviewer@jp.FreeBSD.org)
Received: from mgate08.so-net.ne.jp (mgate08.so-net.ne.jp [210.139.254.155])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id CAA48445
	for <man-jp-reviewer@jp.freebsd.org>; Sun, 4 Feb 2001 02:05:10 +0900 (JST)
	(envelope-from yt-kage@cb3.so-net.ne.jp)
Received: from mail.cb3.so-net.ne.jp (mail.cb3.so-net.ne.jp [210.139.254.37])
	by mgate08.so-net.ne.jp (8.8.8+3.0Wbeta9/3.6W00122022) with ESMTP id CAA13812
	for <man-jp-reviewer@jp.freebsd.org>; Sun, 4 Feb 2001 02:05:09 +0900 (JST)
Received: from localhost (p848313.ickwpc00.ap.so-net.ne.jp [210.132.131.19])
	by mail.cb3.so-net.ne.jp (8.8.8/3.7W99081617) with ESMTP id CAA19681
	for <man-jp-reviewer@jp.freebsd.org>; Sun, 4 Feb 2001 02:05:03 +0900 (JST)
To: man-jp-reviewer@jp.freebsd.org
X-Mailer: Mew version 1.94.2 on XEmacs 21.1 (Channel Islands)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Message-Id: <20010203212200C.yt-kage@cb3.so-net.ne.jp>
Date: Sat, 03 Feb 2001 21:22:00 +0900
From: Yoshiteru Kageyama <yt-kage@cb3.so-net.ne.jp>
X-Dispatcher: imput version 20000228(IM140)
Lines: 189
Reply-To: man-jp-reviewer@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+000315
X-Sequence: man-jp-reviewer 3288
Subject: [man-jp-reviewer 3288] sigaction.2 
Errors-To: owner-man-jp-reviewer@jp.freebsd.org
Sender: owner-man-jp-reviewer@jp.freebsd.org
X-Originator: yt-kage@cb3.so-net.ne.jp

 $B0~;3$G$9!#(B
sigaction.2 $B$N:9J,E,MQ7k2L$G$9!#(B

$B!&=q<0$N9=B$BN@k8@$,JQ99$K$J$C$F$$$^$9!#(B
$B!&(BSA_SIGINFO $B%S%C%H$N@_DjJ,$,A}$($?$3$H$G!"$=$N@bL@$,A}$($^$7$?!#(B
$B!&;HMQNc$,$=$l$KH<$C$F=q$-49$o$C$F$$$^$9!#$=$NItJ,$O;v<B>e?75,(B
  $BLu$H$$$C$?46$8$G$9!#(B

--- sigaction.2	Sat Feb  3 21:19:21 2001
+++ sigaction.2.new	Sat Feb  3 21:19:44 2001
@@ -30,7 +30,7 @@
 .\" SUCH DAMAGE.
 .\"
 .\"	From: @(#)sigaction.2	8.2 (Berkeley) 4/3/94
-.\" $FreeBSD: src/lib/libc/sys/sigaction.2,v 1.19.2.1 1999/08/29 14:49:26 peter Exp $
+.\" $FreeBSD: src/lib/libc/sys/sigaction.2,v 1.22.2.5 2000/12/29 14:44:54 ru Exp $
 .\"
 .\" 2001/01/01 horikawa@jp.FreeBSD.org
 .\" sigvec.2 $B$r99?7$9$k>l9g$O!"6&DLItJ,$NB?$$(B sigaction.2 $B$bF1;~$K99?7(B
@@ -42,13 +42,23 @@
 .Sh $BL>>N(B
 .Nm sigaction
 .Nd $B%=%U%H%&%'%"%7%0%J%k5!G=(B
+.Sh $B%i%$%V%i%j(B
+.Lb libc
 .Sh $B=q<0(B
 .Fd #include <signal.h>
 .Bd -literal
 struct sigaction {
-	void     (*sa_handler)();  /* $B%7%0%J%k%O%s%I%i(B */
-	sigset_t sa_mask;          /* $BE,MQ$9$k%7%0%J%k%^%9%/(B */
-	int	 sa_flags;         /* $B8e=R$N%7%0%J%k%*%W%7%g%s$r;2>H(B */
+	/*
+	 * SA_SIGINFO $B%U%i%0$,;HMQ$5$l$F$$$J$$>l9g$N(B
+	 * SIG_DFL $B$*$h$S(B SIG_IGN $BMQ$N%7%0%J%k%O%s%I%i4X?t(B
+	 */
+	void     (*sa_handler)(int);
+
+	/* SA_SIGINFO $B%U%i%0$r;HMQ$9$k>l9g$N%7%0%J%k%O%s%I%i4X?t(B */
+	void     (*sa_sigaction)(int, siginfo_t *, void *);
+
+	sigset_t sa_mask;            /* $BE,MQ$9$k%7%0%J%k%^%9%/(B */
+	int	 sa_flags;           /* $B8e=R$N%7%0%J%k%*%W%7%g%s;2>H(B */
 };
 .Ed
 .Ft int
@@ -184,7 +194,7 @@
 $B$N;R%W%m%;%9$,=*N;$9$k$^$G%V%m%C%/$7!"<!$K(B
 .Va errno
 $B$r(B
-.Dv ECHILD
+.Er ECHILD
 $B$K@_Dj$7$F(B -1 $B$rJV$7$^$9!#(B
 .It Dv SA_ONSTACK
 $B$3$N%S%C%H$r@_Dj$9$k$H!"%7%9%F%`$O!"(B
@@ -199,12 +209,22 @@
 $B$3$N%S%C%H$r@_Dj$9$k$H!"%7%0%J%k$,G[?.$5$l$?=V4V$K!"%O%s%I%i$,(B
 .Dv SIG_DFL
 $B$K%j%;%C%H$5$l$^$9!#(B
-.\" Still missing:
-.\" .It Dv SA_SIGINFO
+.It Dv SA_SIGINFO
+$B$3$N%S%C%H$,@_Dj$5$l$F$$$k>l9g!"%O%s%I%i4X?t$O!"(B
+sigaction $B9=B$BN$N(B sa_sigaction $B%a%s%P$G<($5$l$k$b$N$H(B
+$B8+$J$5$l!"@h$K<($7$?%W%m%H%?%$%W$b$7$/$O8e$G<($9(B
+.Sx $B;HMQNc(B
+$B$K%^%C%A$7$J$/$F$O$J$j$^$;$s!#(B
+$B$3$N%S%C%H$O!"(B
+.Dv SIG_DFL
+$B$b$7$/$O(B
+.Dv SIG_IGN
+$B$r3d$jEv$F$k;~$K$O@_Dj$7$F$O$$$1$^$;$s!#(B
 .El
 .Pp
-$B0J2<$N%j%9%H$N%7%9%F%`%3!<%kCf$K%7%0%J%k$,JdB-$5$l$k$H!"8F$S=P$7$O!"%(%i!<(B
-.Dv EINTR
+$B0J2<$N%j%9%H$N%7%9%F%`%3!<%kCf$K%7%0%J%k$,JdB-$5$l$k$H!"8F$S=P$7$O!"(B
+$B%(%i!<(B
+.Er EINTR
 $B$G6/@)=*N;$5$l$k$+!"MW5a$h$jC;$$%G!<%?E>Aw$GLa$k$+!"(B
 $B$^$?$O:F3+$5$l$^$9!#(B
 $BJ]N1Cf$N%7%9%F%`%3!<%k$N:F3+$O!"(B
@@ -245,13 +265,14 @@
 .Aq Pa signal.h
 $B$HF1$8$G$9!#(B
 .Bl -column SIGVTALARMXX "create core imagexxx"
-.It Sy "  $BL>>N(B" "	$B%G%U%)%k%H%"%/%7%g%s(B" "	$B@bL@(B"
+.It Sy "$BL>>N(B	$B%G%U%)%k%H%"%/%7%g%s(B	$B@bL@(B"
 .It Dv SIGHUP No "	$B%W%m%;%9$N=*N;(B" "	$BC<Kv%i%$%s$N%O%s%0%"%C%W(B"
 .It Dv SIGINT No "	$B%W%m%;%9$N=*N;(B" "	$B%W%m%0%i%`$N3d9~$_(B"
 .It Dv SIGQUIT No "	$B%3%"%$%a!<%8$N:n@.(B" "	$B%W%m%0%i%`$N=*N;(B"
 .It Dv SIGILL No "	$B%3%"%$%a!<%8$N:n@.(B" "	$BIT@5$JL?Na(B"
 .It Dv SIGTRAP No "	$B%3%"%$%a!<%8$N:n@.(B" "	$B%H%i%C%W$NDI@W(B"
-.It Dv SIGABRT No "	$B%3%"%$%a!<%8$N:n@.(B" Xr 	abort 3 $B$N8F$S=P$7(B ($B0JA0$N(B
+.It Dv SIGABRT No "	$B%3%"%$%a!<%8$N:n@.(B" Ta Xr	abort 3 
+$B$N8F$S=P$7(B ($B0JA0$N(B
 .Dv SIGIOT )
 .It Dv SIGEMT No "	$B%3%"%$%a!<%8$N:n@.(B" "	$B<B9T$5$l$?L?Na$N%(%_%e%l!<%H(B"
 .It Dv SIGFPE No "	$B%3%"%$%a!<%8$N:n@.(B" "	$BIbF0>.?tNc30(B"
@@ -411,23 +432,76 @@
 $B$,%(%i!<$NM}M3$r<($9$h$&$K@_Dj$5$l$F$$$k$3$H$rI=$o$7$^$9!#(B
 .Pp
 .Sh $B;HMQNc(B
-$B%O%s%I%i%k!<%A%s$O!"0J2<$N$h$&$K@k8@$G$-$^$9!#(B
-.Bd -literal -offset indent
-void handler(sig, code, scp)
-int sig, code;
-struct sigcontext *scp;
-.Ed
+$B%O%s%I%i$,%^%C%A$9$k2DG=@-$N$"$k%W%m%H%?%$%W$O(B 3 $B$D$"$j$^$9!#(B
+.Bl -tag -offset indent -width short
+.It ANSI C:
+.Ft void
+.Fn handler int ;
+.It $BEAE}E*$J(B BSD $B%9%?%$%k(B:
+.Ft void
+.Fn handler int "int code" "struct sigcontext *scp" ;
+.It POSIX $B$N(B SA_SIGINFO:
+.Ft void
+.Fn handler int "siginfo_t *info" "void *context" ;
+.El
+.Pp
+$B%U%i%0Cf$G(B SA_SIGINFO $B%S%C%H$,@_Dj$5$l$F$$$k>l9g!"(B
+$B%O%s%I%i4X?t$O(B SA_SIGINFO $B%W%m%H%?%$%W$K%^%C%A$7$J$/$F$O$J$j$^$;$s!#(B
+$B$=$N$?$a!"%O%s%I%i4X?t$O(B
+.Dv sigaction
+$B9=B$BN$N(B
+.Dv sa_sigaction
+$B%a%s%P$,;X$7<($9$b$N$G$J$/$F$O$J$j$^$;$s!#(B
+$B$3$NJ}K!$G(B SIG_DFL $B$"$k$$$O(B SIG_IGN $B$r3d$jEv$F$F$O$$$1$J$$$3$H$K(B
+$BCm0U$7$F$/$@$5$$!#(B
+.Pp
+SA_SIGINFO $B%U%i%0$,@_Dj$5$l$F$$$J$$>l9g!"%O%s%I%i4X?t$O(B
+ANSI C $B$b$7$/$OEAE}E*$J(B BSD $B%W%m%H%?%$%W$N$I$A$i$+$K(B
+$B%^%C%A$7$J$/$F$O$J$i$:!"(B
+.Dv sigaction
+$B9=B$BN$N(B
+.Dv sa_handler
+$B%a%s%P$,;X$7<($9$b$N$G$J$/$F$O$J$j$^$;$s!#(B
+$B<B:]$K$O!"(B
+.Fx
+$B$O>o$K8e<T$G$"$k(B BSD $B%W%m%H%?%$%W$N(B 3 $B$D$N0z?t$rAw$j$^$9$7!"(B
+ANSI C $B%W%m%H%?%$%W$O$=$N%5%V%;%C%H$K$J$C$F$$$^$9$N$G!"(B
+$B$I$A$i$G$bF0:n$7$^$9!#(B
+.Fx
+$B%$%s%/%k!<%I%U%!%$%k$N(B
+.Dv sa_handler
+$B%a%s%P@k8@$O!"(B(POSIX $B$,5AL3$E$1$F$$$k$N$G(B) ANSI C $B$N$b$N$G$9!#(B
+$B$=$N$?$a!"7Y9p%a%C%;!<%8$rL5$/$7$F%3%s%Q%$%k$9$k$K$O(B
+BSD $B%9%?%$%k$N4X?t$N%]%$%s%?$r%-%c%9%H$9$kI,MW$,$"$j$^$9!#(B
+$BEAE}E*$J(B BSD $B%9%?%$%k$O0\?"@-$,$J$/!"$=$N%1!<%Q%S%j%F%#$b(B
+SA_SIGINFO $B%O%s%I%i$N40A4$J%5%V%;%C%H$K$J$C$F$$$^$9$N$G!"(B
+BSD $B%9%?%$%k$r;H$&$3$H$O?d>)$5$l$^$;$s!#(B
 .Pp
 .Fa sig
-$B$O!"%O!<%I%&%'%"%(%i!<$H%H%i%C%W$,%^%C%W$5$l$F$$$k%7%0%J%kHV9f$G$9!#(B
+$B0z?t$O%7%0%J%kHV9f$G!"(B
+.Dv SIG...
+$BCM$O(B <signal.h> $B$+$i=P$F$-$?$b$N$G$9!#(B
+BSD $B%9%?%$%k$N%O%s%I%i$N(B
 .Fa code
-$B$O!"%O!<%I%&%'%"$,Ds6!$9$kDj?t$+%3!<%I$G$"$k%Q%i%a!<%?$G$9!#(B
+$B0z?t$*$h$S(B SA_SIGINFO $B%O%s%I%i$X$N(B
+.Dv info
+$B0z?t$N(B
+.Dv si_code
+$B%a%s%P$K$O!"%7%0%J%k$NH/@8M}M3$r@bL@$7$??tCM%3!<%I$,(B
+$B4^$^$l$F$$$^$9!#DL>o!"$3$N?tCM%3!<%I$O(B
+<sys/signal.h> $B$K$"$k(B
+.Dv SI_...
+$BCM$N(B 1 $B$D$G$"$k$+!"$b$7$/$O%7%0%J%k$KFC2=$7$?%3!<%I$9$J$o$A(B
+SIGFPE $B$KBP$9$k(B
+.Dv FPE_...
+$BCM$G$9!#(B
+BSD $B%9%?%$%k$N%O%s%I%i$N(B
 .Fa scp
-$B$O!"(B
-.Fa sigcontext
-$B9=B$BN$N%]%$%s%?(B (
-.Aq Pa signal.h 
-$B$GDj5A$5$l$F$$$^$9(B) $B$G!"%7%0%J%kA0$N%3%s%F%-%9%H$r2sI|$9$k$?$a$K;HMQ$5$l$^$9!#(B
+$B0z?t$O(B sigcontext $B9=B$BN$N%$%s%9%?%s%9$r;X$7$F$$$^$9!#(B
+.Pp
+POSIX SA_SIGINFO $B%O%s%I%i$KBP$9$k(B
+.Fa context
+$B0z?t$O!"(Bucontext_t $B$N%$%s%9%?%s%9$r;X$7$F$$$^$9!#(B
 .Sh $B%(%i!<(B
 $B0J2<$N$&$A(B 1 $B$D$,H/@8$9$k$H!"(B
 .Fn sigaction
