From owner-freebsd-hackers@FreeBSD.ORG Tue Sep 2 12:15:32 2003 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9582D16A4BF for ; Tue, 2 Sep 2003 12:15:32 -0700 (PDT) Received: from hysteria.spc.org (hysteria.spc.org [195.206.69.234]) by mx1.FreeBSD.org (Postfix) with SMTP id 3AD5B44001 for ; Tue, 2 Sep 2003 12:15:31 -0700 (PDT) (envelope-from bms@hysteria.spc.org) Received: (qmail 30523 invoked by uid 5013); 2 Sep 2003 19:12:13 -0000 Date: Tue, 2 Sep 2003 20:12:13 +0100 From: Bruce M Simpson To: Jerry Toung Message-ID: <20030902191213.GC29217@spc.org> Mail-Followup-To: Bruce M Simpson , Jerry Toung , freebsd-hackers@freebsd.org References: <200308312303.40555.jtoung@arc.nasa.gov> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200308312303.40555.jtoung@arc.nasa.gov> User-Agent: Mutt/1.4.1i Organization: SPC cc: freebsd-hackers@freebsd.org Subject: Re: if_gre, ip_gre and the like (pseudo-interfaces) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Sep 2003 19:15:32 -0000 On Sun, Aug 31, 2003 at 11:03:40PM -0700, Jerry Toung wrote: > My understanding is that gre_input is called by IP everytime it receives a > packet with a gre headers which after some processing performs > IF_ENQUEUE(ifq,m) to put it back on the IPqueue so that higher protocol such > TCP can do their thing. :-) Not quite correct. This is what my legacy GRE code does. The NetBSD-derived if_gre in the tree passes the mbuf to netisr_dispatch(), which in turn calls if_handoff(), which does something similar. > I don't see how /dev/gre is ever used on receiving or sending, through > if_clone_attach??. Somebody educate me on my missing link. I don't see /dev/gre on my system. If you're referring to the line 'device gre' in the kernel configuration, that is there purely to ensure that the gre driver is statically linked into the kernel. BMS