From owner-man-jp-reviewer@jp.freebsd.org  Wed Dec 29 22:50:40 1999
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id WAA30008;
	Wed, 29 Dec 1999 22:50:40 +0900 (JST)
	(envelope-from owner-man-jp-reviewer@jp.FreeBSD.org)
Received: from serio.al.rim.or.jp (serio.al.rim.or.jp [202.247.191.123])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id WAA30003
	for <man-jp-reviewer@jp.freebsd.org>; Wed, 29 Dec 1999 22:50:40 +0900 (JST)
	(envelope-from k-horik@yk.rim.or.jp)
Received: from relay.rim.or.jp by serio.al.rim.or.jp (8.8.8/3.7W/HMX-12) with ESMTP id WAA11236 for <man-jp-reviewer@jp.freebsd.org>; Wed, 29 Dec 1999 22:50:37 +0900 (JST)
Received: from localhost by relay.rim.or.jp (8.8.8/3.7W/HMX-12)
	id WAA22151; Wed, 29 Dec 1999 22:50:38 +0900 (JST)
	(envelope-from k-horik@yk.rim.or.jp)
To: man-jp-reviewer@jp.freebsd.org
X-Mailer: Mew version 1.93 on Emacs 19.34 / Mule 2.3 (SUETSUMUHANA)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Message-Id: <19991229224958A.k-horik@yk.rim.or.jp>
Date: Wed, 29 Dec 1999 22:49:58 +0900
From: Kazuo Horikawa <k-horik@yk.rim.or.jp>
X-Dispatcher: imput version 980905(IM100)
Lines: 169
Reply-To: man-jp-reviewer@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+990727
X-Sequence: man-jp-reviewer 1877
Subject: [man-jp-reviewer 1877] (check) ng_bpf.8
Errors-To: owner-man-jp-reviewer@jp.freebsd.org
Sender: owner-man-jp-reviewer@jp.freebsd.org
X-Originator: k-horik@yk.rim.or.jp

 ng_bpf.8 $B$N%A%'%C%/$G$9!#(B

 o$B!V%P!<%/%l%$!W(B -> $B!V(BBerkeley$B!W(B
   $BB>$N%^%K%e%"%k$NI=8=$K$"$o$;$^$7$?!#(B
 o With each hook is associated a bpf(8) filter program which is
   applied to incoming data only, a destination hook for matching
   packets, a destination hook for non-matching packets, and various
   statistics counters.
   $B$N<g8l$O!"(Ba bpf(8) $B$+$iJ8Kv$^$G$@$H;W$$$^$9!#(B
 o$B!V%G%9%F%#%M!<%7%g%s!W(B->$B!V08@h!W(B
   $B8e<T$NJ}$,$o$+$j0W$$$H9M$($^$7$?!#(B
 o $B:G=i$N:9J,$N:G8e$N$"$?$j(B
   A new filter may be installed using the NGM_BPF_SET_FILTER
   control message. $B$N(B may $B$O5v2D(B/$B2DG=@-$N0UL#$G$9!#(B
 o 116 $B9TL\IU6a(B
   The program must be a valid bpf(8) program or else EINVAL is
   returned. $B$O!"(B
   $B%W%m%0%i%`$,(B valid $B$J(B bpf(8) $B%W%m%0%i%`$G$O$J$$>l9g(B
   EINVAL $B$,JV$k$H$$$&0UL#$G$"$j!"(B
   must $B$O(B be a valid bpf(8) program $B$N$_$K$+$+$j!"(Bor $B0J9_$K$O1F6A$7$J(B
   $B$$$H;W$$$^$9!#(B
 o 148 $B9TL\$/$i$$(B
   Although loading the module should fail if "net/bpf_filter.c"
   already exists in the kernel, currently it does not, and the
   duplicate copies of the file do not interfere.
   $B$O!"(Bloading ... $B$O(B fail $B$9$Y$-$@$,!"8=:_$O$=$&$J$C$F$$$J$$(B
   $B$H$$$&0UL#$@$H;W$$$^$9!#(B


--- ng_bpf.8~	Wed Dec 29 19:30:55 1999
+++ ng_bpf.8	Wed Dec 29 20:56:15 1999
@@ -41,41 +41,40 @@
 .Os FreeBSD 4.0
 .Sh $BL>>N(B
 .Nm ng_bpf
-.Nd $B%P!<%/%l%$%Q%1%C%H%U%#%k%?(B netgraph $B%N!<%I%?%$%W(B
+.Nd Berkeley $B%Q%1%C%H%U%#%k%?(B netgraph $B%N!<%I%?%$%W(B
 .Sh $B=q<0(B
 .Fd #include <net/bpf.h>
 .Fd #include <netgraph/ng_bpf.h>
 .Sh $B2r@b(B
 .Nm bpf
-$B%N!<%I%?%$%W$O%P!<%/%l%$%Q%1%C%H%U%#%k%?(B (
-.Xr bpf 8 $B;2>H(B )
-$B$r(B Netgraph $B%M%C%H%o!<%/$rEA$o$k%G!<%?$K(B
-$BE,MQ$9$k$3$H$r2DG=$K$7$^$9!#(B
-$B3F%N!<%I$OG$0U$KL>A0$E$1$i$l$?%U%C%/$KBP$9$kG$0U$N?t$N@\B3$r5v$7$^$9!#(B
- $BE~Ce$9$k%G!<%?$K$N$_E,MQ$5$l$k(B
+$B%N!<%I%?%$%W$O!"(BBerkeley $B%Q%1%C%H%U%#%k%?(B (
 .Xr bpf 8
-$B%U%#%k%?%W%m%0%i%`$O!"(B
-$B%^%C%A$9$k%Q%1%C%H!"$7$J$$%Q%1%C%H$N%G%9%F%#%M!<%7%g%s%U%C%/$d!"(B
-$B$5$^$6$^$JE}7W%+%&%s%?$K4XO"IU$1$i$l$^$9!#(B
+$B;2>H(B) $B$r!"(BNetgraph $B%M%C%H%o!<%/$rDL2a$9$k%G!<%?$KE,MQ2DG=$K$7$^$9!#(B
+$B3F%N!<%I$O!"G$0U$KL>A0$E$1$i$l$?%U%C%/$KBP$9$kG$0U$N?t$N@\B3$r5v$7$^$9!#(B
+$B3F%U%C%/$KBP$7!"E~Ce$9$k%G!<%?$K$N$_E,MQ$5$l$k(B
+.Xr bpf 8
+$B%U%#%k%?%W%m%0%i%`!"(B
+$B%^%C%A$9$k%Q%1%C%H$N08@h%U%C%/!"(B
+$B%^%C%A$7$J$$%Q%1%C%H$N08@h%U%C%/!"(B
+$B$5$^$6$^$JE}7W%+%&%s%?$,4XO"IU$1$i$l$^$9!#(B
 .Pp
 .Xr bpf 8
 $B%W%m%0%i%`$OId9f$J$7@0?t$rJV$7$^$9!#(B
-$B$=$l$ODL>o$O!"JV$9$Y$-%Q%1%C%H$N%W%l%U%#%C%/%9$ND9$5$H$7$F2r<a$5$l$^$9!#(B
-$B$3$N%N!<%I%?%$%W$N%3%s%F%-%9%H$G$O(B
-0 $B$,JV$k$3$H$O%^%C%A$7$J$+$C$?$3$H$r0UL#$7$^$9!#(B
+$B$3$l$O!"DL>o!"JV$5$l$k%Q%1%C%H$N%W%l%U%#%C%/%9D9$H$7$F2r<a$5$l$^$9!#(B
+$B$3$N%N!<%I%?%$%W$K$*$$$F$O!"(B
+0 $B$,JV$5$l$k$H$-$O!"%^%C%A$7$J$+$C$?$3$H$r0UL#$7$^$9!#(B
 $B$=$N>l9g$O!"(B
-$B%Q%1%C%HA4BN$,!"%^%C%A$7$J$$>l9g$N%G%9%F%#%M!<%7%g%s%U%C%/$K(B
-$BAw$i$l$^$9!#(B
-0 $B$h$jBg$-$JCM$,JV$C$?$H$-$O!"%Q%1%C%H$O$=$ND9$5$K@Z$j5M$a$i$l!"(B
-$B%^%C%A$7$?>l9g$N%G%9%F%#%M!<%7%g%s%U%C%/$KAw$i$l$k$3$H$K$J$j$^$9!#(B
-$B%G%9%F%#%M!<%7%g%s%U%C%/$N$I$A$i$+!"$b$7$/$ON>J}$,(B
-$B6u$NJ8;zNs$G$"$C$?$j!"B8:_$7$J$+$C$?$j$9$k$3$H$,$"$j$^$9!#(B
-$B$=$N>l9g$O%Q%1%C%H$O<N$F$i$l$^$9!#(B
+$B%Q%1%C%HA4BN$,!"%^%C%A$7$J$$>l9g$N08@h%U%C%/$KAw$i$l$^$9!#(B
+0 $B$h$jBg$-$JCM$,JV$5$l$k$H$-$O!"%Q%1%C%H$O$=$ND9$5$K@Z$j5M$a$i$l!"(B
+$B%^%C%A$7$?>l9g$N08@h%U%C%/$KAw$i$l$^$9!#(B
+$B08@h%U%C%/$N$I$A$i$+$b$7$/$ON>J}$,!"(B
+$B6uJ8;zNs$G$"$C$?$jB8:_$7$J$$$3$H$b2DG=$G$9!#(B
+$B$3$N>l9g!"%Q%1%C%H$O<N$F$i$l$^$9!#(B
 .Pp
 $B?7$7$$%U%C%/$O!":G=i$K!"A4$F$N%Q%1%C%H$r<N$F$k$h$&$K@_Dj$5$l$^$9!#(B
-$B?7$7$$%U%#%k%?$O!"$*$=$i$/(B
+$B?7$7$$%U%#%k%?$O!"(B
 .Dv NGM_BPF_SET_FILTER
-$B@)8f%a%C%;!<%8$r;H$C$F%$%s%9%H!<%k$5$l$^$9!#(B
+$B@)8f%a%C%;!<%8$r;H$C$F%$%s%9%H!<%k2DG=$G$9!#(B
 .Sh $B%U%C%/(B
 $B$3$N%N!<%I%?%$%W$OG$0U$NL>A0$r;}$C$?!"$$$+$J$k?t$N%U%C%/$r$b(B
 $B%5%]!<%H$7$^$9!#(B
@@ -87,22 +86,21 @@
 $B$3$N%3%^%s%I$O!"(B
 $BE~Ce$7$?%G!<%?$KE,MQ$9$k%U%#%k%?%W%m%0%i%`$r!"(B
 $B%U%C%/$K%;%C%H$7$^$9!#(B
-$B0J2<$N9=B$BN$,0z?t$H$7$FM?$($i$l$J$1$l$P$J$j$^$;$s!#(B
+$B<!$N9=B$BN$r0z?t$H$7$FM?$($k$3$H$,I,MW$G$9!#(B
 .Bd -literal -offset 4n
 struct ngm_bpf_hookprog {
   char            thisHook[NG_HOOKLEN+1];   /* $B%U%C%/$NL>>N(B */
-  char            ifMatch[NG_HOOKLEN+1];    /* match dest hook */
-  char            ifNotMatch[NG_HOOKLEN+1]; /* !match dest hook */
-  int32_t         bpf_prog_len;             /* #isns in program */
-  struct bpf_insn bpf_prog[0];              /* bpf program */
+  char            ifMatch[NG_HOOKLEN+1];    /* $B%^%C%A;~$N08@h%U%C%/(B */
+  char            ifNotMatch[NG_HOOKLEN+1]; /* $BHs%^%C%A;~$N08@h%U%C%/(B */
+  int32_t         bpf_prog_len;             /* $B%W%m%0%i%`$NL?Na?t(B */
+  struct bpf_insn bpf_prog[0];              /* bpf $B%W%m%0%i%`(B */
 };
 .Ed
 .Pp
-$B99?7$5$l$k%U%C%/$O(B
+$B99?7$5$l$k%U%C%/$O!"(B
 .Dv thisHook
 $B$G;XDj$5$l$^$9!#(B
-BPF $B%W%m%0%i%`$O(B
-$BG[Ns(B
+BPF $B%W%m%0%i%`$O!"G[Ns(B
 .Dv bpf_prog
 $BCf$NL?Na$NJB$S$G$9!#(B
 $B$=$l$O(B
@@ -116,24 +114,24 @@
 $B$NL>A0$N%U%C%/$KAw$i$l$^$9!#(B
 $B$3$N%W%m%0%i%`$O!"M-8z$J(B
 .Xr bpf 8
-$B%W%m%0%i%`$G$"$k$+!"$5$b$J$/$P(B
+$B%W%m%0%i%`$G$"$k$3$H$,I,MW$G$"$j!"$=$&$G$J$$>l9g$K$O(B
 .Er EINVAL
-$B$rJV$5$J$1$l$P$J$j$^$;$s!#(B
+$B$,JV$5$l$^$9!#(B
 .It Dv NGM_BPF_GET_FILTER
-$B$3$N%3%^%s%I$O%U%C%/$NL>>N$N(B ASCII $BJ8;zNs$r0z?t$K$H$j$^$9!#(B
+$B$3$N%3%^%s%I$O!"%U%C%/$NL>>N$N(B ASCII $BJ8;zNs$r0z?t$K$H$j$^$9!#(B
 $B>e$K<($7$?!"BP1~$9$k(B
 .Dv "struct ngm_bpf_hookprog"
 $B$rJV$7$^$9!#(B
 .It Dv NGM_BPF_GET_STATS
-$B$3$N%3%^%s%I$O%U%C%/$NL>>N$N(B ASCII $BJ8;zNs$r0z?t$K$H$j!"(B
+$B$3$N%3%^%s%I$O!"%U%C%/$NL>>N$N(B ASCII $BJ8;zNs$r0z?t$K$H$j!"(B
 $B%U%C%/$K4XO"$7$?E}7WCM$r(B
 .Dv "struct ng_bpf_hookstat"
 $B$H$7$FJV$7$^$9!#(B
 .It Dv NGM_BPF_CLR_STATS
-$B$3$N%3%^%s%I$O%U%C%/$NL>>N$N(B ASCII $BJ8;zNs$r0z?t$K$H$j!"(B
+$B$3$N%3%^%s%I$O!"%U%C%/$NL>>N$N(B ASCII $BJ8;zNs$r0z?t$K$H$j!"(B
 $B%U%C%/$K4XO"$7$?E}7WCM$r%/%j%"$7$^$9!#(B
 .It Dv NGM_BPF_GETCLR_STATS
-$B$3$N%3%^%s%I$O(B
+$B$3$N%3%^%s%I$O!"(B
 .Dv NGM_BPF_GET_STATS
 $B$HF1MM$G$9$,!"BP>]$H$7$?E}7WCM$,%"%H%_%C%/$K%/%j%"$5$l$^$9!#(B
 .El
@@ -148,11 +146,9 @@
 $B$3$N%b%8%e!<%k$O%U%!%$%k(B
 .Dv "net/bpf_filter.c"
 $B$r%$%s%/%k!<%I$7$^$9!#(B
-$B$7$+$7!"%b%8%e!<%k$r%m!<%I$9$k$H$-!"(B
 .Dv "net/bpf_filter.c"
-$B$,4{$K%+!<%M%kFb$KB8:_$9$k$H!"<:GT$7$^$9!#(B
-$B$3$l$O8=:_$OB8:_$7$^$;$s!#(B
-$B$^$?!"%U%!%$%k$NJ#@=$5$l$?%3%T!<$O43>D$7$^$;$s!#(B
+$B$,4{$K%+!<%M%kFb$KB8:_$9$k>l9g!"%b%8%e!<%k$N%m!<%I$O<:GT$9$Y$-$G$9$,!"(B
+$B8=:_$3$&$J$C$F$*$i$:!"%U%!%$%k$NJ#@=$5$l$?%3%T!<$O43>D$7$^$;$s!#(B
 $B$7$+$7!"$3$l$O>-MhJQ99$5$l$k$+$b$7$l$^$;$s!#(B
 .Sh $B4XO"9`L\(B
 .Xr netgraph 4 ,
