From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stian Sletner Subject: Re: DOSEMU does not pick up all packets Date: Thu, 28 Nov 2002 06:26:58 +0100 Sender: linux-msdos-owner@vger.kernel.org Message-ID: <20021128052658.GA32254@sletner.com> References: <3DE3E046.60602@yahoo.com> Mime-Version: 1.0 Return-path: Content-Disposition: inline In-Reply-To: <3DE3E046.60602@yahoo.com> List-Id: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Stas Sergeev Cc: linux-msdos@vger.kernel.org * At 2002-11-26T23:57+0300, Stas Sergeev wrote: : | >I.e. the IPX tunnel runs on the same box and puts its IPX packets out | >on eth0 and DOSEMU listens on eth0 but doesn't pick them up. | | Ethernet interface is a kind of not a loop-back, why are you expecting | it to work that way? I experimented some more with this, since it seemed to be the right thing to do, the dosnet stuff is IP oriented after all, and shouldn't be necessary to achieve this, I would think. There's no end to what one can achieve with an all-nighter of source hacking, eh? After tons of experimenting and code-writing (and Coke drinking), it boiled down to a one-line change (of course :) to get it working. Here's the patch. I'd like to know if this could be applied or if that'd break something else? --- libpacket.orig 2002-11-26 19:47:24.000000000 +0100 +++ libpacket.c 2002-11-28 06:25:17.000000000 +0100 @@ -83,7 +83,7 @@ if (!config.secure) enter_priv_on(); #ifdef AF_PACKET if (running_kversion >= 2001000) - s = socket(AF_PACKET, SOCK_PACKET, proto); + s = socket(AF_PACKET, SOCK_PACKET, htons(ETH_P_ALL)); else s = socket(AF_INET, SOCK_PACKET, proto); #else -- Stian Sletner