diff options
author | Pascal Quantin <pascal.quantin@gmail.com> | 2015-07-08 22:59:03 +0200 |
---|---|---|
committer | Pascal Quantin <pascal.quantin@gmail.com> | 2015-07-10 06:01:31 +0000 |
commit | 4da081b0d5a2a00011da633400b456296c39ddb3 (patch) | |
tree | 67222510bcec1519ad6def4356cb3e06491fbdb8 /epan | |
parent | f6a482656b0b0931e72136565980bed04db45c31 (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.c | 9 |
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)) |