From owner-freebsd-ipfw Mon Mar 6 21:15:31 2000 Delivered-To: freebsd-ipfw@freebsd.org Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by hub.freebsd.org (Postfix) with ESMTP id 0514837BE0B for ; Mon, 6 Mar 2000 21:15:29 -0800 (PST) (envelope-from robert@cyrus.watson.org) Received: from fledge.watson.org (robert@fledge.pr.watson.org [192.0.2.3]) by fledge.watson.org (8.9.3/8.9.3) with SMTP id AAA17230; Tue, 7 Mar 2000 00:16:36 -0500 (EST) (envelope-from robert@cyrus.watson.org) Date: Tue, 7 Mar 2000 00:16:36 -0500 (EST) From: Robert Watson X-Sender: robert@fledge.watson.org Reply-To: Robert Watson To: Luigi Rizzo Cc: Ludo Koren , ipfw@FreeBSD.ORG Subject: Re: ipdivert and ethernet bridging In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-ipfw@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Aha, found it in ip_fw_chk, only the check is done after twiddling the various parts of the IP header, not before... :-) On Mon, 6 Mar 2000, Robert Watson wrote: > > Luigi, > > I've been reading through the bridge/ipfw code, and can't seem to find a > place where eh->ether_type is checked to see if it is ETHERTYPE_IP before > the firewall rules are evaluated. I was wondering if the check is not > taking place, or if so, where it takes place? > > net/bridge.c: > ... > /* > * before calling the firewall, swap fields the same as IP does. > * here we assume the pkt is an IP one and the header is > contiguous > */ > eh = mtod(m, struct ether_header *); > ip = (struct ip *)(eh + 1 ) ; > NTOHS(ip->ip_len); > NTOHS(ip->ip_id); > NTOHS(ip->ip_off); > ... > > Thanks, > > Robert N M Watson > > robert@fledge.watson.org http://www.watson.org/~robert/ > PGP key fingerprint: AF B5 5F FF A6 4A 79 37 ED 5F 55 E9 58 04 6A B1 > TIS Labs at Network Associates, Safeport Network Services > > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-ipfw" in the body of the message > Robert N M Watson robert@fledge.watson.org http://www.watson.org/~robert/ PGP key fingerprint: AF B5 5F FF A6 4A 79 37 ED 5F 55 E9 58 04 6A B1 TIS Labs at Network Associates, Safeport Network Services To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ipfw" in the body of the message