Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Jan 2005 18:55:58 +0000
From:      Kris Maglione <bsdaemon@comcast.net>
To:        freebsd-mobile@freebsd.org
Subject:   Re: ath: a few questions [really kismet and radiotap]
Message-ID:  <41EEAD3E.6010104@comcast.net>
In-Reply-To: <41EE9F44.3050308@errno.com>
References:  <41ED1FD5.8090401@comcast.net> <20050118144209.GF3054@empiric.icir.org> <41ED3019.9020600@comcast.net> <41ED4652.8040902@errno.com> <41ED568D.8000405@comcast.net> <41EE9F44.3050308@errno.com>

index | next in thread | previous in thread | raw e-mail

Sam Leffler wrote:

> Kris Maglione wrote:
>
>> Sam Leffler wrote:
>>
>>> Kris Maglione wrote:
>>>
>>>> Bruce M Simpson wrote:
>>>>
>>>>> On Tue, Jan 18, 2005 at 09:40:21AM -0500, Kris Maglione wrote:
>>>>>  
>>>>>
>>>>>> Second, according to CVS, hw.ath.outdoors was made tunable a year 
>>>>>> ago, but sysctl says it's readonly when I try to change it. It's 
>>>>>> stuck at 1, which seems to be a possible explanation for why it's 
>>>>>> indoor use sucks so badly compared to the windows driver, 
>>>>>> especially through walls.
>>>>>>   
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I'm running 5.3-STABLE as of last Wednesday and do not see this 
>>>>> sysctl.
>>>>>
>>>>> Please give version information (uname -a) when posting this kind 
>>>>> of query,
>>>>> as it's next to impossible to give useful advice otherwise.
>>>>>  
>>>>>
>>>> Sorry about that. No uname -a, but it's the 5-STABLE from about a 
>>>> few days ago. The kernel config file is actually the (minimally 
>>>> modified) FreesBIE config file from a few months ago, but why is a 
>>>> long story.
>>>
>>>
>>>
>>>
>>> The setting is a read-only sysctl because once the module is loaded 
>>> changing it has no effect.  Set it before you kldload the module or 
>>> in your hints file if you want it different than the default.
>>>
>>>>
>>>>> You should be able to 'tcpdump -i ath0 -y ieee802_11' to verify 
>>>>> that you
>>>>> can capture 802.11 packets straight off the card.
>>>>>  
>>>>>
>>>> I have done that, and I have used kismet. My problem with kismet 
>>>> turned out to just be a wierd way that kismet reports things.
>>>
>>>
>>>
>>>
>>> kismet has been broken for a while.  It used to work but something 
>>> broke it and I've had no time to dig (it's painful to debug as it's 
>>> a multi-process app written in C++ and makes heavy use of STL so 
>>> inspecting data structures is a pain).
>>
>
> Against my better judgement I looked at kismet again :)  The problem 
> is that kismet is discarding most all packets because it thinks they 
> are corrupt.  The reason it thinks this is because the frames are 
> being delivered to kismet with the trailing FCS intact and kismet 
> interprets FCS as information elements and discards the packets when 
> it validates the packet's contents.  While you likely don't care about 
> the details, the fix is probably something that must go in kismet.  
> FWIW ethereal deals with this issue by having a checkbox in the UI 
> that you can use to enable acceptance of such packets.
>
> The radiotap format should have a flag to indicate FCS is included but 
> it never happened.  I will discuss this (again) with the 
> radiotap-meister.
>
>     Sam

I implemented a temporary solution for my client. I decremented the data 
length (packet->caplength) and packet length (packet->len) variables in 
the Radiotap2KisPacket function by 4 (as long as the data was longer 
than 4 bytes) before the data is memcpy's into the packet->data array.  
This is by no means a definitive solution, since I didn't actually check 
to see of those 4 bytes were really the FCS, but at some point, I 
probably will do so and submit a patch. I have no intention of trying to 
implement it anywhere else, since, for what I know, kismet doesn't use 
the data.

Anyway, it solved the problem. It's barely throwing away any packets now 
and detecting the networks that it should.

Thanks for the info.


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41EEAD3E.6010104>