Browse Source

nl80211: Do not include NL80211_ATTR_DURATION in TX frame if zero

When offloading of the offchannel TX wait is not used, it is better to
not include NL80211_ATTR_DURATION to avoid confusing nl80211/cfg80211.
Jouni Malinen 13 years ago
parent
commit
9db931ed6d
1 changed files with 2 additions and 1 deletions
  1. 2 1
      src/drivers/driver_nl80211.c

+ 2 - 1
src/drivers/driver_nl80211.c

@@ -6188,7 +6188,8 @@ static int nl80211_send_frame_cmd(struct wpa_driver_nl80211_data *drv,
 
 
 	NLA_PUT_U32(msg, NL80211_ATTR_IFINDEX, drv->ifindex);
 	NLA_PUT_U32(msg, NL80211_ATTR_IFINDEX, drv->ifindex);
 	NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_FREQ, freq);
 	NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_FREQ, freq);
-	NLA_PUT_U32(msg, NL80211_ATTR_DURATION, wait);
+	if (wait)
+		NLA_PUT_U32(msg, NL80211_ATTR_DURATION, wait);
 	NLA_PUT_FLAG(msg, NL80211_ATTR_OFFCHANNEL_TX_OK);
 	NLA_PUT_FLAG(msg, NL80211_ATTR_OFFCHANNEL_TX_OK);
 	NLA_PUT(msg, NL80211_ATTR_FRAME, buf_len, buf);
 	NLA_PUT(msg, NL80211_ATTR_FRAME, buf_len, buf);