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.
This commit is contained in:
Guy Harris 2020-11-29 19:11:32 -08:00
parent 3b7db8de8a
commit 1fa5687fad
1 changed files with 4 additions and 14 deletions

View File

@ -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