Received: with ECARTIS (v1.0.0; list netdev); Sat, 21 Aug 2004 03:23:14 -0700 (PDT) Received: from filer.marasystems.com (marasystems.com [213.150.153.194]) by oss.sgi.com (8.13.0/8.13.0) with ESMTP id i7LAN8xO007418 for ; Sat, 21 Aug 2004 03:23:09 -0700 Received: from localhost (henrik@localhost) by filer.marasystems.com (8.11.6/8.11.6) with ESMTP id i7LAMl817232; Sat, 21 Aug 2004 12:22:47 +0200 Date: Sat, 21 Aug 2004 12:22:47 +0200 (CEST) From: Henrik Nordstrom To: cranium2003 cc: net dev , linux net Subject: Re: modifying tcp/ip stack In-Reply-To: <20040821054621.95115.qmail@web41403.mail.yahoo.com> Message-ID: References: <20040821054621.95115.qmail@web41403.mail.yahoo.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-archive-position: 7945 X-ecartis-version: Ecartis v1.0.0 Sender: netdev-bounce@oss.sgi.com Errors-to: netdev-bounce@oss.sgi.com X-original-sender: hno@marasystems.com Precedence: bulk X-list: netdev Content-Length: 842 Lines: 22 On Fri, 20 Aug 2004, cranium2003 wrote: > What exactly i want to do is that i want to > add a new protocol headerin between IP and ETHERNET > header. From my understanding this is best done in two pieces: a) A virtual network driver which adds your protocol header and then hands off the packet to the intended destination device. b) A net net_protocol which parses your protocol header and then hands off the packets to the next layer (IP or whatever). Alternatively it can be a added as a packet_type to the device using dev_add_pack() which steals the packet from the original device and then reinjects them as coming from your device after processing your protocol header. It may also be possible using the xfrm framework in 2.6 without using any of the above, but I am not familiar with how this works. Regards Henrik