early DTLS handshake failures would not terminate the read
loop and cause the remaining handshake bytes to be feed to
packet reader, causing an error assertion.
Rework the main read loop to terminate it when the read
event is not longer active and stop the read event on
handshake failure.
Also, make the DTLS handshake erorr message a bit more readable
by appending the WolfSSL error message to it.
Fixes issue #8.
Update mac80211 support patch:
* remove obsolte monitor sdata handling (we don't use
a monitor interface, so accessing that data is a bug)
* initialize the skb queue mapping to match the tid,
at least ath9k does not like it when the tid and
queue mapping disagree
The TX path will overwrite the TID based on the SKB
priority. Load the QoS TID from 802.11 frames into
the skb priority to preserve it during TX handling.
Assoziation is complete when we get a response frame. We need to
reset the timeout action here, otherwise the client gets detached
as soon as the timer fires.
Implement the required support for extrace the cipher
suite settings from the the RS Information Element and
set the station key based on the 802.11 Station Key
CAPWAP message element.
Group Key update handling is currently not implemented nor is
Station Key update handling.
RFC 5416 copies the order of the capability flags from the
IEEE 802.11 capability IE. However, the bit ordering assumtions
in RFC 5416 differ from IEEE 802.11 (in the RFC the MSB is
numbered 0, in IEEE 802.11 the MSB is numbere 15).
RFC 5416 therefore specifies the capability flags bit reversed
compared to IEEE 802.11.
After the max station inactivity has expired, a probe request
(a data null frame) is sent to the station. It the station does
not ACK this frame, it is removed from the WTP.
Note: inactivity timeout is not the same as the CAPWAP Idle Timeout.
The CAPWAP Idle Timeout would remove a station due to inactivity
even when it is still reachable from the WTP. In contrast, the
inactivity timeout probes whether the station is still present
and only removes it when not.