kern/144476: [ieee80211] Incorrect "SM power save mode" HT capability constants

Alexander Egorenkov egorenar at gmail.com
Thu Mar 4 19:20:02 UTC 2010


>Number:         144476
>Category:       kern
>Synopsis:       [ieee80211] Incorrect "SM power save mode" HT capability constants
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Mar 04 19:20:02 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Alexander Egorenkov
>Release:        FreeBSD 7.2 STABLE
>Organization:
>Environment:
FreeBSD dantooine 7.2-RELEASE FreeBSD 7.2-RELEASE #1: Sat Feb 27 18:41:55 CET 2010     root at dantooine:/usr/obj/usr/src/sys/MYKERNEL  i386
>Description:
I was testing my 802.11n mode device driver and captured an association process with my AP. I noticed that 2 "SM power save mode" HT capability constants
were incorrectly defined in header file ieee80211.h. That caused the net80211 stack to send wrong HT capability to my AP during association.

The incorrectly defined constants are IEEE80211_HTCAP_SMPS_OFF and
IEEE80211_HTCAP_SMPS_ENA.

Code snippet:
--------------------------------

#define	IEEE80211_HTCAP_SMPS		0x000c	/* SM Power Save mode */
#define	IEEE80211_HTCAP_SMPS_OFF	0x0000	/* none (static mode) */
#define	IEEE80211_HTCAP_SMPS_DYNAMIC	0x0004	/* send RTS first */
/* NB: SMPS value 2 is reserved */
#define	IEEE80211_HTCAP_SMPS_ENA	0x000c	/* enabled */


--------------------------------

The comments for the both constants are also wrong.
>How-To-Repeat:

>Fix:
I checked the IEEE 802.11n specification and the right values for these constants are:

IEEE80211_HTCAP_SMPS_OFF = 0x000c
IEEE80211_HTCAP_SMPS_ENA = 0x0000

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list