From owner-FreeBSD-users-jp@jp.freebsd.org  Mon May 17 11:41:01 1999
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id LAA67376;
	Mon, 17 May 1999 11:41:01 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from nsx.kgc.co.jp (qmailr@nsx.kgc.co.jp [210.226.77.146])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with SMTP id LAA67369
	for <FreeBSD-users-jp@jp.freebsd.org>; Mon, 17 May 1999 11:40:56 +0900 (JST)
	(envelope-from candy@kgc.co.jp)
Received: (qmail 29160 invoked from network); 17 May 1999 11:40:48 +0900
Received: from ssm.kgc.co.jp (qmailr@210.226.77.148)
  by nsx.kgc.co.jp with SMTP; 17 May 1999 11:40:48 +0900
Received: (qmail 29104 invoked from network); 17 May 1999 11:40:47 +0900
Received: from xxx.kgc.co.jp (172.31.2.3)
  by ssm.kgc.co.jp with SMTP; 17 May 1999 11:40:47 +0900
Received: from localhost by xxx.kgc.co.jp (8.8.8/3.3W8:95062916) id LAA09893; Mon, 17 May 1999 11:40:47 +0900 (JST)
To: FreeBSD-users-jp@jp.freebsd.org
In-Reply-To: Your message of "Sat, 16 Jan 1999 02:02:28 +0900"
	<19990116020228F.yoshiaki@kt.rim.or.jp>
References: <19990116020228F.yoshiaki@kt.rim.or.jp>
X-Mailer: Mew version 1.93 on Emacs 19.28 / Mule 2.3 (SUETSUMUHANA)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Message-Id: <19990517114046I.candy@kgc.co.jp>
Date: Mon, 17 May 1999 11:40:46 +0900
From: Toshihiro Kanda <candy@kgc.co.jp>
X-Dispatcher: imput version 980905(IM100)
Lines: 55
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+990430
X-Sequence: FreeBSD-users-jp 42335
Subject: [FreeBSD-users-jp 42335] Re: FreeBSD 3.1:Broad cast routing 
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org
X-Originator: candy@kgc.co.jp

From: Yoshiaki Uchikawa <yoshiaki@kt.rim.or.jp>
Subject: [FreeBSD-users-jp 42288] FreeBSD 3.1:Broad cast routing 
Date: Sat, 16 Jan 1999 02:02:28 +0900

> FreeBSD 3.1 $B$r;H$C$F%k!<%?!<$r$D$/$C$?>l9g$K%k!<%?1[$7$N%M%C%H%o!<%/$X(B
> $B$N%V%m!<%I%-%c%9%H$rDL$9$K$O$I$&$9$l$P$h$m$7$$$N$G$7$g$&(B?

$B2<5-$N%Q%C%A$G$*K>$_DL$j$K$J$k$H;W$$$^$9!#$3$N%3!<%I$O(B 4.4BSD $B$K$O$b$H(B
$B$b$HB8:_$7$?$,!"(BFreeBSD $B$G$O(B($B$?$V$s(B)$B%]%j%7!<$K$h$C$F:o=|$5$l$?%3!<%I$G(B
$B$9!#$G!"$&$A$+$o$5$s$K$O8@$&$^$G$bL5$$$H$O;W$$$^$9$,!"%V%m!<%I%-%c%9%H(B
$B%Q%1%C%H$r%U%)%o!<%I$9$k;v$N4m81@-$rG'<1$7$?>e$G$4MxMQ2<$5$$!#(B

$B;29M(B: <URL:http://home.jp.FreeBSD.ORG/cgi-bin/showmail/tech-jp/268>

1. /usr/src/sys/netinet $B$G!"0J2<$N%Q%C%A$rEv$F$F$/$@$5$$!#(B
   # cd /usr/src/sys/netinet
   # patch -p < this_patch
2. $B%+!<%M%k%3%s%U%#%0%l!<%7%g%s$K(B
	options DIRECTED_BROADCAST
   $B$rDI2C$7$F!"%+!<%M%k$r%3%s%Q%$%k!&%$%s%9%H!<%k$7$F$/$@$5$$!#(B

$B$3$N%Q%C%A$OL5J]>Z$G$9!#(B
$B8N:#ED9(;J;a$K46<UCW$7$^$9!#(B

-----8<----------8<----------8<-----
--- ip_input.c.orig	Tue Jan 12 21:25:00 1999
+++ ip_input.c	Sun Apr  4 14:27:14 1999
@@ -486,7 +486,11 @@
 					 ip_fw_fwd_addr->sin_addr.s_addr)
 			goto ours;
 #endif
-		if (ia->ia_ifp && ia->ia_ifp->if_flags & IFF_BROADCAST) {
+		if (ia->ia_ifp && ia->ia_ifp->if_flags & IFF_BROADCAST
+#ifdef DIRECTED_BROADCAST
+		  && ia->ia_ifp == m->m_pkthdr.rcvif
+#endif
+						) {
 			if (satosin(&ia->ia_broadaddr)->sin_addr.s_addr ==
 			    ip->ip_dst.s_addr)
 				goto ours;
@@ -1470,6 +1474,9 @@
 	}
 
 	error = ip_output(m, (struct mbuf *)0, &ipforward_rt, 
+#ifdef DIRECTED_BROADCAST
+			IP_ALLOWBROADCAST |
+#endif
 			  IP_FORWARDING, 0);
 	if (error)
 		ipstat.ips_cantforward++;

-----8<----------8<----------8<-----

$B?@EDIR9-(B <candy@kgc.co.jp>

