summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorstsp <stsp@openbsd.org>2016-10-19 14:15:07 +0000
committerstsp <stsp@openbsd.org>2016-10-19 14:15:07 +0000
commit1917454e4749b1554c7401726ef01443c266afab (patch)
tree2b918fb9c4381d8bdd28768abf0032cf58dbbd01
parentadd -F to usage() too; (diff)
downloadwireguard-openbsd-1917454e4749b1554c7401726ef01443c266afab.tar.xz
wireguard-openbsd-1917454e4749b1554c7401726ef01443c266afab.zip
Only force iwm's firmware to use RTS for all frames if the AP requires it.
RTS is still used when sending long frames regardless of this change. Tested by myself and Jan Stary.
-rw-r--r--sys/dev/pci/if_iwm.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/pci/if_iwm.c b/sys/dev/pci/if_iwm.c
index ec98f00e3fc..fb9daab9608 100644
--- a/sys/dev/pci/if_iwm.c
+++ b/sys/dev/pci/if_iwm.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_iwm.c,v 1.144 2016/10/08 14:37:48 stsp Exp $ */
+/* $OpenBSD: if_iwm.c,v 1.145 2016/10/19 14:15:07 stsp Exp $ */
/*
* Copyright (c) 2014, 2016 genua gmbh <info@genua.de>
@@ -5301,7 +5301,9 @@ iwm_setrates(struct iwm_node *in)
memset(lq, 0, sizeof(*lq));
lq->sta_id = IWM_STATION_ID;
- lq->flags = IWM_LQ_FLAG_USE_RTS_MSK;
+
+ if (ic->ic_flags & IEEE80211_F_USEPROT)
+ lq->flags |= IWM_LQ_FLAG_USE_RTS_MSK;
sgi_ok = ((ni->ni_flags & IEEE80211_NODE_HT) &&
(ni->ni_htcaps & IEEE80211_HTCAP_SGI20));