summaryrefslogtreecommitdiff
path: root/capture_info.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2006-01-23 16:56:34 +0000
committerGuy Harris <guy@alum.mit.edu>2006-01-23 16:56:34 +0000
commit41c941b49c668302f0e7031196c88df6daec2a16 (patch)
tree2e4c8e858a77cdf782a0339bb806601ff6c9aa1a /capture_info.c
parentd3a989319626e413e6171544417be76156c34ad9 (diff)
downloadwireshark-41c941b49c668302f0e7031196c88df6daec2a16.tar.gz
Call capture_radiotap() when capturing on a device supplying Radiotap
headers. Fix capture_radiotap() to check for padding between the 802.11 header and the 802.11 payload and to call different capture routines depending on whether it's present or not, and create capture_ieee80211_datapad() to handle the case where it's present. Fix capture_radiotap() to convert the Radiotap header length from little-endian, and to do some sanity checking of that length. Fix capture_ieee80211_common() to use the offset supplied to it to fetch the frame control field, as that offset isn't necessarily 0. svn path=/trunk/; revision=17083
Diffstat (limited to 'capture_info.c')
-rw-r--r--capture_info.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/capture_info.c b/capture_info.c
index a385886295..d9bc8fbfcd 100644
--- a/capture_info.c
+++ b/capture_info.c
@@ -50,6 +50,7 @@
#include <epan/dissectors/packet-sll.h>
#include <epan/dissectors/packet-tr.h>
#include <epan/dissectors/packet-ieee80211.h>
+#include <epan/dissectors/packet-radiotap.h>
#include <epan/dissectors/packet-chdlc.h>
#include <epan/dissectors/packet-prism.h>
#include <epan/dissectors/packet-ipfc.h>
@@ -191,6 +192,9 @@ capture_info_packet(packet_counts *counts, gint wtap_linktype, const guchar *pd,
case WTAP_ENCAP_IEEE_802_11_WITH_RADIO:
capture_ieee80211(pd, 0, caplen, counts);
break;
+ case WTAP_ENCAP_IEEE_802_11_WLAN_RADIOTAP:
+ capture_radiotap(pd, 0, caplen, counts);
+ break;
case WTAP_ENCAP_CHDLC:
capture_chdlc(pd, 0, caplen, counts);
break;