Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Oct 2002 09:00:09 -0800 (PST)
From:      Andriy Gapon <avg@icyb.net.ua>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/44417: ipfw layer2 rules are not checked for ether_output_frame() on bridged interface
Message-ID:  <200210281700.g9SH09WS011503@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/44417; it has been noted by GNATS.

From: Andriy Gapon <avg@icyb.net.ua>
To: FreeBSD-gnats-submit@FreeBSD.org
Cc: freebsd-ipfw@freebsd.org
Subject: Re: kern/44417: ipfw layer2 rules are not checked for
 ether_output_frame() on bridged interface
Date: Mon, 28 Oct 2002 11:47:41 -0500 (EST)

 Here's a patch that I think fixes this problem, it works for me.
 If anybody else could test this that would be great.
 
 --- if_ethersubr.c.orig	Wed Oct 23 15:27:08 2002
 +++ if_ethersubr.c	Wed Oct 23 15:28:06 2002
 @@ -388,9 +388,6 @@
  		if (m->m_flags == PACKET_TAG_DUMMYNET)
  			rule = ((struct dn_pkt *)m)->rule;
 
 -	if (rule)	/* packet was already bridged */
 -		goto no_bridge;
 -
  	if (BDG_ACTIVE(ifp) ) {
  		struct ether_header *eh; /* a ptr suffices */
 
 --- bridge.c.orig	Wed Oct 23 15:28:16 2002
 +++ bridge.c	Wed Oct 23 15:29:06 2002
 @@ -857,11 +857,11 @@
       * Additional restrictions may apply e.g. non-IP, short packets,
       * and pkts already gone through a pipe.
       */
 -    if (src != NULL && (
 +    if (
  #ifdef PFIL_HOOKS
  	((pfh = pfil_hook_get(PFIL_IN, &inetsw[ip_protox[IPPROTO_IP]].pr_pfh)) != NULL && bdg_ipf !=0) ||
  #endif
 -	(IPFW_LOADED && bdg_ipfw != 0))) {
 +	(IPFW_LOADED && bdg_ipfw != 0)) {
 
  	int i;
 
 
 -- 
 Andriy Gapon
 *
 "Never try to outstubborn a cat." Lazarus Long, "Time Enough for Love"
 

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200210281700.g9SH09WS011503>