aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorPascal Quantin <pascal.quantin@gmail.com>2015-07-08 22:59:03 +0200
committerPascal Quantin <pascal.quantin@gmail.com>2015-07-10 06:01:31 +0000
commit4da081b0d5a2a00011da633400b456296c39ddb3 (patch)
tree67222510bcec1519ad6def4356cb3e06491fbdb8 /epan
parentf6a482656b0b0931e72136565980bed04db45c31 (diff)
IEEE 802.11: tap all packets
And only take into account management, non null data and or extension frames in WLAN traffic statistics, as previously Bug: 11318 Change-Id: I32c059a2594331c4e317380b9de43fb582f7f8cb Reviewed-on: https://code.wireshark.org/review/9566 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-ieee80211.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/epan/dissectors/packet-ieee80211.c b/epan/dissectors/packet-ieee80211.c
index 1ec7c04cef..ccbd42e7ef 100644
--- a/epan/dissectors/packet-ieee80211.c
+++ b/epan/dissectors/packet-ieee80211.c
@@ -16583,6 +16583,7 @@ dissect_ieee80211_common (tvbuff_t *tvb, packet_info *pinfo,
fcf = FETCH_FCF(0);
frame_type_subtype = COMPOSE_FRAME_TYPE(fcf);
+ whdr->type = frame_type_subtype;
if (frame_type_subtype == CTRL_CONTROL_WRAPPER)
ctrl_fcf = FETCH_FCF(10);
else
@@ -16725,7 +16726,6 @@ dissect_ieee80211_common (tvbuff_t *tvb, packet_info *pinfo,
TVB_SET_ADDRESS(&whdr->bssid, wlan_bssid_address_type, tvb, 16, 6);
COPY_ADDRESS_SHALLOW(&whdr->src, &pinfo->dl_src);
COPY_ADDRESS_SHALLOW(&whdr->dst, &pinfo->dl_dst);
- whdr->type = frame_type_subtype;
seq_control = tvb_get_letohs(tvb, 22);
frag_number = SEQCTL_FRAGMENT_NUMBER(seq_control);
@@ -17362,7 +17362,6 @@ dissect_ieee80211_common (tvbuff_t *tvb, packet_info *pinfo,
COPY_ADDRESS_SHALLOW(&whdr->src, &pinfo->dl_src);
COPY_ADDRESS_SHALLOW(&whdr->dst, &pinfo->dl_dst);
- whdr->type = frame_type_subtype;
seq_control = tvb_get_letohs(tvb, 22);
frag_number = SEQCTL_FRAGMENT_NUMBER(seq_control);
@@ -17693,7 +17692,7 @@ dissect_ieee80211_common (tvbuff_t *tvb, packet_info *pinfo,
* No-data frames don't have a body.
*/
if (DATA_FRAME_IS_NULL(frame_type_subtype))
- return tvb_captured_length(tvb);
+ goto end_of_wlan;
if (!wlan_subdissector) {
guint fnum = 0;
@@ -17751,13 +17750,13 @@ dissect_ieee80211_common (tvbuff_t *tvb, packet_info *pinfo,
break;
case CONTROL_FRAME:
- return tvb_captured_length(tvb);
+ goto end_of_wlan;
case EXTENSION_FRAME:
break;
default:
- return tvb_captured_length(tvb);
+ goto end_of_wlan;
}
if (IS_PROTECTED(FCF_FLAGS(fcf))