Re: Wackamole on FreeBSD 5.3 will not start

Theo Schlossnagle <[email protected]> Mon, 20 Sep 2004 16:45:27 -0400
Newsgroups gmane.comp.apache.mod-wackamole.general
Message-ID <[email protected]>
Eric L. Anderson wrote:

>On Mon, Sep 20, 2004 at 03:44:44PM -0400, Theo Schlossnagle wrote:
>  
>
>>Eric L. Anderson wrote:
>>
>>    
>>
>>>On Fri, Sep 17, 2004 at 04:58:31PM -0500, Eric L. Anderson wrote:
>>>
>>>I rebuilt and reinstalled both the kernel and world. I can now verify
>>>that I have BPF support as 'ls /dev/bpf0' returns correctly (my
>>>understanding is that FreeBSD 5.x uses devfs and creates devices on
>>>demand).
>>>
>>>wackamole still behaves the same:
>>># wackamole -d
>>>socket: Protocol not supported
>>>
>>>I toyed with gdb a bit and tracked the failing socket() function call
>>>down to ife-bpf.c:27:
>>>
>>>27 	if((_if_sock = socket (AF_INET, socket_type, htons(ETH_P_ALL))) == 
>>>-1) {
>>>28          perror ("socket");
>>>29          exit (EXIT_FAILURE);
>>>30        }
>>>
>>>Regards
>>>
>>>
>>>      
>>>
>>Try replacing htons(ETH_P_ALL) with 0.  If you have the tools 
>>(Ethereal), confirm that the packets sent on the wire are indeed ARP 
>>responses.
>>    
>>
>
>Everything works fine now and indeed the ARP responses are being sent
>out. 
>
>Why does the htons(ETH_P_ALL) work on FreeBSD 4.x and not 5.x?
>  
>
That is a question for a FreeBSD core developer or at least the FreeBSD 
mailing list.  If someone has access to a 4.x machine _not_ in 
production to test to see if 0 works there as well, I'll commit that the 
CVS for the next release.

-- 
// Theo Schlossnagle
// Principal Engineer -- http://www.omniti.com/~jesus/
// Postal Engine -- http://www.postalengine.com/
// Ecelerity: fastest MTA on Earth