CVSROOT:        /cvs
Module name:    src
Changes by:     s...@cvs.openbsd.org    2018/02/25 05:40:06

Modified files:
        sys/dev/pci    : if_iwn.c if_iwnvar.h 

Log message:
My previous commit to iwn(4) broke the scan loop.

The problem happened if we didn't find an AP to connect to after one scan
iteration. The net80211 stack then performs a SCAN -> SCAN transition to
kick off another scan, but the driver treated this transition as a no-op
and remained in SCAN state doing nothing.

To fix this, introduce a flag which keeps track of whether a firmware
scan command is in progress, and start another scan during a SCAN->SCAN
transition if no scan is in progress. Matches what iwm(4) does.
Note that previously (i.e. in 6.2), iwn(4) would always try to start
a new scan regardless of what the firmware was currently doing.

Problem noticed by myself and also by deraadt@
test & ok tb@

Reply via email to