ref: f7bc215120db0b53a6f8cd4530c41f0d46d8634c
parent: e1a15df05cd4f7491380fabd8e598aba6e53e796
parent: 55332b8040ebcdc0bc05ae15de3ded7c8a2bd1bd
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Mon Oct 5 18:43:25 EDT 2020
merge
--- a/sys/src/9/pc/etheriwl.c
+++ b/sys/src/9/pc/etheriwl.c
@@ -3540,11 +3540,24 @@
rxoff7000(Ether *edev, Ctlr *ctlr)
{char *err;
+ int i;
+ for(i = 0; i < nelem(ctlr->tx); i++)
+ flushq(ctlr, i);
+ settimeevent(ctlr, CmdRemove, 0);
+
if((err = setbindingquotas(ctlr, -1)) != nil){ print("can't disable quotas: %s\n", err);return err;
}
+ if((err = delstation(ctlr, &ctlr->bss)) != nil){+ print("can't remove bss station: %s\n", err);+ return err;
+ }
+ if((err = delstation(ctlr, &ctlr->bcast)) != nil){+ print("can't remove bcast station: %s\n", err);+ return err;
+ }
if((err = setbindingcontext(ctlr, CmdRemove)) != nil){ print("removing bindingcontext: %s\n", err);return err;
@@ -3638,14 +3651,9 @@
Ctlr *ctlr = edev->ctlr;
char *err;
- if(ctlr->family >= 7000){- flushq(ctlr, 0);
- delstation(ctlr, &ctlr->bss);
- delstation(ctlr, &ctlr->bcast);
- settimeevent(ctlr, CmdRemove, 0);
+ if(ctlr->family >= 7000)
if((err = rxoff7000(edev, ctlr)) != nil)
goto Out;
- }
ctlr->rxfilter = FilterNoDecrypt | FilterMulticast | FilterBeacon;
if(ctlr->family >= 7000)
--
⑨