Hi,
I am pleased to be able to contribute the code for the IEEE 802.11
wireless LAN dissector on behalf of Axis Communications AB. The patch
enables Ethereal to properly dissect and analyze all of the different
frametypes as defined in the current version of the IEEE 802.11
standard.
Description of the patch:
The patch adds a new packet-dissector. It is defined and implemented in
the files packet-ieee80211.[ch]. A new filetype is defined in
wtap_fileformat.[ch]. It basically just read or write frames without
mapping them to pcap or any other format known by wiretap.
Changes to files already in ethereal:
A few changes are made to files that are already part of CVS repository.
Those changes are described on a per-file-basis below. Please take a
look at the patch file to see what has been changed.
Utilities:
A small utility called prismdump has also been added. This utility is
used in conjunction with NICs based on Intersil's Prism-II chipset. A
detailed description is given in the file "doc/prismdump.html".
Wishlist:
I also have a small wish, namely low-level plugins. i.e. the ability to
capture packets [from the kernel] by using a plugin. This would enable
direct captures in a device-independent manner. Most 802.11 devices
behave like ethernet devices and there is no standardized O/S-
independent way to place an IEEE 802.11 device in "raw" mode. It would
also make ethereal more portable because we could have different plugins
for different operating systems. I therefore propose that the following
additions should be made to epan/plugins.c
configure_plugin(...) - Allows a plugin to display its own configuration
dialog. Example would be to be able to set the current capture-channel
used together with IEEE 802.11[b] devices.
capture_from_plugin(...) - Retrieves the next packet from the plugin
associated with a device and sends it to the correct dissector based on
the encapsulation-type returned by the device.
Finally provisions must be made in order to associate a plugin with a
device. If no associations are made the "O/S default-plugin" could be
used.
However, this is just a suggestion.
Regards
Johan Jorgensen, HW/SW Engineer
Axis Communications AB
Attachment:
ethereal-ieee-802.11-support.tar.gz
Description: GNU Zip compressed data