Wireshark-dev: Re: [Wireshark-dev] [Wireshark-commits] rev 20049: /trunk/ /trunk/epan/dissector

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Thu, 07 Dec 2006 13:00:31 -0800
Loris Degioanni wrote:

Yes, this would be the optimal option, but it would require adding to libpcap features that are not strictly "capture oriented", like setting a channel or configuring a set of decryption keys.
I'd consideer setting a channel capture-oriented, as a capture 
application might want to have a UI that lets you set the channel or 
that does scanning.
Configuring decryption keys is another matter; I suspect that, for most 
"normal" 802.11 adapters (as opposed to capture-only adapters such as 
AirPcap), that's done as part of setting the machine up to connect to a 
given protected network.  If you're capturing in non-promiscuous or 
promiscuous mode, you're capturing only on the network you're on, as far 
as I know; only in monitor mode do you capture everything the radio 
picks up, and I don't know whether any adapters will do decryption in 
monitor mode.  (The channel is also configured if you're on a given 
network, but, in monitor mode, you're probably able to change the 
channel arbitrarily.)
I'd like to hear what people think about extending libpcap in that direction (Guy?); if it's considered interesting, I could give it a try.
I think some option for setting the 802.11 channel should be offered by 
libpcap, to hide the OS-dependent details.  My inclination would be to have:
	an extensible list of device settings, including monitor mode, channel, 
and anything else that a particular network type might have;
	a way to inquire what settings are available for a particular adapter 
(so that an analyzer can, for example, decide what to offer in the UI);
	a way to get the current value of a setting and to change the value of 
a setting;
	perhaps a way to set the initial value when you open the device, 
although I suspect that wouldn't have an advantage over opening the 
device and then changing the setting.