Subject: Re: Summer of Code: Wifi Browser / Kismet clone
To: None <tech-net@NetBSD.org>
From: David Young <dyoung@pobox.com>
List: tech-net
Date: 04/23/2006 15:25:43
On Sat, Apr 22, 2006 at 07:15:31PM -0400, oliver gould wrote:
> On Sat, Apr 22, 2006 at 01:24:45PM -0500, Jonathan A. Kollasch wrote:
>  
> > I would prefer some one put the little bit of effort into getting
> > Kismet working on NetBSD rather than reinventing this.
> 
> The project page requests that the design be improved upon.  I'm still
> unclear on what these design shortcomings are.

At one time, all of the code for Linux and *BSD libpcap packet sources
was in a single source file of 3000+ lines, pcapsource.cc, which had
enough #ifdefs in it to take your breath away: the code was very hard to
follow and to modify.  Also, you can imagine how long it took to compile
that gigantic file.  It was pretty obvious, then, that all of the #ifdefs
could have been eliminated using inheritance (Kismet is a C++ program).
It did not take me long to give up trying to get Kismet to work in NetBSD.

These days, the code is a lot better, although it remains a bit heavy
on the #ifdefs.  I don't see much point in rewriting it.

I like the idea of a lightweight packet-capture utility, something like
tcpdump, minus the code for printing stuff out.  That is probably not
substantial enough for Summer of Code, though.

I don't know if libpcap is smart enough these days to create BPF filters
for variable-length radiotap headers, but if it isn't, it would be a
great SoC project to make it so.  Ideally, one could filter each of the
radiotap+802.11+IP headers, using tcpdump.  Guy Harris (guy@alum.mit.edu)
can tell you what the status is.

Dave

-- 
David Young             OJC Technologies
dyoung@ojctech.com      Urbana, IL * (217) 278-3933