From 1fa5687fad88963b8a4857a856981da8cc304678 Mon Sep 17 00:00:00 2001 From: Guy Harris Date: Sun, 29 Nov 2020 19:11:32 -0800 Subject: [PATCH] wlan: don't treat non-QoS frames as having an HT Control field. That's QoS-frame only; for non-QoS frames, the +HTC/Order subfield doesn't mean there's an HT Control field. Update the reference to the part of the 802.11 standard mentioning that subfield to 802.11-2016. --- epan/dissectors/packet-ieee80211.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/epan/dissectors/packet-ieee80211.c b/epan/dissectors/packet-ieee80211.c index e312d85e28..457fc3f3f0 100644 --- a/epan/dissectors/packet-ieee80211.c +++ b/epan/dissectors/packet-ieee80211.c @@ -25269,8 +25269,8 @@ dissect_ieee80211_common(tvbuff_t *tvb, packet_info *pinfo, if (HAS_HT_CONTROL(FCF_FLAGS(fcf))) { /* * Management frames with the Order bit set have an HT Control field; - * see 8.2.4.1.10 "Order field". If they're not HT frames, they should - * never have the Order bit set. + * see IEEE 802.11-2016 section 9.2.4.1.10 "+HTC/Order subfield". + * If they're not HT frames, they should never have the Order bit set. */ hdr_len += 4; htc_len = 4; @@ -25363,8 +25363,8 @@ dissect_ieee80211_common(tvbuff_t *tvb, packet_info *pinfo, if (HAS_HT_CONTROL(FCF_FLAGS(fcf))) { /* * QoS data frames with the Order bit set have an HT Control field; - * see 8.2.4.1.10 "Order field". If they're not HT frames, they - * should never have the Order bit set. + * see IEEE 802.16 section 9.2.4.1.10 "+HTC/Order subfield". + * If they're not HT frames, they should never have the Order bit set. */ hdr_len += 4; htc_len = 4; @@ -25386,16 +25386,6 @@ dissect_ieee80211_common(tvbuff_t *tvb, packet_info *pinfo, } } } else { - if (HAS_HT_CONTROL(FCF_FLAGS(fcf))) { - /* - * QoS data frames with the Order bit set have an HT Control field; - * see 8.2.4.1.10 "Order field". If they're not HT frames, they - * should never have the Order bit set. - */ - hdr_len += 4; - htc_len = 4; - } - /* * For locally originated mesh frames, the QoS header may be added * by the hardware, and no present in wireshark captures. This