From bdaf17489a9e9214554d60eb3e3f58f51306a962 Mon Sep 17 00:00:00 2001 From: Srinivasan B Date: Sat, 16 Feb 2013 11:15:13 +0200 Subject: [PATCH] hostapd: Fix Max SP Length derivation from QoS Info Hostapd provides QoS info of the STA (Service Period & AC mask) to the kernel during wpa_driver_nl80211_sta_add call. Bit 5 and Bit 6 of QoS info represents the Max SP length. Fix an issue in the code to fetch the Max SP by shifting right the QoS info by value WMM_QOSINFO_STA_SP_SHIFT. (operator ">" is replaced with ">>" operator). Signed-off-by: Srinivasan --- src/drivers/driver_nl80211.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c index bff0a512e..0803b160e 100644 --- a/src/drivers/driver_nl80211.c +++ b/src/drivers/driver_nl80211.c @@ -5883,7 +5883,7 @@ static int wpa_driver_nl80211_sta_add(void *priv, NLA_PUT_U8(wme, NL80211_STA_WME_UAPSD_QUEUES, params->qosinfo & WMM_QOSINFO_STA_AC_MASK); NLA_PUT_U8(wme, NL80211_STA_WME_MAX_SP, - (params->qosinfo > WMM_QOSINFO_STA_SP_SHIFT) & + (params->qosinfo >> WMM_QOSINFO_STA_SP_SHIFT) & WMM_QOSINFO_STA_SP_MASK); if (nla_put_nested(msg, NL80211_ATTR_STA_WME, wme) < 0) goto nla_put_failure;