kernel - Fix double-free in if_ath, fix lost rcvif.
authorMatthew Dillon <dillon@apollo.backplane.com>
Mon, 24 Apr 2017 17:06:32 +0000 (10:06 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Mon, 24 Apr 2017 17:06:32 +0000 (10:06 -0700)
commitc75fa8b80405bcd779a670147c468311b9ab3a24
tree5f3dc23156e07be0ec36b1b49f35aae13d011ad6
parente24b12cd969a621c8618dbf653259c80ddd61670
kernel - Fix double-free in if_ath, fix lost rcvif.

* Reassign rcvif in ieee80211_vap_pkt_send_dest() prior to calling
  ic_transmit().  The rcvif assignment can get lost from packet
  manipulation above that section of code.

* Fix a double-free in if_ath in the error path for ath_transmit().
  Callers of ic_transmit (aka ath_transmit in this case) expect the
  mbuf to remain intact on a non-zero error return.

* Document confusing code in WPI.

Reported-by: marino
Reviewed-by: sephe
sys/dev/netif/ath/ath/if_ath.c
sys/dev/netif/wpi/if_wpi.c
sys/netproto/802_11/wlan/ieee80211_output.c