From owner-freebsd-bugs@FreeBSD.ORG Sun Sep 19 17:40:24 2004 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 347E716A4CF for ; Sun, 19 Sep 2004 17:40:24 +0000 (GMT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0B60143D45 for ; Sun, 19 Sep 2004 17:40:24 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.11/8.12.11) with ESMTP id i8JHeNPW046906 for ; Sun, 19 Sep 2004 17:40:23 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.11/8.12.11/Submit) id i8JHeN0j046881; Sun, 19 Sep 2004 17:40:23 GMT (envelope-from gnats) Resent-Date: Sun, 19 Sep 2004 17:40:23 GMT Resent-Message-Id: <200409191740.i8JHeN0j046881@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Kazunori_Fujiwara Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7F56D16A4CF for ; Sun, 19 Sep 2004 17:39:03 +0000 (GMT) Received: from f.pyon.org (i220-220-111-153.s05.a013.ap.plala.or.jp [220.220.111.153]) by mx1.FreeBSD.org (Postfix) with SMTP id AC5CE43D5C for ; Sun, 19 Sep 2004 17:39:02 +0000 (GMT) (envelope-from fujiwara@wide.ad.jp) Received: (qmail 1208 invoked from network); 19 Sep 2004 17:39:01 -0000 Received: from localhost6 (HELO localhost) (0000:0000:0000:0000:0000:0000:0000:0001) by localhost6 with SMTP; 19 Sep 2004 17:39:01 -0000 Message-Id: <20040920.023859.74753252.fujiwara@pyon.org> Date: Mon, 20 Sep 2004 02:38:59 +0900 (JST) From: Kazunori_Fujiwara To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: kern/71910: ipfw forward does not work X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Kazunori_Fujiwara List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 19 Sep 2004 17:40:24 -0000 >Number: 71910 >Category: kern >Synopsis: ipfw forward does not work >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Sep 19 17:40:23 GMT 2004 >Closed-Date: >Last-Modified: >Originator: Kazunori_Fujiwara >Release: FreeBSD 5.3-BETA4 i386 and 6-CURRENT >Organization: JPRS/WIDE Project >Environment: System: FreeBSD f.pyon.org 5.3-BETA4 FreeBSD 5.3-BETA4 #5: Sat Sep 18 11:44:33 JST 2004 fujiwara@f.pyon.org:/usr/obj/usr/src/sys/SC5 i386 System: FreeBSD tree.private 6.0-CURRENT FreeBSD 6.0-CURRENT #8: Mon Sep 20 00:38:18 JST 2004 fujiwara@tree.private:/usr/src/sys/i386/compile/TREE i386 >Description: 'ipfw fwd' don't forward packet for specified destination when packet ip_src is the same machine's. I checked this on 5.3-BETA4 and 6-current >How-To-Repeat: enable kernel option IPFIREWALL and IPFIREWALL_FORWARD ipfw add fwd remote ip from myaddr to any >Fix: Index: ip_output.c =================================================================== RCS file: /FreeBSD-CVS/src/sys/netinet/ip_output.c,v retrieving revision 1.225.2.3 diff -u -b -r1.225.2.3 ip_output.c --- ip_output.c 15 Sep 2004 15:07:09 -0000 1.225.2.3 +++ ip_output.c 19 Sep 2004 15:51:42 -0000 @@ -713,7 +713,7 @@ /* Or forward to some other address? */ fwd_tag = m_tag_find(m, PACKET_TAG_IPFORWARD, NULL); if (fwd_tag) { - if (!in_localip(ip->ip_src) && !in_localaddr(ip->ip_dst)) { + if (!in_localaddr(ip->ip_dst)) { dst = (struct sockaddr_in *)&ro->ro_dst; bcopy((fwd_tag+1), dst, sizeof(struct sockaddr_in)); m->m_flags |= M_SKIP_FIREWALL; >Release-Note: >Audit-Trail: >Unformatted: