From owner-freebsd-bugs@FreeBSD.ORG Tue Dec 27 11:00:47 2005 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org 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 8C28716A42B for ; Tue, 27 Dec 2005 11:00:47 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4D58743D91 for ; Tue, 27 Dec 2005 11:00:15 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id jBRB0C02029503 for ; Tue, 27 Dec 2005 11:00:12 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id jBRB0CaB029499; Tue, 27 Dec 2005 11:00:12 GMT (envelope-from gnats) Resent-Date: Tue, 27 Dec 2005 11:00:12 GMT Resent-Message-Id: <200512271100.jBRB0CaB029499@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, Meno Abels Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8D0D816A41F for ; Tue, 27 Dec 2005 10:51:20 +0000 (GMT) (envelope-from meno.abels@adviser.com) Received: from ms-1.de.20six.net (tiger.de.20six.net [84.16.227.200]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2B39143D53 for ; Tue, 27 Dec 2005 10:51:19 +0000 (GMT) (envelope-from meno.abels@adviser.com) Received: from ssh.tiger.de.20six.net ([172.20.20.130] helo=tiger.de.20six.net) by ms-1.de.20six.net with smtp (Exim 4.60 (FreeBSD)) (envelope-from ) id 1ErCQI-0002dV-52; Tue, 27 Dec 2005 11:51:18 +0100 Received: by tiger.de.20six.net (sSMTP sendmail emulation); Tue, 27 Dec 2005 11:51:18 +0100 Message-Id: <20051227105119.2B39143D53@mx1.FreeBSD.org> Date: Tue, 27 Dec 2005 11:51:18 +0100 From: Meno Abels To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: meno.abels@adviser.com Subject: kern/90973: [net] [patch] if_bridge does not handle arp for own addresses X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Meno Abels List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Dec 2005 11:00:48 -0000 >Number: 90973 >Category: kern >Synopsis: [net] [patch] if_bridge does not handle arp for own addresses >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Dec 27 11:00:12 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Meno Abels >Release: FreeBSD 6.0-RELEASE i386 >Organization: Adviser COM >Environment: System: FreeBSD sshd 6.0-RELEASE FreeBSD 6.0-RELEASE #1: Thu Jul 28 23:45:40 MEST 2005 root@tiger.de.20six.net:/jails/tiger/usr/obj/jails/tiger/usr/src_5.4/sys/GENERIC i386 >Description: If you have for example the following config: lnc1: 192.168.100.1 tap1: and these interfaces are bridged: ifconfig bridge0 addm lnc1 addm tap1 up If you now send packets over tap1 to 192.168.100.1 the arp lookup is not answered by bridged host. >How-To-Repeat: ping and arp -d >Fix: In if_ether.c the detection of the bridge works on every bridge interfaces but not for the bridged(if_bridge) interface himself. This dectection is only required if there is a cloned bridge interface. So I added these: --- sys/netinet/if_ether.c 7 Oct 2005 01:51:29 -0000 1.137.2.4 +++ sys/netinet/if_ether.c 27 Dec 2005 10:33:31 -0000 @@ -607,7 +607,7 @@ int carp_match = 0; #endif - if (do_bridge || ifp->if_bridge) + if (do_bridge || ifp->if_bridge || ifp->if_type == IFT_BRIDGE) bridged = 1; req_len = arphdr_len2(ifp->if_addrlen, sizeof(struct in_addr)); >Release-Note: >Audit-Trail: >Unformatted: